如何在移出摄影机视图时处理精灵



我正在学习Unity2D,并试图在复制旧游戏的基础上自学,我的第一个游戏是《太空战争》(1962年的游戏)。

我无法理解的问题是设置一个脚本(我认为这是正确的方法),当我的精灵在一边离开相机时,它会出现在另一边,例如,如果你不熟悉太空战争,当吃豆人离开屏幕并出现在对面时,它将是吃豆人。

我应该如何处理这个问题,因为在我的克隆项目列表中还有其他游戏也将共享相同的视图机制。

我觉得我脑子里完全有需要做什么的逻辑,但与此同时,我对Unity太陌生了,语法阻碍了我前进。

这是否应基于:1) 我的边缘发生了碰撞,然后把它移到了另一边或2) 基于摄影机边缘进行。

我有点认为这可能是类似#2的东西,因为如果另一台电脑的屏幕大小不同怎么办。

我想要的是这个"Mathf.Clamp(transform.position.x,6.0,-6.0)"。这解决了我从一边离开屏幕到另一边重新出现的问题。这只适用于左右边缘。

if(transform.position.x < -6.0 || transform.position.x > 6.0){
    var xPos : float = Mathf.Clamp(transform.position.x, 6.0, -6.0);
    transform.position = Vector2(xPos, transform.position.y);
}

最新更新