首先,你需要先模拟好重力
usingUnityEngine;
usingSystem.Collections;
publicclassPlanetGravity : MonoBehaviour
{
//The gravity of the planet
publicfloatgravity = 10;
privateTransform m_transform;
voidAwake()
{
m_transform = transform;
}
publicvoidAddGravity(Transform targetObject)
{
//The gravity direction of the planet
Vector3 gravityDirection = (targetObject.position - m_transform.position).normalized;
//Add the gravity to the target object
targetObject.GetComponent().AddForce(-gravity * gravityDirection);
}
这个脚本目前单纯用来产生星球重力
利用 RigidBody.AddForce 这个API
来产生对物体中心的力
以此来模拟星球重力
接下来建立 PlayerGravity.cs 脚本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

本文介绍了如何在Unity2D中模拟星球重力,通过`PlanetGravity`和`PlayerGravity`脚本实现物体受重力影响,并使玩家角色随重力角度变化。接着讲解了`PlayerController`脚本的使用,让玩家可以在星球表面自由移动。通过这些步骤,可以创建一个简单的2D星球探险场景。
最低0.47元/天 解锁文章
1180

被折叠的 条评论
为什么被折叠?



