Reverted some changes which were just for testing the new normal encoding.
This commit is contained in:
@ -1,19 +1,19 @@
|
||||
#version 130
|
||||
|
||||
// Passed in from the vertex shader
|
||||
in vec4 worldPosition;
|
||||
in vec3 worldNormal;
|
||||
|
||||
// the color that gets written to the display
|
||||
out vec4 outputColor;
|
||||
|
||||
void main()
|
||||
{
|
||||
// Again, for the purposes of these examples we cannot be sure that per-vertex normals are provided. A sensible fallback
|
||||
// is to use this little trick to compute per-fragment flat-shaded normals from the world positions using derivative operations.
|
||||
vec3 normal = normalize(cross(dFdy(worldPosition.xyz), dFdx(worldPosition.xyz)));
|
||||
|
||||
// We are just using the normal as the output color, and making it lighter so it looks a bit nicer.
|
||||
// Obviously a real shader would also do texuring, lighting, or whatever is required for the application.
|
||||
outputColor = vec4(abs(worldNormal.xyz), 1.0);
|
||||
}
|
||||
#version 130
|
||||
|
||||
// Passed in from the vertex shader
|
||||
in vec4 worldPosition;
|
||||
in vec4 worldNormal;
|
||||
|
||||
// the color that gets written to the display
|
||||
out vec4 outputColor;
|
||||
|
||||
void main()
|
||||
{
|
||||
// Again, for the purposes of these examples we cannot be sure that per-vertex normals are provided. A sensible fallback
|
||||
// is to use this little trick to compute per-fragment flat-shaded normals from the world positions using derivative operations.
|
||||
vec3 normal = normalize(cross(dFdy(worldPosition.xyz), dFdx(worldPosition.xyz)));
|
||||
|
||||
// We are just using the normal as the output color, and making it lighter so it looks a bit nicer.
|
||||
// Obviously a real shader would also do texuring, lighting, or whatever is required for the application.
|
||||
outputColor = vec4(abs(normal) * 0.5 + vec3(0.5, 0.5, 0.5), 1.0);
|
||||
}
|
||||
|
@ -1,25 +1,20 @@
|
||||
#version 140
|
||||
|
||||
in vec4 position; // This will be the position of the vertex in model-space
|
||||
in vec3 normal;
|
||||
|
||||
// The usual matrices are provided
|
||||
uniform mat4 cameraToClipMatrix;
|
||||
uniform mat4 worldToCameraMatrix;
|
||||
uniform mat4 modelToWorldMatrix;
|
||||
|
||||
// This will be used by the fragment shader to calculate flat-shaded normals. This is an unconventional approach
|
||||
// but we use it in this example framework because not all surface extractor generate surface normals.
|
||||
out vec4 worldPosition;
|
||||
out vec3 worldNormal;
|
||||
|
||||
void main()
|
||||
{
|
||||
// Standard sequence of OpenGL transformations.
|
||||
worldPosition = modelToWorldMatrix * position;
|
||||
vec4 cameraPosition = worldToCameraMatrix * worldPosition;
|
||||
|
||||
worldNormal = normal;
|
||||
|
||||
gl_Position = cameraToClipMatrix * cameraPosition;
|
||||
}
|
||||
#version 140
|
||||
|
||||
in vec4 position; // This will be the position of the vertex in model-space
|
||||
|
||||
// The usual matrices are provided
|
||||
uniform mat4 cameraToClipMatrix;
|
||||
uniform mat4 worldToCameraMatrix;
|
||||
uniform mat4 modelToWorldMatrix;
|
||||
|
||||
// This will be used by the fragment shader to calculate flat-shaded normals. This is an unconventional approach
|
||||
// but we use it in this example framework because not all surface extractor generate surface normals.
|
||||
out vec4 worldPosition;
|
||||
|
||||
void main()
|
||||
{
|
||||
// Standard sequence of OpenGL transformations.
|
||||
worldPosition = modelToWorldMatrix * position;
|
||||
vec4 cameraPosition = worldToCameraMatrix * worldPosition;
|
||||
gl_Position = cameraToClipMatrix * cameraPosition;
|
||||
}
|
||||
|
Reference in New Issue
Block a user