第 17 课:TAA - Velocity Based Reprojection
实现:Post effect
本课需 多 pass / 后处理,暂以代码复盘呈现。
实现
uniform mat4 modelMatrix;
uniform mat4 viewMatrix;
uniform mat4 projectionMatrix;
uniform mat4 prevViewMatrix;
uniform float iTime;
uniform vec2 iResolution;
in vec3 position;
in vec3 normal;
in vec4 color;
out vec4 vColor;
out vec3 vNormal;
out vec3 vPosWorld;
out vec4 vPosScreen;
out vec4 vPosScreenPrev;
void main() {
vColor = color;
vNormal = normalize(mat3(transpose(inverse(modelMatrix))) * normal);
vec4 worldPos = modelMatrix * vec4(position, 1.0);
vPosScreen = projectionMatrix * viewMatrix * worldPos;
vPosScreenPrev = projectionMatrix * prevViewMatrix * worldPos;
vPosWorld = worldPos.xyz;
gl_Position = vPosScreen;
}
复盘笔记
- Post effect
- properties