我有一个在特定位置/旋转移动的相机。我有几个3D模型。我希望3D模型以一定的偏移量出现在相机前面。它们应该放置在相机的中心。相机和3D模型之间的距离应该总是保持不变,并且不应该影响相机在什么位置和以什么旋转。
到目前为止,我一直试图这样做:
void OnCamNewPosition(){
this.transform.position = Camera.main.ScreenToWorldPoint(new Vector3(Screen.width/2 + offset, Screen.height/2 + offset, Camera.main.nearClipPlane + offset));
}
这一小段代码在相机处于特定位置时可以工作,但并不总是有效。有时3D模型在相机的左侧而不是中心,有时在相机上方,我们只能看到3D模型的一半。
1条答案
按热度按时间piwo6bdm1#
正如评论所说,在屏幕空间中穿行是没有意义的。如果你瞄准相机变换,它将永远在中心,也适用于没有渲染到屏幕上的相机。