OSG编译和使用第三方插件3rdParty

原文:http://blog.csdn.net/sophistcxf/article/details/9096303

一、OSG Core是不提供多数诸如文件读写功能的,如何强行使用,则会提示:

这是因为没有加入相应的插件。

插件的源码位于3rd party中http://openscenegraph.alphapixel.com/osg/downloads/openscenegraph-third-party-library-downloads ,在CMake的时候可以设置

编译时我犯了一个很蠢的错误,我下的3rd party包含两个版本:X64和X86。而我将目录设成了3rd party,怎么都编译不出freetype。

二、使用

使用插件时,不仅要加入所需要的库,并且要使用宏:

USE_OSGPLUGIN(param)

param是相应的插件名字!(我没注意这个,文字显示总不成功)

比如:

  1. USE_OSGPLUGIN(bmp)  
  2. USE_OSGPLUGIN(3ds)  
  3. USE_OSGPLUGIN(osg)  
  4. USE_OSGPLUGIN(png)  
  5. USE_OSGPLUGIN(freetype)  
  6. USE_OSGPLUGIN(dds)  
  7.   
  8. #ifdef DEBUG  
  9. #pragma comment( lib,"osgdb_bmpd.lib" )  
  10. #pragma comment( lib,"osgdb_3dsd.lib" )  
  11. #pragma comment( lib,"osgdb_osgd.lib" )  
  12. #pragma comment( lib,"osgdb_pngd.lib" )  
  13. #pragma comment( lib,"osgdb_freetyped.lib" )  
  14. #pragma comment( lib,"osgdb_ddsd.lib" )  
  15. #pragma comment(lib, "freetype2311MTd.lib")  
  16. #pragma comment(lib, "libpngd.lib")  
  17. #pragma comment(lib, "zlibD.lib")  
  18. #else   
  19. #pragma comment( lib,"osgdb_bmp.lib" )  
  20. #pragma comment( lib,"osgdb_3ds.lib" )  
  21. #pragma comment( lib,"osgdb_osg.lib" )  
  22. #pragma comment( lib,"osgdb_png.lib" )  
  23. #pragma comment( lib,"osgdb_freetype.lib" )  
  24. #pragma comment( lib,"osgdb_dds.lib" )  
  25. #pragma comment(lib, "freetype2311MT.lib")  
  26. #pragma comment(lib, "libpng.lib")  
  27. #pragma comment(lib, "zlib.lib")  
  28. #endif  
使用了USE_OSGPLUGIN的,一定要加入相应的lib。这里注意freetype插件是比较特殊的,他不仅要加入osgdb_freetype.lib,还要加入freetype2311MT.lib(随3rdParty发布)。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值