osg加载模型丢失纹理
系列文章目录
文章目录
- 系列文章目录
- 前言
- 一、问题原因
- 二、问题解决
前言
OpenSceneGraph中,加载osg模型文件,模型能够显示,但是没有纹理,而且加载任何模型都没有纹理。显示情况如下图。
代码如下:
#include<Windows.h>
#include <osgViewer/Viewer>
#include <osg/Node>
#include <osg/Geode>
#include <osg/Group>
#include <osg/ShapeDrawable>
#include <osg/Material>
#include <osgDB/ReadFile>
#include <osgDB/WriteFile>
#include <osgUtil/Optimizer>
#include <osgViewer/ViewerEventHandlers>
#include<iostream>
int main()
{
// 创建场景
osg::ref_ptr<osgViewer::Viewer> viewer = new osgViewer::Viewer;
// 设置并读取本地模型
viewer->setSceneData(osgDB::readNodeFile(
"E:/osgEarth/vs2022_64bit_3rdParty_osg365_oe32/runtime/osg3.6.5Oe3.2Vs2022X64/OpenSceneGraph-Data/cessna.osg")); //cessna.osg avatar.osg
// 设置场景位置尺寸
viewer->setUpViewInWindow(100, 100, 800, 600);
// 循环
return viewer->run();
}
一、问题原因
1.首先能够显示模型,说明osg库本身没有问题,所以第一感觉就是缺少纹理文件,但是这都是osg库自带的资源,使用osgviewer.exe工具测试没有问题,基本确定不是缺少纹理文件的问题
二、问题解决
在附加依赖项中缺少:osgViewerd.lib