查看: 1841|回复: 4

请教编译osgNV的问题

[复制链接]

该用户从未签到

发表于 2009-12-2 11:27:50 | 显示全部楼层 |阅读模式
本帖最后由 shypzms 于 2009-12-2 11:33 编辑

第一次用CMake,很多地方不大懂
1.jpg
2.JPG
像上图这样设置,然后用VC批生成出来最终只有osgNV和osgNVExt。
看源文件里好像还有osgNVCg、osgNVParse、osgNVPhysx和osgNVSlang,这几个应该怎么编译出来?
尝试把osgNVCg里的CMakeLists.txt导入CMake,出现下面的错误
3.JPG
4.JPG

该用户从未签到

发表于 2009-12-2 12:09:24 | 显示全部楼层
osgNVCg需要NVidia Cg的支持,如果您是NV卡的用户,可以到
http://developer.nvidia.com/object/cg_toolkit.html
去下载。然后设置CMake中的CG_...系列选项,选择正确的头文件目录,库文件和cgc编译器位置,都设置正确才可以编译osgNVCg库。

osgNVPhysx同理,需要先下载NVidia的Physx库;并设置对应的CMake选项(包括BUILD_PHYSX和PHYSX_*等)。

osgNVParse和osgNVSlang已经废弃,不必再编译了

我不知道ATI卡的用户想用Cg和Physx会产生什么后果。


尝试把osgNVCg里的CMakeLists.txt导入CMake
这是完全的概念性错误。CMake不允许直接调用子目录的脚本文件,必须从根目录启动

该用户从未签到

 楼主| 发表于 2009-12-2 16:07:17 | 显示全部楼层
基本编译成功了,但是osgNVPhysX还是有些问题
  1. PhysxActor.cpp
  2. E:\osgnv\include\osgNVPhysx/PhysicsScene(54) : error C2451: “osg::ref_ptr<T>”类型的条件表达式是非法的
  3.         with
  4.         [
  5.             T=osgNVPhysx::PhysicsElement
  6.         ]
  7.         没有可用于执行该转换的用户定义的转换运算符,或者无法调用该运算符
  8. E:\osgnv\include\osgNVPhysx/PhysicsScene(123) : error C2451: “osg::ref_ptr<T>”类型的条件表达式是非法的
  9.         with
  10.         [
  11.             T=osgNVPhysx::PhysicsElement
  12.         ]
  13.         没有可用于执行该转换的用户定义的转换运算符,或者无法调用该运算符
  14. PhysxScene.cpp
  15. E:\osgnv\include\osgNVPhysx/PhysicsScene(54) : error C2451: “osg::ref_ptr<T>”类型的条件表达式是非法的
  16.         with
  17.         [
  18.             T=osgNVPhysx::PhysicsElement
  19.         ]
  20.         没有可用于执行该转换的用户定义的转换运算符,或者无法调用该运算符
  21. E:\osgnv\include\osgNVPhysx/PhysicsScene(123) : error C2451: “osg::ref_ptr<T>”类型的条件表达式是非法的
  22.         with
  23.         [
  24.             T=osgNVPhysx::PhysicsElement
  25.         ]
  26.         没有可用于执行该转换的用户定义的转换运算符,或者无法调用该运算符
复制代码

该用户从未签到

发表于 2009-12-2 16:27:59 | 显示全部楼层
您的osg版本是多少?2.4以后的OSG都可以直接使用ref_ptr:perator* 操作符了,所以应该不会再有这个问题;旧版本的需要修改源代码相应位置,添加一个.get()

该用户从未签到

 楼主| 发表于 2009-12-2 17:28:43 | 显示全部楼层
明白了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表