Unity 3d让物体成弧线运动(可以制作炮弹发射的轨迹)
2014-12-16 10:02
1021 查看
还有一种方法也可以实现,代码如下
usingUnityEngine; usingSystem.Collections; publicclassProjectileTest:MonoBehaviour { publicGameObjecttarget;//要到达的目标 publicfloatspeed=10;//速度 privatefloatdistanceToTarget;//两者之间的距离 privateboolmove=true; voidStart() { //计算两者之间的距离 distanceToTarget=Vector3.Distance(this.transform.position,target.transform.position); StartCoroutine(StartShoot()); } IEnumeratorStartShoot() { while(move) { Vector3targetPos=target.transform.position; //让始终它朝着目标 this.transform.LookAt(targetPos); //计算弧线中的夹角 floatangle=Mathf.Min(1,Vector3.Distance(this.transform.position,targetPos)/distanceToTarget)*45; this.transform.rotation=this.transform.rotation*Quaternion.Euler(Mathf.Clamp(-angle,-42,42),0,0); floatcurrentDist=Vector3.Distance(this.transform.position,target.transform.position); if(currentDist<0.5f) move=false; this.transform.Translate(Vector3.forward*Mathf.Min(speed*Time.deltaTime,currentDist)); yieldreturnnull; } } }
相关文章推荐
- Unity 3D 泰课网打砖块实例 可以用来发射炮弹
- Unity 实现 曲线运动轨迹(也可以攻击曲线标志等曲线)
- 在Unity中实现可以自由观察无规则高速运动物体的相机的思路
- Unity物体绕圆运动-轨迹
- Unity 3d 实现物体跟随摄像机视野运动
- unity 3d如何隐藏物体
- unity制作一个3d旋转菜单
- 使用第三方插件Curvy为unity场景快速生成运动轨迹与赛道
- unity3d鼠标经过物体时变颜色,离开时恢复
- Unity 判断是否点击在3D物体上
- unity的2D中物体在Scene窗口中可以看到,但在Game窗口中看不到
- [Unity 3D教程]教你如何在3D场景中选择物体并显示轮廓效果
- unity 3d中使用BMFont制作NGUI清晰字体
- Unity 实现鼠标拖动3D物体
- unity解决快速运动物体碰撞检测穿透问题
- Unity 偏振3D左右格式画面制作
- Unity 通过键盘控制物体运动
- Unity制作简单3D图表
- Unity学习笔记 之 发射小球碰撞物体的代码记录
- Unity开发HTC vive 三、远处拖动3D物体