osg屏幕事件处理器和状态集操控器学习

发布时间:2024年01月18日

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!\
文章来源:https://blog.csdn.net/bcbobo21cn/article/details/135663563
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。