blender/intern/cycles/blender
Kévin Dietrich 5a964664d6 Cycles: add reference counting to Nodes
This adds a reference count to Nodes which is incremented or decremented
whenever they are added to or removed from a socket, which will help us
track used Nodes throughout the scene graph generically without having to
add an explicit count or flag on specific Node types. This is especially
useful to track Nodes defined through Procedurals out of Cycles' control.

This also modifies the order in which nodes are deleted to ensure that
upon deletion, a Node does not attempt to decrement the reference
count of another Node which was already freed or deleted.

This is not currently used, but will be in the next commit.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D10965
2021-05-03 01:20:33 +02:00
..
addon Fix error in Python UI script 2021-04-29 19:14:57 +02:00
blender_camera.cpp Cycles: add utility functions for zero float2/float3/float4/transform 2021-02-17 16:26:24 +01:00
blender_curves.cpp Cycles: add utility functions for zero float2/float3/float4/transform 2021-02-17 16:26:24 +01:00
blender_device.cpp Cycles: modernize usage of rna iterators 2021-01-25 16:25:27 +01:00
blender_device.h Cleanup: make format after SortedIncludes change 2020-03-19 09:33:58 +01:00
blender_geometry.cpp Cycles: modernize usage of rna iterators 2021-01-25 16:25:27 +01:00
blender_id_map.h Fix T82129: Cycles "Persistent Images" incorrectly retains scene data 2020-10-29 17:39:21 +01:00
blender_image.cpp Cycles: disable NanoVDB for AMD OpenCL 2021-03-30 00:00:17 +02:00
blender_image.h Cycles: disable NanoVDB for AMD OpenCL 2021-03-30 00:00:17 +02:00
blender_light.cpp Cycles: add a spread setting for area lights 2021-04-01 12:31:01 +02:00
blender_logging.cpp ClangFormat: apply to source, most of intern 2019-04-17 06:21:24 +02:00
blender_mesh.cpp Geometry Nodes: rename attribute domains 2021-03-25 12:02:50 +01:00
blender_object_cull.cpp Cycles API: encapsulate Node socket members 2020-11-04 13:03:33 +01:00
blender_object_cull.h ClangFormat: apply to source, most of intern 2019-04-17 06:21:24 +02:00
blender_object.cpp Cycles: add reference counting to Nodes 2021-05-03 01:20:33 +02:00
blender_particles.cpp Cleanup: correct spelling in comments 2021-02-05 16:23:34 +11:00
blender_python.cpp Fix T85573: Building with Python 3.10a5 fails 2021-02-13 23:09:55 +11:00
blender_session.cpp Fix T87283: crash with persistent data and motion blur 2021-04-12 20:10:30 +02:00
blender_session.h Cleanup: correct spelling in comments 2021-02-05 16:23:34 +11:00
blender_shader.cpp Nodes: Add support to mute node wires 2021-03-17 11:54:16 +00:00
blender_sync.cpp Fix Cycles broken motion blur pass after recent bugfix 2021-04-12 20:59:05 +02:00
blender_sync.h Fix T87283: crash with persistent data and motion blur 2021-04-12 20:10:30 +02:00
blender_texture.cpp Cycles: add utility functions for zero float2/float3/float4/transform 2021-02-17 16:26:24 +01:00
blender_texture.h Cleanup: make format after SortedIncludes change 2020-03-19 09:33:58 +01:00
blender_util.h Cycles: modernize usage of rna iterators 2021-01-25 16:25:27 +01:00
blender_viewport.cpp Cycles: add denoising settings to the render properties 2020-06-24 15:17:36 +02:00
blender_viewport.h Cycles: add denoising settings to the render properties 2020-06-24 15:17:36 +02:00
blender_volume.cpp Cleanup: Use const arguments for volume code 2021-04-08 12:00:26 -05:00
CCL_api.h ClangFormat: apply to source, most of intern 2019-04-17 06:21:24 +02:00
CMakeLists.txt Cleanup: use string APPEND/PREPEND 2020-11-06 12:32:54 +11:00