您的位置:首页 > 其它

OSG 视景器、漫游器、摄像机与场景的关系

2015-08-02 16:01 155 查看


视景器包括几个最主要的组件:漫游器_cameraManipulator,用于实现交互式的场景漫

游;事件处理器组_eventHandlers,负责处理视景器的事件队列_eventQueue,主要是键盘/

鼠标等事件的处理;场景_scene,它包括视景器所对应的场景图形根节点,以及用于提高节

点和图像数据处理速度的两个分页数据库;摄像机_camera 和_slaves,前者为场景的主摄像

机,后者为从摄像机组,不过OSG 并没有规定一定要使用主摄像机来显示场景,它的更重

要的作用是为OSG 世界矩阵的计算提供依据。

摄像机是 OSG 视图显示的核心器件,没有摄像机就没有办法将场景图形的实景展现给

用户。它包括:

1、视口(Viewport),它指示了摄像机显示窗口的位置和尺寸。

2、图形上下文(GraphicsContext),通常这也就是平台相关的图形显示窗口(即

GraphicsWindow,对于Win32 系统而言,它实际上是通过CreateWindowEx 这个熟悉的API

来创建的),不过也可能是离屏渲染的设备(例如PixelBufferWin32)。

图形窗口的另一个任务是及时把系统和用户交互的事件反馈到事件处理器组中去。

3、渲染器(GraphicsOperation,更多时候是osgViewer::Renderer),这是整个OSG 筛选

(CULL)和绘制(DRAW)的关键,它的功能我们会在后面的日子里慢慢展开。

此外,OSG 的显示设置工具DisplaySettings 也会直接对摄像机的处理工作负责,大部

分设置选项都可以传递到摄像机对应的窗口特性(GraphicsContext::Traits)中,并在渲染过

程中发挥作用。

(摘自array《最长的一帧》)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: