【unity游戏开发】S型飞行的怪AI写法

我们在游戏设计中,有时候会制作这样的一种飞行怪物(横板游戏常见)


大概用简笔画描述下飞行轨迹

所以飞行的弧线是怎么实现的呢,其实很简单,只需要一个函数即可(干货主义,所以直接给方法不说原理了)

Mathf.Sin(Time.time * 2)  //如果觉得速度不对,可以在后面 * 一个数,改变速度

那么在游戏中应该怎么实现这样的怪呢,下面给2个参考,其中原理是X(前进的速度)和Y(上下移动)共同确定的

这里定义了个moveSpeed  为 float

C#

GetComponent().velocity = new Vector2(moveSpeed , Mathf.Sin(Time.time * 2) * 1.5f);

JS (JS的写法是定义了CharacterController,如果对这个不太清楚的可以去研究下相关基础)

velocity.x = moveSpeed;

velocity.y =  Mathf.Sin(Time.time * 2) * 1.5;



2018-3-21 补充

如果要让3D的组件漂浮怎么做

按照图中的方式来

GetComponent().velocity = new Vector2(0, Mathf.Sin(Time.time * 2) * 1.5f);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容