blender/intern
Patrick Mours 4635dd6aed Fix T104157: Deleting an active OSL node causes issues
Removing all OSL script nodes from the shader graph would cause that
graph to no longer report it using `KERNEL_FEATURE_SHADER_RAYTRACE`
via `ShaderManager::get_graph_kernel_features`, but the shader object
itself still would have the `has_surface_raytrace` field set.
This caused kernels to be reloaded without shader raytracing support, but
later the `DEVICE_KERNEL_INTEGRATOR_SHADE_SURFACE_RAYTRACE`
kernel would still be invoked since the shader continued to report it
requiring that through the `SD_HAS_RAYTRACE` flag set because of
`has_surface_raytrace`.
Fix that by ensuring `has_surface_raytrace` is reset on every shader update,
so that when all OSL script nodes are deleted it is set to false, and only
stays true when there are still OSL script nodes (or other nodes using it).

Maniphest Tasks: T104157

Differential Revision: https://developer.blender.org/D17140
2023-01-27 16:14:25 +01:00
..
atomic Cleanup: remove workarounds and version checks for unsupported compilers 2022-09-27 07:05:13 +10:00
audaspace CMake: fix AUDASPACE disabling WITH_PYTHON for Blender 2022-05-20 11:18:49 +10:00
clog File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
cycles Fix T104157: Deleting an active OSL node causes issues 2023-01-27 16:14:25 +01:00
dualcon Cleanup: Compilation warnings 2022-03-18 12:07:08 +01:00
eigen File headers: manually convert files to use SPDX headers 2022-02-11 15:15:49 +11:00
ffmpeg Build: library updates for Blender 3.5 2022-12-07 15:28:17 +01:00
ghost Cleanup: clang-tidy, replace defines with enum, redundant parenthesis 2023-01-25 11:53:06 +11:00
guardedalloc CMake: quiet references to undeclared variable warnings 2023-01-19 17:10:42 +11:00
iksolver Cleanup: spelling in comments, capitalize tags 2022-05-13 09:29:25 +10:00
itasc Cleanup: remove argument to doxygen \file 2022-03-25 12:10:30 +11:00
libc_compat Fix compilation on Linux, glibc 2.34, and CentOS libraries 2022-09-13 10:38:42 +02:00
libmv Cleanup: replace C-style casts with functional casts for numeric types 2022-09-25 22:31:31 +10:00
locale Fix building with boost >= 1.81 2023-01-04 15:23:26 +01:00
mantaflow Fix T102257: Crash when making an Object as Effector set to Guide and trying to scrub the timeline 2022-11-09 12:13:51 -03:00
memutil File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
mikktspace Cleanup: spelling in comments 2022-10-10 11:22:41 +11:00
opencolorio GPU: Explicit Texture Usage Flags for enabling GPU Backend optimizations. 2022-12-08 23:31:05 +01:00
opensubdiv Fix: OpenSubdiv reporting version 0.0.0 in system_info.txt 2022-11-12 13:31:55 -07:00
openvdb File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
quadriflow File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
rigidbody CMake: use BULLET_LIBRARIES for both extern_bullet and system libraries 2023-01-19 17:10:42 +11:00
sky Cleanup: replace C-style casts with functional casts for numeric types 2022-09-26 17:58:36 +10:00
utfconv Cleanup: use C++ comments for disabled code 2022-04-13 13:47:04 +10:00
wayland_dynload GHOST/Wayland: improve workaround for libdecor setting the window state 2022-11-16 12:31:29 +11:00
CMakeLists.txt GPU: replace GLEW with libepoxy 2022-08-15 16:10:29 +02:00