游戏蛮牛学习群(纯技术交流,不闲聊):539178957
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

问答求助

关注:531

当前位置:游戏蛮牛 技术专区 问答求助

_____________________________________________________________________________________________________________
问答求助版块规则:

  1、问题尽量描述清楚
      2、代码要放在代码块里
      3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
      4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
      5、问题得到解决,请选择最佳答案。
      6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 134|回复: 7

[脚本] 如果不用碰撞盒,如何设置角色不能过去的边界

[复制链接]  [移动端链接]
4四处流浪
389/500
排名
7368
昨日变化
7

4

主题

83

帖子

389

积分

Rank: 4

UID
24993
好友
0
蛮牛币
94
威望
0
注册时间
2014-5-14
在线时间
152 小时
最后登录
2018-6-14
发表于 2018-6-13 21:10:07 | 显示全部楼层 |阅读模式
10蛮牛币
RT


回复

使用道具 举报

排名
23383
昨日变化
9

3

主题

12

帖子

49

积分

Rank: 1

UID
283777
好友
0
蛮牛币
57
威望
0
注册时间
2018-6-1
在线时间
18 小时
最后登录
2018-6-21
发表于 2018-6-13 21:40:33 | 显示全部楼层
可以在update里面加一个判定,,如果边界是规则图形的,角色的posion的xyz值分别不能超出一定范围,如果是不规则的,就是考虑一下算法,数学建模了

回复

使用道具 举报

排名
44196
昨日变化
20

0

主题

3

帖子

13

积分

Rank: 1

UID
284990
好友
0
蛮牛币
29
威望
0
注册时间
2018-6-8
在线时间
6 小时
最后登录
2018-6-20
发表于 2018-6-14 00:22:48 | 显示全部楼层
可以在Update或者FixedUpdate里面固定角色的position,例如固定角色的x轴只能在-100到100之间移动:
float x = transform.position.x;
         x = Mathf.Clamp(x, -100, 100);

        transform.position = new Vector3(x, transform.position.y, transform.position.z);

假如需要固定角色的x轴不能超过100:
if (transform.position.x>100)
        {
            transform.position = new Vector3(100, transform.position.y, transform.position.z);
        }
y轴,z轴同理;

回复

使用道具 举报

7日久生情
1502/5000
排名
2545
昨日变化
10

17

主题

434

帖子

1502

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
218268
好友
5
蛮牛币
1561
威望
0
注册时间
2017-4-18
在线时间
543 小时
最后登录
2018-6-21

迈向小康

发表于 2018-6-14 08:14:33 | 显示全部楼层
用float 值约束
[发帖际遇]: 独落伊人春 发帖时在路边捡到 2 蛮牛币,偷偷放进了口袋. 幸运榜 / 衰神榜

回复

使用道具 举报

3偶尔光临
197/300
排名
14635
昨日变化
286

0

主题

92

帖子

197

积分

Rank: 3Rank: 3Rank: 3

UID
231366
好友
1
蛮牛币
322
威望
0
注册时间
2017-7-10
在线时间
59 小时
最后登录
2018-6-21
发表于 2018-6-14 09:25:28 | 显示全部楼层
烘培成障碍物。。。。

回复

使用道具 举报

4四处流浪
417/500
排名
6646
昨日变化
45

2

主题

80

帖子

417

积分

Rank: 4

UID
151063
好友
0
蛮牛币
503
威望
0
注册时间
2016-6-6
在线时间
159 小时
最后登录
2018-6-21
发表于 2018-6-14 10:54:48 | 显示全部楼层
在updade里面判断角色的xy轴,顺便提醒下,你会发现直接判断角色移动触碰边界会抖动,这个问题解决办法是 你不要直接移动角色,设置一个Vector3的变量先储存下移动的坐标,判断不超过你的边界,在移动,超过就把边界的位置直接给角色。

回复

使用道具 举报

排名
1025
昨日变化
2

14

主题

1067

帖子

2864

积分

Rank: 9Rank: 9Rank: 9

UID
68430
好友
10
蛮牛币
10198
威望
0
注册时间
2015-1-14
在线时间
771 小时
最后登录
2018-6-21
发表于 2018-6-14 12:04:14 | 显示全部楼层
1> 纯粹四方格子 范围,,x,z 约定范围就好
2> 你有导航的,烘焙出一个有范围边界的导航网格就行了,看他走的出去不?
3> 不规则地形约束 ,使用计算方式,类物理碰撞了~~~这里就是,不是什么3D 物体的那种碰撞盒了,使用的是 2D 不规则,然后给 3D物体作映射位置,这比较难描述,如果用到,你就唔吧~,,主要是想象小地图一样(3D坐标映射到 2D 坐标)~~这里是 2D坐标映射到3D

回复

使用道具 举报

4四处流浪
376/500
排名
8602
昨日变化
79

2

主题

128

帖子

376

积分

Rank: 4

UID
227258
好友
1
蛮牛币
561
威望
0
注册时间
2017-6-17
在线时间
124 小时
最后登录
2018-6-21
发表于 2018-6-14 17:57:27 | 显示全部楼层
设置layer,然后做碰撞检测

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表