standardized glsl variable naming
This commit is contained in:
parent
8f9e91e617
commit
f4edf628b1
|
@ -363,8 +363,8 @@ const (
|
||||||
)
|
)
|
||||||
|
|
||||||
var defaultCanvasVertexFormat = glhf.AttrFormat{
|
var defaultCanvasVertexFormat = glhf.AttrFormat{
|
||||||
canvasPosition: {Name: "position", Type: glhf.Vec2},
|
canvasPosition: {Name: "aPosition", Type: glhf.Vec2},
|
||||||
canvasColor: {Name: "color", Type: glhf.Vec4},
|
canvasColor: {Name: "aColor", Type: glhf.Vec4},
|
||||||
canvasTexCoords: {Name: "texCoords", Type: glhf.Vec2},
|
canvasTexCoords: {Name: "aTexCoords", Type: glhf.Vec2},
|
||||||
canvasIntensity: {Name: "intensity", Type: glhf.Float},
|
canvasIntensity: {Name: "aIntensity", Type: glhf.Float},
|
||||||
}
|
}
|
||||||
|
|
|
@ -98,14 +98,14 @@ func (gs *glShader) setUniform(name string, value interface{}) {
|
||||||
func baseShader(c *Canvas) {
|
func baseShader(c *Canvas) {
|
||||||
gs := &glShader{
|
gs := &glShader{
|
||||||
vf: defaultCanvasVertexFormat,
|
vf: defaultCanvasVertexFormat,
|
||||||
vs: defaultCanvasVertexShader,
|
vs: baseCanvasVertexShader,
|
||||||
fs: baseCanvasFragmentShader,
|
fs: baseCanvasFragmentShader,
|
||||||
}
|
}
|
||||||
|
|
||||||
gs.setUniform("u_transform", &gs.uniformDefaults.transform)
|
gs.setUniform("uTransform", &gs.uniformDefaults.transform)
|
||||||
gs.setUniform("u_colormask", &gs.uniformDefaults.colormask)
|
gs.setUniform("uColorMask", &gs.uniformDefaults.colormask)
|
||||||
gs.setUniform("u_bounds", &gs.uniformDefaults.bounds)
|
gs.setUniform("uBounds", &gs.uniformDefaults.bounds)
|
||||||
gs.setUniform("u_texbounds", &gs.uniformDefaults.texbounds)
|
gs.setUniform("uTexBounds", &gs.uniformDefaults.texbounds)
|
||||||
|
|
||||||
c.shader = gs
|
c.shader = gs
|
||||||
}
|
}
|
||||||
|
@ -215,54 +215,53 @@ func getAttrType(v interface{}) (glhf.AttrType, bool) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var defaultCanvasVertexShader = `
|
var baseCanvasVertexShader = `
|
||||||
#version 330 core
|
#version 330 core
|
||||||
|
|
||||||
in vec2 position;
|
in vec2 aPosition;
|
||||||
in vec4 color;
|
in vec4 aColor;
|
||||||
in vec2 texCoords;
|
in vec2 aTexCoords;
|
||||||
in float intensity;
|
in float aIntensity;
|
||||||
out vec4 Color;
|
|
||||||
out vec2 texcoords;
|
|
||||||
out vec2 glpos;
|
|
||||||
out float Intensity;
|
|
||||||
|
|
||||||
uniform mat3 u_transform;
|
out vec4 vColor;
|
||||||
uniform vec4 u_bounds;
|
out vec2 vTexCoords;
|
||||||
|
out float vIntensity;
|
||||||
|
|
||||||
|
uniform mat3 uTransform;
|
||||||
|
uniform vec4 uBounds;
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
vec2 transPos = (u_transform * vec3(position, 1.0)).xy;
|
vec2 transPos = (uTransform * vec3(aPosition, 1.0)).xy;
|
||||||
vec2 normPos = (transPos - u_bounds.xy) / u_bounds.zw * 2 - vec2(1, 1);
|
vec2 normPos = (transPos - uBounds.xy) / uBounds.zw * 2 - vec2(1, 1);
|
||||||
gl_Position = vec4(normPos, 0.0, 1.0);
|
gl_Position = vec4(normPos, 0.0, 1.0);
|
||||||
Color = color;
|
vColor = aColor;
|
||||||
texcoords = texCoords;
|
vTexCoords = aTexCoords;
|
||||||
Intensity = intensity;
|
vIntensity = aIntensity;
|
||||||
glpos = transPos;
|
|
||||||
}
|
}
|
||||||
`
|
`
|
||||||
|
|
||||||
var baseCanvasFragmentShader = `
|
var baseCanvasFragmentShader = `
|
||||||
#version 330 core
|
#version 330 core
|
||||||
|
|
||||||
in vec4 Color;
|
in vec4 vColor;
|
||||||
in vec2 texcoords;
|
in vec2 vTexCoords;
|
||||||
in float Intensity;
|
in float vIntensity;
|
||||||
|
|
||||||
out vec4 fragColor;
|
out vec4 fragColor;
|
||||||
|
|
||||||
uniform vec4 u_colormask;
|
uniform vec4 uColorMask;
|
||||||
uniform vec4 u_texbounds;
|
uniform vec4 uTexBounds;
|
||||||
uniform sampler2D u_texture;
|
uniform sampler2D uTexture;
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
if (Intensity == 0) {
|
if (vIntensity == 0) {
|
||||||
fragColor = u_colormask * Color;
|
fragColor = uColorMask * vColor;
|
||||||
} else {
|
} else {
|
||||||
fragColor = vec4(0, 0, 0, 0);
|
fragColor = vec4(0, 0, 0, 0);
|
||||||
fragColor += (1 - Intensity) * Color;
|
fragColor += (1 - vIntensity) * vColor;
|
||||||
vec2 t = (texcoords - u_texbounds.xy) / u_texbounds.zw;
|
vec2 t = (vTexCoords - uTexBounds.xy) / uTexBounds.zw;
|
||||||
fragColor += Intensity * Color * texture(u_texture, t);
|
fragColor += vIntensity * vColor * texture(uTexture, t);
|
||||||
fragColor *= u_colormask;
|
fragColor *= uColorMask;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
`
|
`
|
||||||
|
|
Loading…
Reference in New Issue