예제 #1
0
        public void UpdateCamera()
        {
            if (RenderCamera == null || Viewport.Camera == null)
            {
                return;
            }

            Transform camTrans   = RenderCamera.transform;
            Vector3   camPos     = camTrans.position;
            Vector3   camForward = camTrans.forward;

            // Negate the x position and direction as Unity is left handed while RS is right handed.
            Vector3D    pos     = new Vector3D(-camPos.x, camPos.y, camPos.z);
            Vector3D    forward = new Vector3D(-camForward.x, camForward.y, camForward.z);
            Vector3D    up      = new Vector3D(0, 1, 0);
            Transform3D trans   = new Transform3D();

            trans.SetLookAt(pos, forward, up);

            Viewport.Camera.TransformMatrix = trans.world_to_object;
        }