Appearance
相机操作器
一个项目的基础是响应相机的移动旋转,RoyFrame提供了一个CamManipulator的类,其身上的主要方法是
- grabBegin
- grabUpdate
- grabEnd
分别对应响应鼠标操作的mouseDown、mouseMove、mouseUp。CamManipulator的主要作用就是响应鼠标事件,并计算出一个Transform矩阵,赋值给挂有RoyCameraComponent的RoySceneNode。
具体来说,相机的操作方式有很多,目前plugin_cameractrl中实现了两个主流的操作方式:
- CamManipulatorRoam: 漫游操作模式
- CamManipulatorOrbit: 围绕中心点旋转模式(单品展示模式)
项目侧或插件侧可以实现更多的CamManipulator。
CamManipulator虽然可以直接响应鼠标事件,但更好的方式是与MESCameraCtrl鼠标策略响应配合,请参考鼠标事件响应一节。即有一个专门响应相机控制的鼠标事件响应器。