Unity人物跳跃脚本设计指南:详细实例解析
以下是一个简单的Unity人物跳跃脚本示例:
public class PlayerJump : MonoBehaviour
{
public float jumpForce = 5f;
public float groundCheckDistance = 0.1f;
public LayerMask groundMask;
private Rigidbody2D rb;
private bool isGrounded;
void Start()
{
rb = GetComponent<Rigidbody2D>();
}
void FixedUpdate()
{
isGrounded = Physics2D.Raycast(transform.position, Vector2.down, groundCheckDistance, groundMask);
if (isGrounded && Input.GetKeyDown(KeyCode.Space))
{
rb.velocity = new Vector2(rb.velocity.x, jumpForce);
}
}
}
该脚本具备以下功能:
- 设置跳跃力和地面检测距离,以及地面图层;
- 获取人物的Rigidbody2D组件;
- 每帧检测人物是否在地面上,如果在,则判断是否按下了空格键,如果是,则给人物一个向上的力,使其跳跃;
- 人物跳跃时,只改变其y方向上的速度,x方向上的速度不变。
要使用该脚本,只需将其附加到人物对象上即可。在Unity编辑器中,将该脚本拖拽到人物对象上即可。
原文地址: https://www.cveoy.top/t/topic/naWi 著作权归作者所有。请勿转载和采集!