KlayGE 4.4中渲染的改进(五):OpenGL 4.4和OpenGLES 3
摘要:转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2796上一篇我们提到了SSSSS,作为本系列的最后一篇,本文将介绍KlayGE 4.4的OpenGL和OpenGLES插件的改进。OpenGL 4.4KlayGE在OpenGL方面一直是紧跟spec的步伐,这次也不例外。在八月份OpenGL 4.4发布的时候,glloader和KlayGE的OpenGL插件就很快加上了4.4的支持。并且这次把代码彻底过了一遍,很多原先通过扩展实现的功能,都尽量替换成用核心实现的,提高兼容性。经过测试,OpenGL插件在NV和Intel的显卡上所有例子都能正
阅读全文
posted @
2013-12-26 13:42
龚敏敏
阅读(2866)
推荐(0) 编辑
最先进的开源游戏引擎KlayGE 4.4发布
摘要:转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2785随着半年一个新版本的周期,今天KlayGE 4.4正式发布了!在这个版本的开发中,多名团队成员贡献了自己的代码,也有很多朋友提供了宝贵意见和bug报告。也从SALVIA项目的编译脚本中学习和借鉴了很多经验。这些都为KlayGE的发展和完善做出了贡献,在此表示感谢。KlayGE 4.4的主要更新如下:改进的编译系统尽可能使用MSBuild第三方库使用cmake工程文件自动搜索OpenGLES SDK的目录,简化了编译的配置OpenGL ES 3.0支持Tile-based deferr
阅读全文
posted @
2013-12-25 11:56
龚敏敏
阅读(2398)
推荐(0) 编辑
KlayGE 4.4中渲染的改进(四):SSSSS
摘要:转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2774本系列的上一篇提到了KlayGE 4.4将会出现的高质量地形渲染。本篇仍讲一个新功能,Screen Space Sub Surface Scattering(SSSSS)和Translucency。这两个效果都是由团队成员石裕隆实现的。Sub Surface Scattering(SSS)对渲染效果的提升有很明显的左右,尤其是皮肤和植被之类物体。早在GPU Gems 1里就有在texture space作的近似SSS。GPU Gems 3里的方法更是大张旗鼓地用了多次Gaussian
阅读全文
posted @
2013-12-25 11:55
龚敏敏
阅读(1763)
推荐(0) 编辑
KlayGE 4.4中渲染的改进(三):高质量无限地形
摘要:转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2761本系列的上一篇讲了DR中的一些改进。本篇开始将描述这个版本加入的新功能,高质量地形。原有的地形以前的地形实现和水面的方法一样,都是从Crytek在2008年的老方法改进而来。虽然比projected grid的好得多,并且速度很快,但有一些很明显的缺点:视点移动的时候会抖动。水面比较平,而且有波浪看不出抖动。如果用来做静态地形抖动就会非常明显。尤其是far plane变大之后,远处更明显,所以限制在3000以下。不支持shadow。因为只有产生了视野内的三角形,视野外的地形无法正确投
阅读全文
posted @
2013-12-23 15:44
龚敏敏
阅读(2163)
推荐(0) 编辑
KlayGE 4.4中渲染的改进(二):DR的其他改进
摘要:转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2749上一篇讲了TBDR的实现,本篇继续讲解deferred rendering层的一些重要改进。切换到ESM原先deferred系统用的是VSM,现在切换到开销更小的ESM。具体参见我之前的一篇文章。用ESM之后只需要一个通道,空间占用减少,性能也有所提升。下个版本会进一步改成支持打包到RGBA8的纹理,让不支持浮点纹理的硬件也可以使用ESM。Multi-resolution层KlayGE很早就引入了multi-resolution的概念,用来加速SIL的GI。但原先的MR、SIL和De
阅读全文
posted @
2013-12-23 15:44
龚敏敏
阅读(813)
推荐(0) 编辑
KlayGE 4.4中渲染的改进(一):只需要SM3的TBDR
摘要:转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2736KlayGE从4.0开始引入deferred rendering层(DR),并且这几个版本都在持续地改进,以提高性能和降低使用难度。在即将发布的4.4里,deferred rendering更是往前跨了一大步,实现了一个初步的Tile-based Deferred Rendering(TBDR)。和常见的TBDR不同之处在于,这里的方法只需要SM3。(其实SM2也没问题,只是如果光源较多,会遇到指令长度限制)Tile-based在传统的deferred rendering中,每个光源
阅读全文
posted @
2013-12-23 13:34
龚敏敏
阅读(1568)
推荐(0) 编辑