我有很长的游戏背景,所以我做了两个分区,并开始实施滚动一个接一个。
但是在滚动的过程中,我遇到了这样的问题——一个部分与另一个部分重叠,下面的图片将给您更多关于我的观点的解释:
由于重叠的问题,它看起来不光滑。
以下是我用于实现的代码:
public class LayerScroller : MonoBehaviour
{
public Layer[] backgroundLayers;
public Layer[] starLayers;
void Start ()
{
}
void Update ()
{
// for (int i = 0; i < backgroundLayers.Length; i++) {
// backgroundLayers [i].MoveLayer ();
// }
for (int i = 0; i < starLayers.Length; i++) {
starLayers [i].MoveLayer ();
}
}
}
public class Layer : MonoBehaviour
{
public Transform prevGroupLayer;
public float speed;
public void MoveLayer ()
{
Vector3 currPosition = transform.position;
currPosition.y -= speed;
transform.position = Vector3.Lerp (transform.position, currPosition, Time.deltaTime * 10f);
// transform.Translate (Vector3.right * -speed * Time.deltaTime);
if (transform.position.y <= -GameConstants.BACKGROUND_LENGTH) {
Vector3 currentPosition = transform.position;
currentPosition.y = (prevGroupLayer.position.y + (GameConstants.BACKGROUND_LENGTH)) - speed * Time.deltaTime;
transform.position = currentPosition;
}
}
}
压榨机
脚本正在控制所有子层,每个层包含
层
请给我一些指导来解决这个重叠的问题,我肯定是犯了一些小错误。