Skip to content

Commit a45e653

Browse files
committed
Fixed handling of VSG_POINT_SPRITE
1 parent 183af2e commit a45e653

File tree

3 files changed

+16
-16
lines changed

3 files changed

+16
-16
lines changed

data/shaders/standard_flat_shaded.frag

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,26 +47,26 @@ layout(set = MATERIAL_DESCRIPTOR_SET, binding = 11) uniform TexCoordIndices
4747
} texCoordIndices;
4848

4949
layout(location = 2) in vec4 vertexColor;
50-
#ifndef VSG_POINT_SPRITE
5150
layout(location = 3) in vec2 texCoord[VSG_TEXCOORD_COUNT];
52-
#endif
5351

5452
layout(location = 0) out vec4 outColor;
5553

5654
void main()
5755
{
5856
#ifdef VSG_POINT_SPRITE
59-
vec2 texCoord[0] = { gl_PointCoord.xy };
57+
const vec2 texCoordDiffuse = gl_PointCoord.xy;
58+
#else
59+
const vec2 texCoordDiffuse = texCoord[texCoordIndices.diffuseMap].st;
6060
#endif
6161

6262
vec4 diffuseColor = vertexColor * material.diffuseColor;
6363

6464
#ifdef VSG_DIFFUSE_MAP
6565
#ifdef VSG_GREYSCALE_DIFFUSE_MAP
66-
float v = texture(diffuseMap, texCoord[texCoordIndices.diffuseMap].st).s;
67-
diffuseColor *= vec4(v, v, v, 1.texCoordIndices.diffuseMap);
66+
float v = texture(diffuseMap, texCoordDiffuse);
67+
diffuseColor *= vec4(v, v, v, 1);
6868
#else
69-
diffuseColor *= texture(diffuseMap, texCoord[texCoordIndices.diffuseMap].st);
69+
diffuseColor *= texture(diffuseMap, texCoordDiffuse);
7070
#endif
7171
#endif
7272

data/shaders/standard_pbr.frag

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -86,9 +86,7 @@ layout(set = VIEW_DESCRIPTOR_SET, binding = 0) uniform LightData
8686
layout(location = 0) in vec3 eyePos;
8787
layout(location = 1) in vec3 normalDir;
8888
layout(location = 2) in vec4 vertexColor;
89-
#ifndef VSG_POINT_SPRITE
9089
layout(location = 3) in vec2 texCoord[VSG_TEXCOORD_COUNT];
91-
#endif
9290
layout(location = 6) in vec3 viewDir;
9391

9492
layout(location = 0) out vec4 outColor;
@@ -324,7 +322,9 @@ void main()
324322
float intensityMinimum = 0.001;
325323

326324
#ifdef VSG_POINT_SPRITE
327-
vec2 texCoord[0] = { gl_PointCoord.xy };
325+
const vec2 texCoordDiffuse = gl_PointCoord.xy;
326+
#else
327+
const vec2 texCoordDiffuse = texCoord[texCoordIndices.diffuseMap].st;
328328
#endif
329329

330330
float perceptualRoughness = 0.0;
@@ -338,10 +338,10 @@ void main()
338338

339339
#ifdef VSG_DIFFUSE_MAP
340340
#ifdef VSG_GREYSCALE_DIFFUSE_MAP
341-
float v = texture(diffuseMap, texCoord[texCoordIndices.diffuseMap].st).s * pbr.baseColorFactor;
341+
float v = texture(diffuseMap, texCoordDiffuse).s * pbr.baseColorFactor;
342342
baseColor = vertexColor * vec4(v, v, v, 1.0);
343343
#else
344-
baseColor = vertexColor * texture(diffuseMap, texCoord[texCoordIndices.diffuseMap]) * pbr.baseColorFactor;
344+
baseColor = vertexColor * texture(diffuseMap, texCoordDiffuse) * pbr.baseColorFactor;
345345
#endif
346346
#else
347347
baseColor = vertexColor * pbr.baseColorFactor;

data/shaders/standard_phong.frag

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,7 @@ layout(set = VIEW_DESCRIPTOR_SET, binding = 0) uniform LightData
7676
layout(location = 0) in vec3 eyePos;
7777
layout(location = 1) in vec3 normalDir;
7878
layout(location = 2) in vec4 vertexColor;
79-
#ifndef VSG_POINT_SPRITE
8079
layout(location = 3) in vec2 texCoord[VSG_TEXCOORD_COUNT];
81-
#endif
8280
layout(location = 6) in vec3 viewDir;
8381

8482
layout(location = 0) out vec4 outColor;
@@ -144,16 +142,18 @@ void main()
144142
float intensityMinimum = 0.001;
145143

146144
#ifdef VSG_POINT_SPRITE
147-
vec2 texCoord[0] = { gl_PointCoord.xy };
145+
const vec2 texCoordDiffuse = gl_PointCoord.xy;
146+
#else
147+
const vec2 texCoordDiffuse = texCoord[texCoordIndices.diffuseMap].st;
148148
#endif
149149

150150
vec4 diffuseColor = vertexColor * material.diffuseColor;
151151
#ifdef VSG_DIFFUSE_MAP
152152
#ifdef VSG_GREYSCALE_DIFFUSE_MAP
153-
float v = texture(diffuseMap, texCoord[texCoordIndices.diffuseMap].st).s;
153+
float v = texture(diffuseMap, texCoordDiffuse).s;
154154
diffuseColor *= vec4(v, v, v, 1.0);
155155
#else
156-
diffuseColor *= texture(diffuseMap, texCoord[texCoordIndices.diffuseMap].st);
156+
diffuseColor *= texture(diffuseMap, texCoordDiffuse);
157157
#endif
158158
#endif
159159

0 commit comments

Comments
 (0)