Explorar el Código

Merge pull request #102908 from kleonc/primitive_quad_second_triangle_lighting_fix

Fix 2D quad primitive missing lighting data in GLES3 renderer
Rémi Verschelde hace 6 meses
padre
commit
59beee5860
Se han modificado 1 ficheros con 6 adiciones y 0 borrados
  1. 6 0
      drivers/gles3/rasterizer_canvas_gles3.cpp

+ 6 - 0
drivers/gles3/rasterizer_canvas_gles3.cpp

@@ -1152,6 +1152,12 @@ void RasterizerCanvasGLES3::_record_item_commands(const Item *p_item, RID p_rend
 					// Reset base data.
 					_update_transform_2d_to_mat2x3(base_transform * draw_transform, state.instance_data_array[r_index].world);
 					_prepare_canvas_texture(state.canvas_instance_batches[state.current_batch_index].tex, state.canvas_instance_batches[state.current_batch_index].filter, state.canvas_instance_batches[state.current_batch_index].repeat, r_index, texpixel_size);
+					state.instance_data_array[r_index].lights[0] = lights[0];
+					state.instance_data_array[r_index].lights[1] = lights[1];
+					state.instance_data_array[r_index].lights[2] = lights[2];
+					state.instance_data_array[r_index].lights[3] = lights[3];
+					state.instance_data_array[r_index].flags = base_flags;
+					state.instance_data_array[r_index].instance_uniforms_ofs = p_item->instance_allocated_shader_uniforms_offset;
 
 					for (uint32_t j = 0; j < 3; j++) {
 						int offset = j == 0 ? 0 : 1;