我写了一个移动端的网页小游戏,在使用translate3d对阴阳师人物快速升级进行快速移动的时候有明显的卡顿现象该怎么破解

[Unity3D]Unity3D游戏开发之使用EasyTouch虚拟摇杆控制人物移动 | Imagination中文技术社区扫一扫,访问微社区
后使用快捷导航没有帐号?
签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!已连续签到:{constant}天,累计签到:{days}天
当前位置: &
_____________________________________________________________________________________________________________
问答求助版块规则:
  1、问题尽量描述清楚
& && &2、代码要放在代码块里
& && &3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
& && &4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
& && &5、问题得到解决,请选择最佳答案。
& && &6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 504|回复: 4
人物旋转后,人物移动方向不对了
本帖为抢楼帖,欢迎抢楼!&
5556/1000排名<font color="#FF昨日变化3主题帖子积分
熟悉之中, 积分 556, 距离下一级还需 444 积分
熟悉之中, 积分 556, 距离下一级还需 444 积分
蛮牛币1469
在线时间137 小时
最近在人物行走的模拟。已知人物每一时间的位置,我构造出每个时间段人物行走的方向 paths[j].然后通过下面语句实现行走:
persons.transform.Translate(paths[j - 1] * Time.deltaTime);
走完这一小段后我对其进行旋转:
persons.transform.Rotate(new Vector3(0,10,0));
:为什么我不进行旋转,得到的行走路线是正确的,每一小段进行旋转后就不对了????很困惑,希望各位能够解答,或者指出问题。谢谢!!
全部FixedUpdate代码:
void FixedUpdate(){
if (j & 50)
& && && && &if (t & 100 * j)
& && && && &{
& && && && && && &&&persons[i].transform.Translate(paths[j - 1] * 0.01f);
& && && && && && && &t++;
& && && && && & if (t % 100 == 0)
& && && && && & {
& && && && && && &&&j++;
& && && && && && &&&persons.transform.Rotate(new Vector3(0,10,0));
& && && && && & }
& && && &}
每日推荐:
61384/1500排名<font color="#FF昨日变化1主题帖子积分
蛮牛粉丝, 积分 1384, 距离下一级还需 116 积分
蛮牛粉丝, 积分 1384, 距离下一级还需 116 积分
蛮牛币2618
在线时间441 小时
function Translate (translation : Vector3, relativeTo : Space = Space.Self) : void
默认是以自身为坐标轴进行移动的
而Transform.rotation
是以世界坐标为准旋转的。
我想,可能你旋转之后自身坐标轴改变了,所以之后用 Translate函数就和之前的不一样。改正方法可能是:transform.Translate(XXX, Space.World);
[]: 一个袋子砸在了 jacketjlz 头上,jacketjlz 赚了 1
每日推荐:
140/50排名<font color="#FF昨日变化22主题帖子积分
注册看看, 积分 40, 距离下一级还需 10 积分
注册看看, 积分 40, 距离下一级还需 10 积分
在线时间15 小时
需要将自身坐标转化为世界坐标
persons[i].transform.Translate( transform.TransformDirection(paths[j - 1] * 0.01f));
每日推荐:
5556/1000排名<font color="#FF昨日变化3主题帖子积分
熟悉之中, 积分 556, 距离下一级还需 444 积分
熟悉之中, 积分 556, 距离下一级还需 444 积分
蛮牛币1469
在线时间137 小时
需要将自身坐标转化为世界坐标
persons.transform.Translate( transform.TransformDirection(paths[j - 1] ...
谢谢你的解答,不过试了一下还是不行,可能还是没看透。楼下的那位的方法可行,加上World.Space或者null。
每日推荐:
5556/1000排名<font color="#FF昨日变化3主题帖子积分
熟悉之中, 积分 556, 距离下一级还需 444 积分
熟悉之中, 积分 556, 距离下一级还需 444 积分
蛮牛币1469
在线时间137 小时
function Translate (translation : Vector3, relativeTo : Space = Space.Self) : void
默认是以自身为坐 ...
谢谢你的解答,应该就是这个问题。
[]: 一个袋子砸在了 linzy_1990 头上,linzy_1990 赚了 1
每日推荐:

我要回帖

更多关于 饥荒怎么快速解锁人物 的文章

 

随机推荐