3D Graphics、OpenGL、GLSL、C/C++、GameEngine ……What are you looking for?
之前曾经兴致勃勃地谈了一下我对OpenGL渲染流水线中常规矩阵变换,以及变换所经过的空间的理解。本篇可以说是它们的续篇,谈论一下“OpenGL世界”中的另一个空间,或者说,另一些空间——我们所创造的空间。
More...
你好,这里是ZwqXin关于Shadow volume阴影锥技术实践记录的第六辑。这里我要给出此系列的第三个DEMO,Shadow Volume的shader实现版本。实现过程中比起第2个DEMO,所经历的波折也不少呢~
本文是ZwqXin关于Shadow volume阴影锥技术实践记录的第五辑。Z-PASS之后,终于来到Z-FAIL了。Z-FAIL与Z-PASS最大的区别在于robustness,很明显地,在上次Z-PSS例子中你一旦进入阴影锥内部,将会“目空一切”。如果有时候你不得不“靠近阴影”,Z-PASS就不是适合的算法了(尽管它效率高),这时候,毫不犹豫地换用Z-FAIL吧。
好吧,你想像上一篇文章所提及的那样,同时进行“在线”渲染和“离线”渲染,而不是分开地先FBO后屏幕或者先屏幕后FBO渲染两次?这里是我找到的方法。尽管只是近似,但效果应该不错了(希望OPENGL日后可以实现真正的“同时”)。
FBO这个名字应该记住,同时还得记住VBO,PBO——这些算得上OpenGL的高级技术了,但是可以说,用处很广。从拓展到即将的核心,证明了它们的价值。这里我主要讲讲FBO(因为最近只用到FBO嘛嘿),全名Frame Buffer Object,目前主要用于离屏渲染技术。
本文是ZwqXin关于Shadow volume阴影锥技术实践记录的第四辑。Z-PASS的固定管道渲染过程大概已经完成了,如之前所述,本系列会逐渐进入shader ver.和 Z-FAIL,还有优化方法的探讨记录。在此前,稍微总结一下Shadow volume技术的一些要点,也总结这一阶段结果中出现的问题。
本篇文章承接上文:乱弹OpenGL中的矩阵变换(上) 。上篇中,我尝试从一种不太成熟的OpenGL世界观(注意,或许也是3D渲染世界的世界观)来认识这个OpenGL世界,向自己澄清了一些概念(尽管不够高清)。这里我想继续从矩阵数学的角度想一想:究竟模型位置怎么在世界中各个空间的坐标系统中“转换”?
在前面的日志(Shadow Volume 阴影锥技术之探Ⅲ )中,自己稍微提及了NEHE的"3D矩阵求逆"方法之高,并谈了谈自己的一点拙略理解。呵呵,然后,既然如此,一不做二不休,在本篇中得继续乱弹一下下,关于OpenGL矩阵的理解。
这里有一句,我认为,最能够消解头脑中的云雾的话:OpenGL中所有的变换,都是在变换坐标系。
本帖临时记帐.本来是安排接在 Shadow Volume 阴影锥技术之探Ⅲ 之后的,但因为文太长,图片太占,因此惟有把DEMO图片展分流到这里了。本来不展也可,不过这DEMO实在用了我不少心血,况且截了那么多调试过程中的图,况且都传上相册了,况且.......
本文是ZwqXin关于Shadow volume阴影锥技术实践记录的第三辑。固定管道之 Z-PASS 算法的最后一篇。本文着重接着第Ⅱ篇谈谈针对复杂模型的阴影生成的实现。继续接下来可能会从Z-FAIL算法或者shader实现方面继续探讨本系列。