unity3d中常规移动的四种方法分别是什么?
2个回答
展开全部
1、利用GameObject的Translate,直接改变它的Transform。
2、用MoveTo方法,你只要知道你的目标位置即可。
3、 用Math的Lerp方法计算位置分量的线性差值,以TimeDelta(或其倍数)为调节量,可以使移动变得很平滑。
4、三元数差值Vector3Lerp,及其拓展定速靠近Vector3MoveTowards。
Unity3D是一个用于创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的综合型创作工具。
Unity类似于Director,Blender,Virtools或Torque Game Builder等利用交互的图型化开发环境为首要方式的软件其编辑器运行在Windows 和Mac OS X下,可发布游戏至Windows、Wii、OSX或iOS平台。也可以利用Unity web player插件发布网页游戏,支持Mac 和Windows的网页浏览。它的网页播放器也被Mac widgets所支持。
展开全部
什么叫常规移动。。。
纯粹的移动,在API来看只有transform.Translate吧
其他的诸如,三元数差值Vector3.Lerp,及其拓展定速靠近Vector3.MoveTowards,或者平滑阻尼Vector3.SmoothDamp,甚至直接改坐标值,都是可以达到移动的目的,不过这是对三元数Vector3这个结构体的操作,不是专门做移动的,因为Vector3可能是坐标,也可能是角度,或者是向量,也可以是缩放大小,或者自定义的其他的意义。
再说其他的,对某坐标轴的操作,比如改,x,y,z坐标,用Mathf.Lerp或者Mathf.MoveTowards或者其他的修改方式,和上面说的改Vector3一个原理,属于对坐标这个属性的操作。
其实Translate内部也是这个原理,改的是position,也是Vector3。。。
总归来说,所有的移动方式都是对坐标position这个属性的操作,也就是对Vector3的改变。
至于你说的常规移动的四种方法,不知道从哪看来的,一般没这种说法。。。
纯粹的移动,在API来看只有transform.Translate吧
其他的诸如,三元数差值Vector3.Lerp,及其拓展定速靠近Vector3.MoveTowards,或者平滑阻尼Vector3.SmoothDamp,甚至直接改坐标值,都是可以达到移动的目的,不过这是对三元数Vector3这个结构体的操作,不是专门做移动的,因为Vector3可能是坐标,也可能是角度,或者是向量,也可以是缩放大小,或者自定义的其他的意义。
再说其他的,对某坐标轴的操作,比如改,x,y,z坐标,用Mathf.Lerp或者Mathf.MoveTowards或者其他的修改方式,和上面说的改Vector3一个原理,属于对坐标这个属性的操作。
其实Translate内部也是这个原理,改的是position,也是Vector3。。。
总归来说,所有的移动方式都是对坐标position这个属性的操作,也就是对Vector3的改变。
至于你说的常规移动的四种方法,不知道从哪看来的,一般没这种说法。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询