所以我做了一个简单的2D设置,你可以移动一个块。 但我无法完全捕捉到另一个精灵(墙)。
检查员设置墙:
检查员设置播放器:
PlayerMovement脚本:
using UnityEngine;
using System.Collections;
public class PlayerMovement : MonoBehaviour {
public KeyCode moveUp;
public KeyCode moveDown;
public KeyCode moveLeft;
public KeyCode moveRight;
public float speed = 10f;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void FixedUpdate () {
Vector2 v = rigidbody2D.velocity;
if (Input.GetKey (moveUp)) {
v.y = speed;
v.x = 0;
rigidbody2D.velocity = v;
} else if (Input.GetKey (moveDown)) {
v.y = speed * -1;
v.x = 0;
rigidbody2D.velocity = v;
} else if (Input.GetKey (moveRight)) {
v.x = speed;
v.y = 0;
rigidbody2D.velocity = v;
} else if (Input.GetKey (moveLeft)) {
v.x = speed * -1;
v.y = 0;
rigidbody2D.velocity = v;
}
else
{
v.x = 0;
v.y = 0;
rigidbody2D.velocity = v;
}
}
}
我不知道是什么可以创造这个空间,因为这是我的第一次团结游戏。
答案 0 :(得分:0)
我几乎可以肯定这是因为你的精灵有这个空边框。要解决此问题,请确保'播放器'精灵完全填充白色像素或/和“墙”精灵。基本上仔细检查图像。
另外,为了解决这个问题,你可以简单地使对撞机略小一些,以适应图像边界。
最后确保对撞机与您认为是身体的像素对应。