Unity3D制作简单的太阳系
来源:互联网 发布:吉首大学网络教育系统 编辑:程序博客网 时间:2024/05/30 21:58
原地址
这次要实现一个简单的太阳系,太阳本身自带光源,其他星球围绕太阳的转速不一样(越远的公转越慢),且不在一个法平面上。
首先,在场景中创建1个太阳和9大行星,然后将它们分别命名。9大行星的排列顺序是:水星、金星、地球、火星、木星、土星、天王星、海王星、冥王星?然后将它们延X轴依次排列开,这样做的目的是可以很容易知道行星的旋转法线是(0,Y,Z),因此要确保行星不在一个法平面上,只需确保Y/Z不相等即可。
我希望把太阳和其它行星区分开来,我决定给太阳以光明(我说要有光)。怎么办呢?Unity中并没有自发光组件,如果我们尝试在太阳上添加一个点光源,那么你肯定会发现奇怪的现象,太阳本身不发光,却会照亮他人...
所以我使用了Unity第三方插件Glow11,Unity载入插件的方法:menu->Assests->import package->custom package,注意路径不能有中文。Glow11的使用方法:在主摄像机上添加Glow11组件,创建一个Material材质球,选择Shader为Glow11的自发光shader,将材质球挂载到Sun对象上,调整材质球和点光源颜色即可。
接下来就是写脚本啦,脚本很简单,主要使用了Transform对象的RotateAround方法。该方法接受3个参数,第一个是围绕的旋转点,在这里即太阳的位置,第二个是旋转的法向量,在这里法向量在(0,Y,Z)平面上,第三个是旋转的速度。为了方便设置旋转中心和速度,我将它们设置成了公有变量。
随机Y和Z让行星尽量不在一个法平面上旋转。将脚本挂载到每一个行星上面,并设置好旋转中心(太阳)和旋转速度即可。为了让行星运行的轨迹显现出来,可以给每个行星添加足迹组件(effects->trailer render):
- Unity3D制作简单的太阳系
- Unity3D:简单太阳系的制作
- 制作简单的太阳系
- Unity3D学习笔记(3)—— 制作简单的太阳系
- 简单太阳系制作
- unity3d按照一定比例制作太阳系模型
- 简单的太阳系模型
- Unity3d入门作——做一个简单的太阳系(一)
- 做一个简单的太阳系(二)
- Unity3d学习笔记(2)--一个太阳系的实现
- Unity3D学习(3)——物体的运动&简易太阳系
- unity3d简单地图制作
- Unity3d制作简单拼图游戏
- Unity3d制作简单拼图游戏 .
- 用WPF 做了一个简单的太阳系
- Unity3d制作一个简单的打开保存对话框-按钮2
- Unity3D 学习日记(六) 制作简单的小地图
- Unity3d制作一个简单的打开保存对话框-按钮2
- unity 判断触摸坐标是否落在ui上
- NOIP-2009-02-分数线划定
- kali linux下信息收集工具之Maltego新手入门
- Realtime Shadow Rendering Log
- HDOJ(HDU) 2524 矩形A + B(推导公式、)
- Unity3D制作简单的太阳系
- NYOJ-2-括号配对问题
- Unity5中叹为观止的实时GI效果
- Integrating Cardboard to the AR/VR Sample | Vuforia Library Prod
- 网页性能管理详解
- Android设备连接Unity Profiler性能分析器
- Create a Virtual Reality Game For Google Cardboard
- Chapter 0.a Unity入门案例上
- Unity3d删除无用的美术资源