1 osgViewer::WindowSizeHandler
该事件处理器提供了对窗体屏幕的控制,功能如下:
按住或再次键盘f键,则三维窗体在全屏和退出全屏之间切换;
按住键盘>键,则屏幕分辨率增加;
按住键盘<键,则屏幕分辨率减小;
2 osgGA::StateSetManipulator
该事件处理器是状态集操控器。功能如下:
按住或再次键盘l键(注意:不是数字1,是字母l),则开启三维模型的光照或关闭光照之间切换;
按住或再次键盘t键,则开启三维模型的或关闭关闭纹理之间切换;
按住或再次键盘w键,则在三维模型的填充模式、线框模式、点模式之间在之间切换;
#include<osgViewer/Viewer>
#include<osgDB/readFile>
#include<osgViewer/ViewerEventHandlers>
#include<osgGA/StateSetManipulator>
int main(int argc, char* argv[])
{
osg::ArgumentParser arguments(&argc, argv);
osg::setNotifyLevel(osg::INFO);
osgViewer::Viewer viewer(arguments);
auto pNode = osgDB::readNodeFile("航天器.3ds");
if (nullptr == pNode)
{
OSG_WARN << "file not exist!\