前言
中山大学数据科学与计算机学院3D游戏课程学习记录博客。
游戏代码:gitee
游戏视频:bilibili
游戏要求
模仿太阳系行星的旋转,而且行星不再同一法平面。
游戏实现
- 创建球体,调整大小作为太阳系的行星,摆放初始位置:
图片从左到右依次是太阳、水星、金星、地球、火星、木星、土星、天王星、海王星。
- 编写脚本,挂载到物体上:
代码如下:
public Transform sun;
public int x,y,z,speed;
// Start is called before the first frame update
void Start() {
speed=Random.Range(100,200);
x=Random.Range(-20,20);
y=Random.Range(-20,20);
z=Random.Range(-20,20);
}
// Update is called once per frame
void Update() {
Vector3 axis=new Vector3(x,y,z);
transform.RotateAround(sun.position,axis,speed*Time.deltaTime);
}
其中sun用来接收外部的物体太阳。
speed用来表示行星运动的速度,x,y,z决定旋转的平面。
调用Update函数让行星转动。
所有行星使用相同的脚本即可,都挂载上述脚本即可运行。
- 运行:
运行结果见视频。