摘要:Temporal AA Temporal AA主要是为了修复场景帧率小于运动物体运动速度的锯齿问题,当帧率太低时候,运动的物体就会一卡一卡,为了避免这种造成的锯齿,原理上帧率刷新速度应该大于两倍运动速度才行。TXAA就是为了修复这种情况。比如高速旋转的轮子用这种AA就会有很好的效果。 伪代码: 上面
阅读全文
随笔分类 - Computer graphic
摘要:Temporal AA Temporal AA主要是为了修复场景帧率小于运动物体运动速度的锯齿问题,当帧率太低时候,运动的物体就会一卡一卡,为了避免这种造成的锯齿,原理上帧率刷新速度应该大于两倍运动速度才行。TXAA就是为了修复这种情况。比如高速旋转的轮子用这种AA就会有很好的效果。 伪代码: 上面
阅读全文
摘要:light map的烘焙原理的核心算法是在VS里面利用贴图坐标变换到[-1,1]作为输出的顶点坐标。 实时渲染的顶点变换中, pos * WVP之后, 顶点坐标就变换到屏幕空间了[-1, 1](实际上还需要透视除法); 如果VertexShader里直接把纹理坐标做为变换结果输出(注意从[0,1]变
阅读全文
摘要:在进行阴影绘制的时候,除了blur整张shadow map之外,实现软阴影的方法还有CSM和PCF。 CSM: CSM(Cascaded Shadow Map)即级联shadow map,又称作PSSM,它的做法是把相机从近裁剪面到远裁剪面分割成N个子视锥,每个视锥渲染一张shadow map。 一
阅读全文
摘要:对于Normal而言,因为是归一化后的,所以只需要存储x和y即可,有多种算法可以进行压缩和解压,这里介绍其中一种比较不错的: 对于position的压缩,由于在PS中的像素所在位置已经提供了x和y,可以由x和y计算出z;在GBuffer中可以存储view space中的z除以far plane的值,
阅读全文
摘要:原文:http://www.cnblogs.com/hust-ruan/archive/2011/12/09/2282035.html 众所周知,OpenGL使用的是右手坐标系,而Direct3D使用的是左手坐标系。 除了上面Z轴的方向不一样外,左右手坐标系的还有其他区别: 正向旋转方向:在左手系中
阅读全文
摘要:原文地址:https://www.codeproject.com/Articles/236394/Bi-Cubic-and-Bi-Linear-Interpolation-with-GLSL Implementation of different interpolations[Bi-Linear a
阅读全文
摘要:https://www.khronos.org/opengl/wiki/Built-in_Variable_(GLSL) The OpenGL Shading Language defines a number of special variables for the various shader
阅读全文
摘要:https://www.khronos.org/opengl/wiki/Shader_Compilation#Validation Shader Compilation is the term used to describe the process by which OpenGL Shading
阅读全文
|