Unity 如何获取一个物体上一帧的位置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 如何获取一个物体上一帧的位置相关的知识,希望对你有一定的参考价值。
如题
参考技术A LateUpdate看来是被吃掉了。追答这个最直接。
这个也是同一帧执行的,只不过是在update之后而已
本回答被提问者和网友采纳 参考技术B//物体前后两帧的位置
private Vector3 oldPos;
private Vector3 newPos;
//用于记录起跳前的方向
private Vector3 tempDirection;
public void makeDirection()
newPos = transform.position;
if(oldPos != Vector3.zero)
tempDirection = newPos - oldPos;
oldPos = newPos;
将这个函数放在FixedUpdate()中就可以
unity中鼠标点击触发物体运动
求教程!急用!
你要控制物体移动的话,可以通过iTween插件来控制物体运动,简单的运动你可以看看网上的iTween教程。移动模型时候用到的几个核心方法如下:
iTween.MoveTo(): 让模型移动到一个位置,它的底层函数是通过动态的修改模型每一帧的transform.position完成的,所以它会百分之百到达目标点,不会出现误差。
iTween.MoveFrom():它和上面的一样,iTween.MoveTo()是将模型移动到目标位置,而iTween.MoveFrom()是将模型从目标位置移动到原始位置。
iTween.MoveAdd() 和iTween.MoveBy()底层实现一样,大家可以去看源码。处理移动时采用的是transform.Translate也就是API的平移,这样在处理移动的时候可能会出现一些误差,但是效果好点。
iTween.MoveUpdate():和iTween.MoveTo()差不多,只是它需要放在循环或者Update()中。 参考技术A 请问是触发什么运动?
给物体加个box collider 然后写个c#代码
void OnMouseDown()
这里写上你要触发事件的内容,譬如播放动画,animation.play("动画名"),譬如移动物体,transform.translate(0,0,1);
以上是关于Unity 如何获取一个物体上一帧的位置的主要内容,如果未能解决你的问题,请参考以下文章