diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-06-12 01:12:03 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-06-12 01:12:03 +0300 |
commit | 596eadf0e181ddf3ab7472b5e1607a15546a9586 (patch) | |
tree | 9573d9dcecb226b3049edc33acb0010e15ddf785 /source | |
parent | b3cc602adcde882926f1f9b59c66a4aa44bce1d0 (diff) |
Cycles: Add debug pass which shows number of instance pushes during camera ray intersection
TODO: We might want to refactor debug passes into PASS_DEBUG and some
debug_type (similar to Blender's side passes) to avoid issue of running
out of bits.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/makesrna/intern/rna_render.c | 1 | ||||
-rw-r--r-- | source/blender/render/extern/include/RE_pipeline.h | 3 | ||||
-rw-r--r-- | source/blender/render/intern/source/render_result.c | 2 |
3 files changed, 5 insertions, 1 deletions
diff --git a/source/blender/makesrna/intern/rna_render.c b/source/blender/makesrna/intern/rna_render.c index a759779d6a3..61eb2c69bfe 100644 --- a/source/blender/makesrna/intern/rna_render.c +++ b/source/blender/makesrna/intern/rna_render.c @@ -79,6 +79,7 @@ EnumPropertyItem render_pass_type_items[] = { EnumPropertyItem render_pass_debug_type_items[] = { {RENDER_PASS_DEBUG_BVH_TRAVERSAL_STEPS, "BVH_TRAVERSAL_STEPS", 0, "BVH Traversal Steps", ""}, + {RENDER_PASS_DEBUG_BVH_TRAVERSED_INSTANCES, "BVH_TRAVERSED_INSTANCES", 0, "BVH Traversed Instances", ""}, {RENDER_PASS_DEBUG_RAY_BOUNCES, "RAY_BOUNCES", 0, "Ray Steps", ""}, {0, NULL, 0, NULL, NULL} }; diff --git a/source/blender/render/extern/include/RE_pipeline.h b/source/blender/render/extern/include/RE_pipeline.h index 98abae26488..4b6004cea3d 100644 --- a/source/blender/render/extern/include/RE_pipeline.h +++ b/source/blender/render/extern/include/RE_pipeline.h @@ -99,7 +99,8 @@ typedef struct RenderPass { enum { RENDER_PASS_DEBUG_BVH_TRAVERSAL_STEPS = 0, - RENDER_PASS_DEBUG_RAY_BOUNCES = 1, + RENDER_PASS_DEBUG_BVH_TRAVERSED_INSTANCES = 1, + RENDER_PASS_DEBUG_RAY_BOUNCES = 2, }; /* a renderlayer is a full image, but with all passes and samples */ diff --git a/source/blender/render/intern/source/render_result.c b/source/blender/render/intern/source/render_result.c index 7f54bebd673..05a46927b63 100644 --- a/source/blender/render/intern/source/render_result.c +++ b/source/blender/render/intern/source/render_result.c @@ -531,6 +531,8 @@ static const char *debug_pass_type_name_get(int debug_type) switch (debug_type) { case RENDER_PASS_DEBUG_BVH_TRAVERSAL_STEPS: return "BVH Traversal Steps"; + case RENDER_PASS_DEBUG_BVH_TRAVERSED_INSTANCES: + return "BVH Traversed Instances"; case RENDER_PASS_DEBUG_RAY_BOUNCES: return "Ray Bounces"; } |