Unity检测Camera后面的GameObjects

时间:2015-04-25 14:16:57

标签: math unity3d 3d camera

我有一个地图游戏对象,有8x8个孩子,按行和列设置。英雄可以在边缘上变成圆形,即从[0,0]到[8,0]。那部分效果很好,但是你看不到边缘的位置,所以我设置了一个脚本,它会将相机后面的瓷砖复制到相机的视线上。

for (int i = 0; i < transform.childCount; i++) {
    Transform child = transform.GetChild(i);
    if (child.position.z < Camera.current.transform.position.z) {
        Vector3 offset = new Vector3(0,0,8);
        child.transform.position += offset;
    }
}

问题在于,相机使用了英雄的跟随脚本,所以它也有旋转。 如何编辑上面的脚本以仅移动不在相机视线范围内的子项,并使用与方向相关的正确偏移量移动它们? 所以在下图中,我想将瓷砖从红色标记移动到绿色标记。现在它是16乘16,因为它看起来更好:))

enter image description here

1 个答案:

答案 0 :(得分:2)

在这些图块渲染器上使用Renderer.isVisible方法。