Cycles Volume Render: work on nodes and closures.
authorBrecht Van Lommel <brechtvanlommel@gmail.com>
Sat, 28 Dec 2013 00:54:44 +0000 (01:54 +0100)
committerBrecht Van Lommel <brechtvanlommel@gmail.com>
Sat, 28 Dec 2013 15:57:02 +0000 (16:57 +0100)
commita35db17cee5a9b47dc9624f7dfcb41f5fc185b33
treeef23032da73b9b202490307f865e2afd4e2e7e76
parenta06c9c277a8577f7ef473fffaf2258d2a3a6ab80
Cycles Volume Render: work on nodes and closures.

* Henyey-Greenstein scattering closure implementation.
* Rename transparent to absorption node and isotropic to scatter node.
* Volume density is folded into the closure weights.
* OSL support for volume closures and nodes.
* This commit has no user visible changes, there is no volume render code yet.

This is work by "storm", Stuart Broadfoot, Thomas Dinges and myself.
28 files changed:
intern/cycles/app/cycles_xml.cpp
intern/cycles/blender/blender_shader.cpp
intern/cycles/kernel/closure/volume.h
intern/cycles/kernel/kernel_shader.h
intern/cycles/kernel/kernel_types.h
intern/cycles/kernel/osl/osl_closures.cpp
intern/cycles/kernel/osl/osl_closures.h
intern/cycles/kernel/osl/osl_shader.cpp
intern/cycles/kernel/shaders/CMakeLists.txt
intern/cycles/kernel/shaders/node_absorption_volume.osl [new file with mode: 0644]
intern/cycles/kernel/shaders/node_light_path.osl
intern/cycles/kernel/shaders/node_scatter_volume.osl [new file with mode: 0644]
intern/cycles/kernel/shaders/stdosl.h
intern/cycles/kernel/svm/svm_closure.h
intern/cycles/kernel/svm/svm_light_path.h
intern/cycles/kernel/svm/svm_types.h
intern/cycles/render/nodes.cpp
intern/cycles/render/nodes.h
intern/cycles/render/osl.cpp
release/scripts/addons
release/scripts/addons_contrib
source/blender/blenkernel/BKE_node.h
source/blender/blenkernel/intern/node.c
source/blender/nodes/CMakeLists.txt
source/blender/nodes/NOD_shader.h
source/blender/nodes/NOD_static_types.h
source/blender/nodes/shader/nodes/node_shader_volume_absorption.c [moved from source/blender/nodes/shader/nodes/node_shader_volume_transparent.c with 70% similarity]
source/blender/nodes/shader/nodes/node_shader_volume_scatter.c [moved from source/blender/nodes/shader/nodes/node_shader_volume_isotropic.c with 69% similarity]