[Bf-blender-cvs] [a23f7a85ca8] draw-colormanagement: Cleanup: EEVEE: Move debug draw to eevee_renderpass.c
Clément Foucault
noreply at git.blender.org
Wed Jan 22 19:39:51 CET 2020
Commit: a23f7a85ca8a77abf9c8414949edbc0bf182923e
Author: Clément Foucault
Date: Wed Jan 22 18:31:48 2020 +0100
Branches: draw-colormanagement
https://developer.blender.org/rBa23f7a85ca8a77abf9c8414949edbc0bf182923e
Cleanup: EEVEE: Move debug draw to eevee_renderpass.c
===================================================================
M source/blender/draw/engines/eevee/eevee_engine.c
M source/blender/draw/engines/eevee/eevee_private.h
M source/blender/draw/engines/eevee/eevee_renderpasses.c
===================================================================
diff --git a/source/blender/draw/engines/eevee/eevee_engine.c b/source/blender/draw/engines/eevee/eevee_engine.c
index f870e7f6da9..fcfe63069ca 100644
--- a/source/blender/draw/engines/eevee/eevee_engine.c
+++ b/source/blender/draw/engines/eevee/eevee_engine.c
@@ -25,7 +25,6 @@
#include "BLI_rand.h"
#include "BKE_object.h"
-#include "BKE_global.h" /* for G.debug_value */
#include "DEG_depsgraph_query.h"
@@ -186,10 +185,8 @@ static void eevee_cache_finish(void *vedata)
static void eevee_draw_background(void *vedata)
{
EEVEE_PassList *psl = ((EEVEE_Data *)vedata)->psl;
- EEVEE_TextureList *txl = ((EEVEE_Data *)vedata)->txl;
EEVEE_StorageList *stl = ((EEVEE_Data *)vedata)->stl;
EEVEE_FramebufferList *fbl = ((EEVEE_Data *)vedata)->fbl;
- EEVEE_EffectsInfo *effects = stl->effects;
EEVEE_ViewLayerData *sldata = EEVEE_view_layer_data_ensure();
/* Default framebuffer and texture */
@@ -351,66 +348,7 @@ static void eevee_draw_background(void *vedata)
EEVEE_renderpasses_draw(sldata, vedata);
}
- /* Debug : Output buffer to view. */
- switch (G.debug_value) {
- case 1:
- if (txl->maxzbuffer) {
- DRW_transform_to_display(txl->maxzbuffer, false, false);
- }
- break;
- case 2:
- if (effects->ssr_pdf_output) {
- DRW_transform_to_display(effects->ssr_pdf_output, false, false);
- }
- break;
- case 3:
- if (effects->ssr_normal_input) {
- DRW_transform_to_display(effects->ssr_normal_input, false, false);
- }
- break;
- case 4:
- if (effects->ssr_specrough_input) {
- DRW_transform_to_display(effects->ssr_specrough_input, false, false);
- }
- break;
- case 5:
- if (txl->color_double_buffer) {
- DRW_transform_to_display(txl->color_double_buffer, false, false);
- }
- break;
- case 6:
- if (effects->gtao_horizons_debug) {
- DRW_transform_to_display(effects->gtao_horizons_debug, false, false);
- }
- break;
- case 7:
- if (effects->gtao_horizons) {
- DRW_transform_to_display(effects->gtao_horizons, false, false);
- }
- break;
- case 8:
- if (effects->sss_irradiance) {
- DRW_transform_to_display(effects->sss_irradiance, false, false);
- }
- break;
- case 9:
- if (effects->sss_radius) {
- DRW_transform_to_display(effects->sss_radius, false, false);
- }
- break;
- case 10:
- if (effects->sss_albedo) {
- DRW_transform_to_display(effects->sss_albedo, false, false);
- }
- break;
- case 11:
- if (effects->velocity_tx) {
- DRW_transform_to_display(effects->velocity_tx, false, false);
- }
- break;
- default:
- break;
- }
+ EEVEE_renderpasses_draw_debug(vedata);
EEVEE_volumes_free_smoke_textures();
diff --git a/source/blender/draw/engines/eevee/eevee_private.h b/source/blender/draw/engines/eevee/eevee_private.h
index 97bde2e5f2e..616e088fde4 100644
--- a/source/blender/draw/engines/eevee/eevee_private.h
+++ b/source/blender/draw/engines/eevee/eevee_private.h
@@ -1057,6 +1057,7 @@ void EEVEE_renderpasses_postprocess(EEVEE_ViewLayerData *sldata,
EEVEE_Data *vedata,
eScenePassType renderpass_type);
void EEVEE_renderpasses_draw(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata);
+void EEVEE_renderpasses_draw_debug(EEVEE_Data *vedata);
void EEVEE_renderpasses_free(void);
bool EEVEE_renderpasses_only_first_sample_pass_active(EEVEE_Data *vedata);
diff --git a/source/blender/draw/engines/eevee/eevee_renderpasses.c b/source/blender/draw/engines/eevee/eevee_renderpasses.c
index 927ff70a52b..8dd4fd84020 100644
--- a/source/blender/draw/engines/eevee/eevee_renderpasses.c
+++ b/source/blender/draw/engines/eevee/eevee_renderpasses.c
@@ -23,6 +23,8 @@
#include "DRW_engine.h"
#include "DRW_render.h"
+#include "BKE_global.h" /* for G.debug_value */
+
#include "BLI_string_utils.h"
#include "DEG_depsgraph_query.h"
@@ -276,3 +278,54 @@ void EEVEE_renderpasses_free(void)
{
DRW_SHADER_FREE_SAFE(e_data.postprocess_sh);
}
+
+void EEVEE_renderpasses_draw_debug(EEVEE_Data *vedata)
+{
+ EEVEE_TextureList *txl = vedata->txl;
+ EEVEE_StorageList *stl = vedata->stl;
+ EEVEE_EffectsInfo *effects = stl->effects;
+
+ GPUTexture *tx = NULL;
+ /* Debug : Output buffer to view. */
+ switch (G.debug_value) {
+ case 1:
+ tx = txl->maxzbuffer;
+ break;
+ case 2:
+ tx = effects->ssr_pdf_output;
+ break;
+ case 3:
+ tx = effects->ssr_normal_input;
+ break;
+ case 4:
+ tx = effects->ssr_specrough_input;
+ break;
+ case 5:
+ tx = txl->color_double_buffer;
+ break;
+ case 6:
+ tx = effects->gtao_horizons;
+ break;
+ case 7:
+ tx = effects->gtao_horizons;
+ break;
+ case 8:
+ tx = effects->sss_irradiance;
+ break;
+ case 9:
+ tx = effects->sss_radius;
+ break;
+ case 10:
+ tx = effects->sss_albedo;
+ break;
+ case 11:
+ tx = effects->velocity_tx;
+ break;
+ default:
+ break;
+ }
+
+ if (tx) {
+ DRW_transform_to_display(tx, false, false);
+ }
+}
\ No newline at end of file
More information about the Bf-blender-cvs
mailing list