You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-10 13:00:37 +00:00
Merge pull request #107876 from clayjohn/vs-data-issues
Fix a few improper memory accesses in the clustered forward vertex shader
This commit is contained in:
@@ -610,11 +610,11 @@ void vertex_shader(vec3 vertex_input,
|
||||
vec3 directional_specular = vec3(0.0);
|
||||
|
||||
for (uint i = 0; i < scene_data.directional_light_count; i++) {
|
||||
if (!bool(directional_lights.data[i].mask & instances.data[draw_call.instance_index].layer_mask)) {
|
||||
if (!bool(directional_lights.data[i].mask & instances.data[instance_index].layer_mask)) {
|
||||
continue; // Not masked, skip.
|
||||
}
|
||||
|
||||
if (directional_lights.data[i].bake_mode == LIGHT_BAKE_STATIC && bool(instances.data[draw_call.instance_index].flags & INSTANCE_FLAGS_USE_LIGHTMAP)) {
|
||||
if (directional_lights.data[i].bake_mode == LIGHT_BAKE_STATIC && bool(instances.data[instance_index].flags & INSTANCE_FLAGS_USE_LIGHTMAP)) {
|
||||
continue; // Statically baked light and object uses lightmap, skip.
|
||||
}
|
||||
if (i == 0) {
|
||||
@@ -680,7 +680,7 @@ void vertex_shader(vec3 vertex_input,
|
||||
#endif
|
||||
|
||||
#ifdef Z_CLIP_SCALE_USED
|
||||
if (!bool(scene_data_block.data.flags & SCENE_DATA_FLAGS_IN_SHADOW_PASS)) {
|
||||
if (!bool(scene_data.flags & SCENE_DATA_FLAGS_IN_SHADOW_PASS)) {
|
||||
gl_Position.z = mix(gl_Position.w, gl_Position.z, z_clip_scale);
|
||||
}
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user