[Bf-blender-cvs] [f55863acd49] blender2.8: DRW: Augment Debug messages
Clément Foucault
noreply at git.blender.org
Fri Aug 3 09:49:36 CEST 2018
Commit: f55863acd4977a1ec92e1d30f06a7ae6b894660d
Author: Clément Foucault
Date: Fri Aug 3 09:49:22 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBf55863acd4977a1ec92e1d30f06a7ae6b894660d
DRW: Augment Debug messages
===================================================================
M source/blender/draw/intern/draw_manager.h
M source/blender/draw/intern/draw_manager_data.c
M source/blender/draw/intern/draw_manager_exec.c
===================================================================
diff --git a/source/blender/draw/intern/draw_manager.h b/source/blender/draw/intern/draw_manager.h
index 9b01f17649c..902ecb9ee9b 100644
--- a/source/blender/draw/intern/draw_manager.h
+++ b/source/blender/draw/intern/draw_manager.h
@@ -262,10 +262,11 @@ struct DRWShadingGroup {
#ifndef NDEBUG
char attribs_count;
#endif
-
+#if !defined(NDEBUG) || defined(USE_GPU_SELECT)
+ DRWPass *pass_parent; /* backlink to pass we're in */
+#endif
#ifdef USE_GPU_SELECT
GPUVertBuf *inst_selectid;
- DRWPass *pass_parent; /* backlink to pass we're in */
int override_selectid; /* Override for single object instances. */
#endif
};
diff --git a/source/blender/draw/intern/draw_manager_data.c b/source/blender/draw/intern/draw_manager_data.c
index 407eea16d91..6b15803723b 100644
--- a/source/blender/draw/intern/draw_manager_data.c
+++ b/source/blender/draw/intern/draw_manager_data.c
@@ -122,7 +122,7 @@ static void drw_shgroup_uniform(DRWShadingGroup *shgroup, const char *name,
if (location == -1) {
if (G.debug & G_DEBUG)
- fprintf(stderr, "Uniform '%s' not found!\n", name);
+ fprintf(stderr, "Pass : %s, Uniform '%s' not found!\n", shgroup->pass_parent->name, name);
/* Nice to enable eventually, for now eevee uses uniforms that might not exist. */
// BLI_assert(0);
return;
@@ -730,7 +730,7 @@ static DRWShadingGroup *drw_shgroup_create_ex(struct GPUShader *shader, DRWPass
shgroup->instance_vbo = NULL;
#endif
-#ifdef USE_GPU_SELECT
+#if !defined(NDEBUG) || defined(USE_GPU_SELECT)
shgroup->pass_parent = pass;
#endif
@@ -1026,7 +1026,7 @@ DRWPass *DRW_pass_create(const char *name, DRWState state)
{
DRWPass *pass = BLI_mempool_alloc(DST.vmempool->passes);
pass->state = state;
- if (G.debug_value > 20) {
+ if ((G.debug_value > 20) || (G.debug & G_DEBUG)) {
BLI_strncpy(pass->name, name, MAX_PASS_NAME);
}
diff --git a/source/blender/draw/intern/draw_manager_exec.c b/source/blender/draw/intern/draw_manager_exec.c
index ed01080be87..004e0137c66 100644
--- a/source/blender/draw/intern/draw_manager_exec.c
+++ b/source/blender/draw/intern/draw_manager_exec.c
@@ -950,10 +950,11 @@ static bool ubo_bindings_validate(DRWShadingGroup *shgroup)
char blockname[64];
glGetActiveUniformBlockName(program, i, sizeof(blockname), NULL, blockname);
- printf("Trying to draw with missing UBO binding.\n");
- printf("Shader : %s, Block : %s\n", shgroup->shader->name, blockname);
-
- valid = false;
+ if (valid) {
+ printf("Trying to draw with missing UBO binding.\n");
+ valid = false;
+ }
+ printf("Pass : %s, Shader : %s, Block : %s\n", shgroup->pass_parent->name, shgroup->shader->name, blockname);
}
}
# endif
More information about the Bf-blender-cvs
mailing list