diff options
-rw-r--r-- | intern/cycles/bvh/params.h | 1 | ||||
-rw-r--r-- | source/blender/gpu/intern/gpu_texture_private.hh | 18 | ||||
-rw-r--r-- | source/blender/gpu/opengl/gl_debug.cc | 2 | ||||
-rw-r--r-- | source/creator/creator_args.c | 21 |
4 files changed, 32 insertions, 10 deletions
diff --git a/intern/cycles/bvh/params.h b/intern/cycles/bvh/params.h index 9804c7994ef..61fa5484ce0 100644 --- a/intern/cycles/bvh/params.h +++ b/intern/cycles/bvh/params.h @@ -142,6 +142,7 @@ class BVHParams { top_level = false; bvh_layout = BVH_LAYOUT_BVH2; + use_compact_structure = true; use_unaligned_nodes = false; num_motion_curve_steps = 0; diff --git a/source/blender/gpu/intern/gpu_texture_private.hh b/source/blender/gpu/intern/gpu_texture_private.hh index 73b59b9f06f..3195e98da5e 100644 --- a/source/blender/gpu/intern/gpu_texture_private.hh +++ b/source/blender/gpu/intern/gpu_texture_private.hh @@ -451,7 +451,6 @@ inline bool validate_data_format(eGPUTextureFormat tex_format, eGPUDataFormat da } } -/* Definitely not complete, edit according to the gl specification. */ inline eGPUDataFormat to_data_format(eGPUTextureFormat tex_format) { switch (tex_format) { @@ -462,16 +461,27 @@ inline eGPUDataFormat to_data_format(eGPUTextureFormat tex_format) case GPU_DEPTH24_STENCIL8: case GPU_DEPTH32F_STENCIL8: return GPU_DATA_UINT_24_8; - case GPU_R8UI: case GPU_R16UI: - case GPU_RG16UI: case GPU_R32UI: + case GPU_RG16UI: + case GPU_RG32UI: + case GPU_RGBA16UI: + case GPU_RGBA32UI: return GPU_DATA_UINT; - case GPU_RG16I: case GPU_R16I: + case GPU_R32I: + case GPU_R8I: + case GPU_RG16I: + case GPU_RG32I: + case GPU_RG8I: + case GPU_RGBA16I: + case GPU_RGBA32I: + case GPU_RGBA8I: return GPU_DATA_INT; case GPU_R8: + case GPU_R8UI: case GPU_RG8: + case GPU_RG8UI: case GPU_RGBA8: case GPU_RGBA8UI: case GPU_SRGB8_A8: diff --git a/source/blender/gpu/opengl/gl_debug.cc b/source/blender/gpu/opengl/gl_debug.cc index 0a06d9cdb7c..4b78f20824b 100644 --- a/source/blender/gpu/opengl/gl_debug.cc +++ b/source/blender/gpu/opengl/gl_debug.cc @@ -339,7 +339,7 @@ void object_label(GLenum type, GLuint object, const char *name) char label[64]; SNPRINTF(label, "%s%s%s", to_str_prefix(type), name, to_str_suffix(type)); /* Small convenience for caller. */ - if (ELEM(type, GL_FRAGMENT_SHADER, GL_GEOMETRY_SHADER, GL_VERTEX_SHADER)) { + if (ELEM(type, GL_FRAGMENT_SHADER, GL_GEOMETRY_SHADER, GL_VERTEX_SHADER, GL_COMPUTE_SHADER)) { type = GL_SHADER; } if (ELEM(type, GL_UNIFORM_BUFFER)) { diff --git a/source/creator/creator_args.c b/source/creator/creator_args.c index d3cec093980..11bea595690 100644 --- a/source/creator/creator_args.c +++ b/source/creator/creator_args.c @@ -970,9 +970,6 @@ static const char arg_handle_debug_mode_generic_set_doc_xr_time[] = static const char arg_handle_debug_mode_generic_set_doc_jobs[] = "\n\t" "Enable time profiling for background jobs."; -static const char arg_handle_debug_mode_generic_set_doc_gpu[] = - "\n\t" - "Enable GPU debug context and information for OpenGL 4.3+."; static const char arg_handle_debug_mode_generic_set_doc_depsgraph[] = "\n\t" "Enable all debug messages from dependency graph."; @@ -1097,6 +1094,20 @@ static int arg_handle_debug_value_set(int argc, const char **argv, void *UNUSED( return 0; } +static const char arg_handle_debug_gpu_set_doc[] = + "\n" + "\tEnable GPU debug context and information for OpenGL 4.3+."; +static int arg_handle_debug_gpu_set(int UNUSED(argc), + const char **UNUSED(argv), + void *UNUSED(data)) +{ + /* Also enable logging because that how gl errors are reported. */ + const char *gpu_filter = "gpu.*"; + CLG_type_filter_include(gpu_filter, strlen(gpu_filter)); + G.debug |= G_DEBUG_GPU; + return 0; +} + static const char arg_handle_debug_fpe_set_doc[] = "\n\t" "Enable floating-point exceptions."; @@ -2155,8 +2166,8 @@ void main_args_setup(bContext *C, bArgs *ba) "--debug-jobs", CB_EX(arg_handle_debug_mode_generic_set, jobs), (void *)G_DEBUG_JOBS); - BLI_args_add( - ba, NULL, "--debug-gpu", CB_EX(arg_handle_debug_mode_generic_set, gpu), (void *)G_DEBUG_GPU); + BLI_args_add(ba, NULL, "--debug-gpu", CB(arg_handle_debug_gpu_set), NULL); + BLI_args_add(ba, NULL, "--debug-depsgraph", |