查看: 1854|回复: 8

吐槽下osg

[复制链接]

该用户从未签到

发表于 2012-9-26 16:21:06 | 显示全部楼层 |阅读模式
本帖最后由 zengqh 于 2012-9-26 16:22 编辑

osg了解了下,按照官方的tutorial写了几个demo,看了下渲染流程,
拿osg与Ogre作比较的话,我对osg要吐槽下:

1. 很多地方只是对opengl作了一些浅层封装,从封装的上层,到处可以看到opengl的影子。(light, material...)

2. 提供多格式的mesh不如提供一个统一的格式和一个好的导出插件。

3. 还有display list, 太古老了吧。

4. 场景图的封装稍显怪异:
Node<---Group<---Transform<---MatrixTransform
                                              <---PositionAttitudeTransform

后面三个类是不是可以完全由Group来替代呢,或者叫SceneNode. Ogre的场景图觉得更好一点。

5. 场景管理在哪里? 不知道是不是由插件来提供。
但是一般的octree, quadtree, bsp还是提供下吧。

6. 材质的概念太狭隘了,材质的封装与ogre差得太远,stateset, 纹理, 阴影, fog等等属性可以考虑加入到材质。

7. 核心功能分得太开了吧,地形系统,粒子系统,阴影,动画,纹理加载等等,都是一个图形库最基本的功能。

8. 不太适应osg的坐标系, 摄像头总放错。

9. event, update, cull, render traversal,怎么还有render traversal,应该到了render queue吧

10. 吐槽下我,没怎么学就抱怨起来了。

该用户从未签到

发表于 2012-9-26 21:05:55 | 显示全部楼层

该用户从未签到

发表于 2012-9-27 09:06:58 | 显示全部楼层
妹子也不长JJ  难道都是残疾人吗

该用户从未签到

发表于 2012-9-27 09:18:15 | 显示全部楼层

该用户从未签到

发表于 2012-9-27 10:06:07 | 显示全部楼层
您的吐槽实在是早了点,逐条给出一些不一样的提示,建议您思考和了解:
1. 个人认为这是一种更好的方式,让OpenGL开发者有经可循,而不是盲目地学习一套全新的体系
2. OSG只是支持多种数据格式,内部的显示格式是统一的
3. 只要这世界上还有集成显卡,就不能少了display list。而且OSG对于VBO的支持早就非常完善了
4. 只是您的习惯问题
5. OSG是一个渲染库,不是游戏引擎,因此没必要对于开发者做各种各样的限制。您说的这些空间结构也都有各种各样的实现了
6. 依然是您作为一个OGRE开发者的习惯问题,OpenGL开发者并不这么看。此外由我开发的全新的Compositor系统也即将加入OSG核心
7. 恰恰不是这样,这些都不是核心的组件,图形库的核心就是高效地渲染图形,其它都是锦上花。
8. 同OpenGL坐标系无区别
9. 只是叫法不同而已
10. 这一点赞同

归结起来,这只是您作为OGRE开发者在学习另一个引擎的时候抱怨而已。前一段我在做一个基于OGRE的项目的时候也有类似的感慨,觉得OGRE这种过度封装实在是不可理喻,甚至对于非游戏类的开发而言,它的80%的功能变得一无是处而且累赘和耦合~~但是这依然只是因为我作为OSG开发者而产生的不适应,并非引擎本身有什么值得吐槽的地方

OSG不是游戏引擎,而是泛图形渲染引擎,它的领域涵盖也非常之广,因此在功能设计上,结构设计上,兼容性考虑上,显然都会与专门的游戏引擎大相径庭。这一点希望您能够逐渐有所了解

该用户从未签到

 楼主| 发表于 2012-9-27 10:17:49 | 显示全部楼层
array 发表于 2012-9-27 10:06
您的吐槽实在是早了点,逐条给出一些不一样的提示,建议您思考和了解:
1. 个人认为这是一种更好的方式,让 ...

多谢指教。以后有什么关于这方面的东西得多多请教array兄。


关于osg的坐标系,是右手,但是绕X旋转了-90度?

该用户从未签到

发表于 2012-9-27 10:29:23 | 显示全部楼层
本帖最后由 isurface 于 2012-9-27 10:29 编辑

display list,古老的功能不一定就是落后的功能啊。我觉得DXX的deferred context和dispaly list有一点点相似。

该用户从未签到

 楼主| 发表于 2012-9-27 10:37:47 | 显示全部楼层
isurface 发表于 2012-9-27 10:29
display list,古老的功能不一定就是落后的功能啊。我觉得DXX的deferred context和dispaly list有一点点相似 ...

你说的是DX11的功能吧。

DX10/11没玩过,听说很NB,DX11要超越OGL4。

该用户从未签到

发表于 2012-9-27 10:51:34 | 显示全部楼层
zengqh 发表于 2012-9-27 10:37
你说的是DX11的功能吧。

DX10/11没玩过,听说很NB,DX11要超越OGL4。

是啊,DXX在PC上超越OGL是没有悬念的,因为PC上的标准都是微软制定的,各大显卡厂商都跟着微软走。但是在移动领域还是OGL的天下,现在好像只有高通在手机上使用Dx9的技术,其他公司都是用OGL技术。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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