👉关于作者
众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣 !!!
专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎私我,交流群让学习不再孤单。
👉背景
🙎小芝:小空,小空,马上就中秋节了哎,我想吃月饼,好想奔月啊。
🙈小空【拿手机查了查】:嫦娥被逄蒙所逼,无奈之下,吃下了西王母赐给丈夫后羿的一粒不死之药后,才飞到了月宫。
🙎小芝:是吗?好想月饼啊。
🙈小空:你的皮肤有些油腻,可你的体味我无法抗拒,我的芳唇在你身上游走,用我原始的欲望彻底将你“吞食”。
🙎小芝【她突然两腮红红的,低头望着自己的脚尖,显得那么羞怯】:你说什么呢?说这个不合适吧。
🙈小空疑惑:啊?你吃月饼不是这种感觉吗?
🙎小芝:啊!!!你说的月饼啊。额嗯,是!是!是! 【心想:神经病,不说清楚,害我瞎想】。还有其他的故事吗?
🙈小空:等等晚上再和你讨论吧,现在我们先说下模拟嫦娥奔月。
👉实践过程
为了快速读懂,开发过程中使用了中文,建议实际开发中仍然推荐使用英文昂。
😜素材准备
首先我们需要行星【土星/地球/木星/水星/火星/金星/月球】素材。我已经做成了【预制体】,源码项目中直接使用。
😜太阳
太阳这的内容较多,其他的都是两个脚本搞定。
1. 粒子系统增加真实性
2. 增加点光源模仿阳光
粒子主要分为两个:动态的火光以及正中心耀眼的白球【百科说太阳其实是白色的】,使用的属性如下图:
运行效果如下:
😜其他行星
我们按照百科查到的资料按照位置大致将物体摆放正确【水星<金星<地球<火星<木星<土星】。
并且每个都挂载上两个脚本【RotationAroundTarget】和【SelfRotation】
【SelfRotation】脚本很简单,一行代码就搞定。
this.transform.Rotate (Vector3.up*FloRotationSpeed,Space.World); 复制代码
【RotationAroundTarget】思路就是,围绕一个目标点走圆,和圆规一样。
public class RotationAroundTarget : MonoBehaviour { public Transform origin; public float speed = 20; float ry, rz; // Use this for initialization void Start () { ry = Random.Range(1, 360); rz = Random.Range(1, 360); } // Update is called once per frame void Update () { Vector3 axis = new Vector3(0, ry, rz); //第一个是围绕的旋转点,在这里即太阳的位置,第二个是旋转的法向量,在这里法向量在(0,Y,Z)平面上,第三个是旋转的速度。 this.transform.RotateAround(origin.position, axis, speed*Time.deltaTime); } } 复制代码
我们把太阳当做坐标中心,为了和太阳预制体分离,小空直接创建一个【Cube】,将她位置摆放在太阳正中心,然后拖拽赋值给脚本变量即可。
运行如下:
👉嫦娥?
对不起,真的对不起,小空遇到突发情况,实在是自己“装”不下去了(同事离职交接工作+周末需要回老家),后面的效果成断崖式下滑,请控制好方向盘。
真的,小空的构思都想好了,模型都准备了,不信你看:
虽然去掉了亿点点的细节,但是不妨碍我们过中秋啊
所以,最终,请欣赏各个版本的嫦娥,哪个对你印象更深呢?
👉其他
📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:
https://www.zhihu.com/people/zhimalier
https://juejin.cn/user/4265760844943479
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。