从零开始,防止忘记具体流程,留下记录,方便以后观看!
8.添加代表人物的模型的小球并将其命名为:player
在上面添加重力组件Rigidbody 2D
添加碰撞组件Circle Collider 2D
并且给平台也添加碰撞组件Box Collider 2D
添加材质2D-Physics Material 2D可以使得我们的人物模型拥有弹力和摩擦力
并在人物模型中插入脚本
9.控制我们的输入xInput
10.移动和跳跃
private Rigidbody2D rb;
并将Rigidbody2D拖到脚本的rb里面
11.SerializeField
12.Sprite sheet
将人物模型拖到 player 中的 Sprite 中,新建一个 player 的子体——Animator,让它来保存对人物模型的渲染和一些动画。
13.Animitor
private Animator anim;
bool isMoving = rb.velocity.x != 0;
anim.SetBool("isMoving", isMoving);
14.代码清理干净!感觉非常有用呀
15.翻转角色
private int facingDirection = 1;
16.2D Collision Detection(地面检测)
[Header("Collision info")]
[SerializeField] private float groundCheckDistance;
[SerializeField] private LayerMask whatIsground;
private bool isGrounded;
private void OnDrawGizmos()
{
Gizmos.DrawLine(transform.position, new Vector3(transform.position.x, transform.position.y - groundCheckDistance));
}
CollisionCheck();
private void CollisionCheck()
// 如果 groundCheckDistance 碰到地面就是true,没有碰到地面是 flase
{
isGrounded = Physics2D.Raycast(transform.position, Vector2.down, groundCheckDistance, whatIsground);
}