Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2022-02-06 00:18:51 +0300
committerClément Foucault <foucault.clem@gmail.com>2022-02-06 00:18:51 +0300
commit2ee81bf285a0c399ad6c8cb54ca29ba9690877c6 (patch)
tree607df5b136ad8568857c7548df6a056819bb19c6
parentcbd23a7304568a95bf9eb814a16b8088585a9f8a (diff)
parentf2087dfc695334ff73d956aaf87d987b77b2e765 (diff)
Merge branch 'blender-v3.1-release'
-rw-r--r--intern/cycles/bvh/params.h1
-rw-r--r--source/blender/gpu/intern/gpu_texture_private.hh18
-rw-r--r--source/blender/gpu/opengl/gl_debug.cc2
-rw-r--r--source/creator/creator_args.c21
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",