OSG学习笔记8-多视景器系统

//多视景器系统,打开了3个窗口,每个窗口对应一个视图对象viewer,并使用多视景器系统来管理这3个视图。
#include "stdafx.h"
#include<osg/Group>
#include<osgDB/ReadFile>
#include<osgViewer/CompositeViewer>



int main(int argc, char**argv)
{
	osg::ref_ptr<osgViewer::View> view1 = new osgViewer::View;
	view1->setUpViewInWindow(0, 50, 320, 240);
	view1->setSceneData(osgDB::readNodeFile("cow.osg"));

	osg::ref_ptr<osgViewer::View> view2 = new osgViewer::View;
	view2->setUpViewInWindow(320, 50, 320, 240);
	view2->setSceneData(osgDB::readNodeFile("cessna.osg"));

	osg::ref_ptr<osgViewer::View> view3 = new osgViewer::View;
	view3->setUpViewInWindow(640, 50, 320, 240);
	view3->setSceneData(osgDB::readNodeFile("axes.osgt"));

	osgViewer::CompositeViewer compositeViewer;
	compositeViewer.addView(view1.get());
	compositeViewer.addView(view2.get());
	compositeViewer.addView(view3.get());
	return compositeViewer.run();
}


osgViewer::CompositeViewer 多视景器类,是多个视图类的几何,派生自VieweBase基类。

addView(View* view);//增加一个视图

view1->setUpViewInWindow()//快速构建视图的窗口设备,在指定的屏幕上创建一个指定位置和尺寸的窗口。

你可能感兴趣的:(OSG学习笔记8-多视景器系统)