查看: 1408|回复: 8

场景拷贝类使用遇到的疑惑,求指点

[复制链接]

该用户从未签到

发表于 2013-7-31 16:34:04 | 显示全部楼层 |阅读模式
osg::CopyOp中拷贝的几种类型中textures和images的区别是什么?
写过一个小程序,使用拷贝节点的方式操作DOF节点,模型里面有DOF节点,
很明显使用浅拷贝的方式会相互影响,最后使用的nodes拷贝方式,相互没影响。
把nodes拷贝的方式加入到项目平台中,发现nodes拷贝的节点,不能操作模型DOF节点,
请问:是不是忽略了某些关键点,在拷贝方式上面?

该用户从未签到

发表于 2013-7-31 16:50:12 | 显示全部楼层
这里的区别就是,只深度拷贝场景树中得哪些部分。nodes的是将node的子类全部神父拷贝,这样拷贝出来的node和原来的node就是两个,所以不会相互影响。先拷贝本质上就是一个所以互相影响

该用户从未签到

发表于 2013-7-31 16:50:19 | 显示全部楼层
这里的区别就是,只深度拷贝场景树中得哪些部分。nodes的是将node的子类全部神父拷贝,这样拷贝出来的node和原来的node就是两个,所以不会相互影响。先拷贝本质上就是一个所以互相影响

该用户从未签到

发表于 2013-7-31 17:43:52 | 显示全部楼层
你应该使用 DEEP_COPY_ALL ,你使用nodes方式 好像只拷贝 node节点 ,其他类型的节点补拷贝。

该用户从未签到

 楼主| 发表于 2013-7-31 18:10:24 | 显示全部楼层
osg_student 发表于 2013-7-31 17:43
你应该使用 DEEP_COPY_ALL ,你使用nodes方式 好像只拷贝 node节点 ,其他类型的节点补拷贝。

就是想避免ALL这种方式的拷贝,这种方式加大了内存,和直接new一个节点加载模型没区别。

该用户从未签到

 楼主| 发表于 2013-7-31 18:13:44 | 显示全部楼层
fenma3422 发表于 2013-7-31 16:50
这里的区别就是,只深度拷贝场景树中得哪些部分。nodes的是将node的子类全部神父拷贝,这样拷贝出来的node和 ...

flt模型中的DOF节点包含哪些信息?

该用户从未签到

发表于 2013-7-31 21:49:28 | 显示全部楼层
Jensen1736 发表于 2013-7-31 18:13
flt模型中的DOF节点包含哪些信息?

这个 你看一下osgSim中的实现, 或者 你在osg中调试一下 在dof节点的拷贝构造函数中加一个断点,看看会不会 执行

该用户从未签到

发表于 2013-8-1 11:13:36 | 显示全部楼层
对,最简单的就是看一下头文件,或转换成osg文件,用记事本打开看

该用户从未签到

 楼主| 发表于 2013-8-9 09:28:32 | 显示全部楼层
fenma3422 发表于 2013-7-31 16:50
这里的区别就是,只深度拷贝场景树中得哪些部分。nodes的是将node的子类全部神父拷贝,这样拷贝出来的node和 ...

实验后感觉nodes节点拷贝不完全一样,节点遍历ive文件模型,发现switch、dof、face节点都可以拷贝出来,但是light point拷贝不出来,看了下源码感觉是osg拷贝不支持flt文件中的light point,是这样莫?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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