2016年6月13日
摘要: http://blog.csdn.net/racehorse/article/details/6664775 法线矩阵 在很多顶点shader中都用到了gl_NormalMatrix。这里将介绍这个矩阵是什么,以及它的作用。 大部分计算是在视图空间内完成的,主要原因是光照的运算要放在这个空间内,否则 阅读全文
posted @ 2016-06-13 16:03 3D入魔 阅读(875) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/racehorse/article/details/6664717 简单的纹理贴图(Simple Texture) 为了在GLSL中应用纹理,我们需要访问每个顶点的纹理坐标。GLSL中提供了一些属性变量,每个纹理单元一个: [cpp] view plain 阅读全文
posted @ 2016-06-13 16:01 3D入魔 阅读(938) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/racehorse/article/details/6662540 逐像素的方向光(Directional Light per Pixel) 这一节将把前面的shader代码改为逐像素计算的方向光。我们需要将工作按照两个shader拆分,以确定哪些是需要逐像 阅读全文
posted @ 2016-06-13 16:00 3D入魔 阅读(641) 评论(0) 推荐(0) 编辑
摘要: 引言 在OpenGL中有三种类型的光:方向光(directional)、点光(point)、聚光(spotlight)。本教程将从方向光讲起,首先我们将使用GLSL来模仿OpenGL中的光。 我们将向shader中逐渐添加环境光、散射光和高光效果。 后面的教程中我们将使用逐像素光照以获得更好的效果。 阅读全文
posted @ 2016-06-13 15:59 3D入魔 阅读(1896) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/racehorse/article/details/6638455 GLSL的Hello World 这一节中包含一个最基本的shader,它提供如下功能:顶点变换然后使用单一的颜色渲染图元。 顶点shader 前面已经说过,顶点shader负责完成顶点变换 阅读全文
posted @ 2016-06-13 15:58 3D入魔 阅读(2546) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/racehorse/article/details/6641623 引言 卡通着色可能是最简单的非真实模式shader。它使用很少的颜色,通常是几种色调(tone),因此不同色调之间是突变的效果。下图显示的就是我们试图达到的效果: 茶壶上的色调是通过角度的余 阅读全文
posted @ 2016-06-13 15:58 3D入魔 阅读(1994) 评论(1) 推荐(0) 编辑
摘要: http://blog.csdn.net/racehorse/article/details/6634830 引言 一个OpenGL程序可以用多种方式和shader通信。注意这种通信是单向的,因为shader的输出只能是渲染到某些目标,比如颜色和深度缓存。 OpenGL的部分状态可以被shader访 阅读全文
posted @ 2016-06-13 15:57 3D入魔 阅读(3214) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/racehorse/article/details/6616256 设置GLSL 这一节讲述在OpenGL中配置GLSL,假设你已经写好了顶点shader和像素shader。如果你还没有准备好,可以从如下网址获得相关内容: http://www.3dshad 阅读全文
posted @ 2016-06-13 15:52 3D入魔 阅读(2781) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/racehorse/article/details/6593719 这是一些列来自lighthouse3d的GLSL教程,非常适合入门。我将边学习边翻译该教程的内容,同时记录在这里,方便以后查询。 流水线概述 下图描述了一个简化的图形处理流水线,虽然简略但仍 阅读全文
posted @ 2016-06-13 15:51 3D入魔 阅读(1911) 评论(0) 推荐(1) 编辑