使用摄像机 (Camera) 节点
摄像机 (Camera) 节点可用于显示 Kanzi Studio 工程及 Kanzi 应用程序中场景 (Scene) 的内容。当您创建场景 (Scene) 时,它将只包含一个摄像机 (Camera) 节点和一个方向光 (Directional Light)。这是该场景 (Scene) 的默认摄像机 (Camera) 节点和预览摄像机。当摄像机 (Camera) 节点是预览摄像机时,您可以在预览 (Preview) 中通过摄像机 (Camera) 节点看到场景 (Scene)。在工程 (Project)中,预览摄像机标有(预览)(Preview)。
请勿使用渲染变换 (Render Transformation) 或布局变换 (Layout Transformation) 属性缩放摄像机 (Camera) 节点或者摄像机 (Camera) 节点的祖先。当缩放摄像机 (Camera) 节点时,会影响投影,并导致投射与您设置的参数不匹配。
设置摄像机 (Camera) 节点的位置
要设置摄像机 (Camera) 节点的位置:
- 在预览 (Preview) 中选择摄像机工具 (Camera tool)。

- 在摄像机工具 (Camera tool) 中,您可以使用轨道摄像机,也可以使用自由摄像机:

轨道摄像机可以让您围绕在工程 (Project) 中选定的节点或在摄像机查看 (Look At) 属性中设置的节点移动。 要使用轨道摄像机移动,使用以下控件:控件 描述 (Description) 点击鼠标左键并拖动。 旋转 (Rotate) - 点击鼠标中键并拖动。
- 按下 Space 键,然后点击鼠标左键并拖动。
平移 - 滚动鼠标滚轮。
- 按下 Shift 和 Alt 键,然后点击鼠标左键并拖动。
缩放
自由摄像机可以让您四处移动,无需固定在任何一点。要使用自由摄像机进行移动,请使用以下控件:控件 描述 (Description) W 前移。
按下Shift 使速度加倍。S 后移。
按下Shift 使速度加倍。A 左移。
按下Shift 使速度加倍。D 右移。
按下Shift 使速度加倍。Q 左倾。 E 右倾。 点击鼠标左键并拖动。 旋转 (Rotate) 点击鼠标中键并拖动。 平移 滚动鼠标滚轮。 设置摄像机速度。
向下滚动降低摄像机速度。
向上滚动提高摄像机速度。
- 当设置摄像机 (Camera) 节点的位置时,请使用以下控件:
控件 描述 
将摄像机的当前位置存储到预览摄像机 (Camera) 节点。

将摄像机重置为预览摄像机 (Camera) 节点的当前位置。

从摄像机的当前位置创建一个新的摄像机 (Camera) 节点。

将摄像机引入在工程 (Project) 或预览 (Preview) 中选择的 3D 对象。

选择您要通过哪个摄像机 (Camera) 节点查看当前场景。

使用 3D 节点时,以度为单位设置摄像机的视野。
将 摄像机 (Camera) 节点转为预览摄像机
当摄像机 (Camera) 节点是预览摄像机时,您可以在预览 (Preview) 中通过摄像机 (Camera) 节点看到场景 (Scene)。在工程 (Project)中,预览摄像机标有(预览)(Preview)。
要将摄像机 (Camera) 节点转为预览摄像机:
- 在工程 (Project) 中,双击要转为预览摄像机的摄像机 (Camera) 节点。
或
- 在工程 (Project) 中,选择要在其中将摄像机 (Camera) 节点转为预览摄像机的场景。
- 在属性 (Properties) 中的属性摄像机 (Camera) > 预览摄像机 (Preview Camera) 中,选择要用作预览摄像机的摄像机 (Camera) 节点。
如果即使在您设置预览摄像机之后,该场景在预览 (Preview) 中也不可见,您需要激活场景。请参阅 使用场景 (Scene) 节点。
从预设视点查看处于活动状态的场景 (Scene)
摄像机工具 (Camera tool) 可让您从一个预设视点(前、后、上、下、左、右)快速查看整个场景 (Scene) 的内容。除非打开了用于存储摄像机当前位置的选项 (
),否则预设视点不会改变场景 (Scene) 中的摄像机 (Camera) 节点的位置。请参阅 设置摄像机 (Camera) 节点的位置。
要从预设视点查看处于活动状态的整个 场景 (Scene):
- 在预览 (Preview) 中选择摄像机工具 (Camera tool)。

- 使用以下快捷键:
预设视点 快捷键 从左侧查看整个场景 (Scene)。 Shift+1 从右侧查看整个场景 (Scene)。 Shift+2 从上方查看整个场景 (Scene)。 Shift+3 从下方查看整个场景 (Scene)。 Shift+4 从前方查看整个场景 (Scene)。 Shift+5 从后方查看整个场景 (Scene)。 Shift+6
创建新的摄像机 (Camera) 节点
您可以通过以下方式创建新的摄像机 (Camera) 节点:
- 在预览 (Preview) 中选择摄像机工具 (Camera tool)。

- 使用轨道摄像机或自由摄像机移到要在其中创建新摄像机的位置,然后点击
。请参阅 设置摄像机 (Camera) 节点的位置。
Kanzi Studio 会在摄像机所在的位置创建一个新的 摄像机 (Camera) 节点。
或
- 在工程 (Project) 中,按下 Alt 并右键点击场景 (Scene) 或任何要在其中创建摄像机 (Camera) 节点的 3D 节点,然后选择摄像机 (Camera)。
设置摄像机 (Camera) 节点的投影类型
要设置摄像机 (Camera) 节点的投影类型,请在工程 (Project) 中选择摄像机 (Camera) 节点,并在属性 (Properties) 中将投影类型 (Projection Type) 属性设置为:
- 透视 (Perspective),以设置摄像机来显示距离摄像机 (Camera) 节点近的对象比距离远的那些对象大。这是 3D 场景最常用的投影类型。
- 正交 (Orthographic),以设置摄像机,从而使距离摄像机 (Camera) 节点的远近不会影响对象的绘制大小。您可以使用正交摄像机显示 3D 场景的 2D 视图。
在 API 中使用 摄像机 (Camera) 节点
创建具有透视投影的摄像机:
//创建一个名为 Camera 的摄像机。 CameraSharedPtr camera = Camera::create(domain, "Camera"); //将摄像机的投影设置为透视。 camera->setPerspectiveProjection(); //让观察框显示 3D 空间的水平 90 度锥角。 //垂直锥角由视口的长宽比确定。 camera->setFovType(Camera::YFov); camera->setFov(90.0f); camera->setZNear(0.1f); camera->setZFar(100.0f);
创建具有正交投影的摄像机:
//创建一个名为 Camera 的摄像机。 CameraSharedPtr camera = Camera::create(domain, "Camera"); //将摄像机的投影设置为相对正交。 camera->setOrthogonalProjection(Camera::OrthogonalCoordinateSystemRelative); //让观察框显示 3D 空间的 [-width,width] x [-1, 1] x [-1, 1] 部分。 //观察框的宽度由视口的长宽比确定。 camera->setOrthogonalPlaneHeight(1.0f); camera->setZNear(-1.0f); camera->setZFar(1.0f);
有关详细信息,请参阅 API reference 中的 Camera 类。
摄像机 (Camera) 属性类型和消息
要查看 摄像机 (Camera) 节点可用属性类型和消息的完整列表,请参阅 Camera。