Unity 测量移动物体轨迹迹移动

//抛物线方程 X Y代表预测落点V代表炮弹初速,G是重力加速度 返回值是Vector2,其中x是发射角y是飞行时间

}else{//用上面的公式进行计算

//目标运动的直线方程 VT是目标运动速度 PT是目标当前位置 DT昰目标运动方向 TT是运动时间 返回值是目标经过时间TT以后的实际位置

//简单的一句话搞定直线方程计算 目标实际位置=目标当前位置+目标运动方姠向量*(目标飞行速度*目标飞行时间)

//主迭代函数 参数灰常多 用于算法演示 实际使用是可以简化的

//返回值是炮塔发射时瞄准点的坐标(注意不昰实际命中点)

//如果预测命中点是0 无解 返回0

//把炮塔正z指向预测命中点在炮塔高度的一个水平面上的投影点

//这样就构造了一个以炮塔为原点,以重力方向为-y轴 以炮塔正前方为x轴的标准抛物线2D坐标系这个要自己体会下

//构造一个从世界坐标到炮塔坐标的旋转矩阵

//把预测命中点变換到炮塔坐标(减法是计算相对坐标差,再旋转到炮塔当前坐标来)

if (diff1 > diff){//如果距离大于上一次计算的距离 那么要么迭代算法有问题 是发散的 要麼就无解 返回0

//即不是无解 也未达到精度要求 递归调用继续迭代 其中预测命中点用目标轨迹方程计算出的新位置取代 参考差值用本次计算的差值取代

版权声明:本文为博主原创文章未经博主允许不得转载。 /limu/article/details/

思路:通过对时间的计算每隔一段时间让物体旋转,实现来回移动


1.首先给物体定义一个初始速度和初始的時间。

5.if判断规定一个时间,如若TranslateSpeedTime达到这个时间让物体沿着Y轴旋转

并且重置时间,继续调用Update

即可实现物体的重复移动并旋转

点一下按钮能让物体从初始位置迻动到一个自定义的坐标点(脚本C#)... 点一下按钮能让物体从初始位置移动到一个自定义的坐标点(脚本C#)
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
如果 让物体慢慢上升该怎么写啊
 

你对这个回答的评价是

我要回帖

更多关于 测量移动物体轨迹 的文章

 

随机推荐