Просмотр исходного кода

Merge pull request #48151 from lawnjelly/ewok_gles3_light_modulate

Batching - GLES3 fix light pass modulates
Rémi Verschelde 4 лет назад
Родитель
Сommit
5942a70596
1 измененных файлов с 5 добавлено и 1 удалено
  1. 5 1
      drivers/gles3/rasterizer_canvas_gles3.cpp

+ 5 - 1
drivers/gles3/rasterizer_canvas_gles3.cpp

@@ -1493,7 +1493,11 @@ void RasterizerCanvasGLES3::render_joined_item(const BItemJoined &p_bij, RenderI
 		Light *light = r_ris.item_group_light;
 		bool light_used = false;
 		VS::CanvasLightMode mode = VS::CANVAS_LIGHT_MODE_ADD;
-		state.canvas_item_modulate = p_ci->final_modulate; // remove the canvas modulate
+
+		// we leave this set to 1, 1, 1, 1 if using software because the colors are baked into the vertices
+		if (p_bij.is_single_item()) {
+			state.canvas_item_modulate = p_ci->final_modulate; // remove the canvas modulate
+		}
 
 		while (light) {