Osg项目搭建的注意事项
发布时间
阅读量:
阅读量
一、测试环境是否搭建成功
最近在尝试搭建Osg环境的过程中遇到了不少困难。特别是这个编译速度确实让人头疼。其实大家网上一搜就能找到相关的方法了。具体来说,在完成环境搭建后进行命令行操作时输入这些命令后显示正常就可以确认环境已经成功配置。
1:osgversion
显示版本信息

2:osgviewer cow.osg
显示小牛模型

3:osglogo
显示osg的logo

二、配置项目
新建控制台项目,设置三个地方:
系统参数配置项中包含VC++ - 目录项(在CMake配置阶段使用CMAKE_INSTALL_PREFIX变量指定的包含头文件路径)
//我当时搭建环境弄乱了,放到cmake的安装目录下了
E:\Software\Install\CMake\cmake-3.20.0-windows-x86_64\bin\include
2:项目-属性-VC++ - 库目录(cmake configure时CMAKE_INSTALL_PREFIX的lib路径)
E:\Software\Install\CMake\cmake-3.20.0-windows-x86_64\bin\lib
组件属性链接收输入,并添加额外的依赖项(带有d标记的是调试版本;不带d标记的是发布版本)
//debug:
OpenThreadsd.lib; osgd.lib; osgDBd.lib; osgUtild.lib; osgGAd.lib; osgViewerd.lib; osgTextd.lib
//release:
OpenThreads.lib; osg.lib; osgDB.lib; osgUtil.lib; osgGA.lib; osgViewer.lib; osgText.lib
写个测试程序测试一下:
#include <osgViewer/Viewer>
#include <osgDB/ReadFile>
#include <osgUtil/Optimizer>
int main()
{
osg::ref_ptr<osgViewer::Viewer> rpViewer = new osgViewer::Viewer();
osg::ref_ptr<osg::Group> rpRoot=new osg::Group();
osg::ref_ptr<osg::Node> rpNode= osgDB::readNodeFile("cow.osg");
rpRoot->addChild(rpNode.get());
osgUtil::Optimizer opt;
opt.optimize(rpRoot.get());
rpViewer->setSceneData(rpRoot.get());
rpViewer->realize();
return rpViewer->run();
}

还有一个问题是,在进行一个缩放旋转平移的小练习后发现电脑上的程序频繁闪动。起初误以为是硬件环境没有配置完善;但经过进一步排查发现其实只需将显卡的第一位图形处理器设置为高性能模式即可解决问题。效果如下


全部评论 (0)
还没有任何评论哟~
