我创建了一个简单的蛇游戏。蛇吃东西时克隆身体部分。但是新的部分直到下一步才看不见。不知道为什么。
在Inspector中,克隆对象具有与预制相同的设置。 我还尝试为Sprite设置“图层顺序”-无效。
void Move () {
if (_isAlive)
{
Vector2 currentPosition = transform.position;
if (_previousDirection != _direction)
{
if (_direction == SnakeDirection.LEFT)
{
transform.rotation = Quaternion.Euler(0, 0, 90);
}
else if (_direction == SnakeDirection.DOWN)
{
transform.rotation = Quaternion.Euler(0, 0, 180);
}
else if (_direction == SnakeDirection.RIGHT)
{
transform.rotation = Quaternion.Euler(0, 0, 270);
}
else if (_direction == SnakeDirection.UP)
{
transform.rotation = Quaternion.Euler(0, 0, 0);
}
_previousDirection = _direction;
}
transform.Translate(0, 30, 0);
CheckBorders();
if (apple.IsEaten())
{
SnakeSection newSection = Instantiate(sectionPrefab);
newSection.transform.position = currentPosition;
newSection.transform.SetParent(canvas.transform, false);
_tail.Insert(0, newSection);
apple.SetEaten(false);
} else if (_tail.Count > 0)
{
_tail.Last().transform.position = currentPosition;
_tail.Insert(0, _tail.Last());
_tail.RemoveAt(_tail.Count - 1);
}
}
}
}
答案 0 :(得分:1)
实例化时可能设置的位置错误。检查它是否不在错误贴砖上的另一个身体精灵上。