Render API: shader script node for custom shaders.
authorBrecht Van Lommel <brechtvanlommel@pandora.be>
Sat, 3 Nov 2012 14:32:26 +0000 (14:32 +0000)
committerBrecht Van Lommel <brechtvanlommel@pandora.be>
Sat, 3 Nov 2012 14:32:26 +0000 (14:32 +0000)
commite02b23b81ab05579c0ee11ee3a1acb283643e528
tree59b14c01bcb4c274d57c89a42e5a5d80c41ff06d
parent615fe0295fe13c229d7376b02a50ac110b636c47
Render API: shader script node for custom shaders.

* Shader script node added, which stores either a link to a text datablock or
  file on disk, and has functions to add and remove sockets.
* Callback RenderEngine.update_script_node(self, node) added for render engines
  to compile the shader and update the node with new sockets.

Thanks to Thomas, Lukas and Dalai for the implementation.
22 files changed:
release/scripts/startup/bl_ui/space_text.py
source/blender/blenkernel/BKE_node.h
source/blender/blenkernel/intern/node.c
source/blender/blenkernel/intern/text.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/writefile.c
source/blender/editors/space_node/drawnode.c
source/blender/editors/space_node/node_edit.c
source/blender/editors/space_node/node_intern.h
source/blender/editors/space_node/node_ops.c
source/blender/editors/space_node/node_templates.c
source/blender/makesdna/DNA_node_types.h
source/blender/makesrna/RNA_access.h
source/blender/makesrna/intern/rna_nodetree.c
source/blender/makesrna/intern/rna_nodetree_types.h
source/blender/makesrna/intern/rna_render.c
source/blender/nodes/CMakeLists.txt
source/blender/nodes/NOD_shader.h
source/blender/nodes/shader/node_shader_tree.c
source/blender/nodes/shader/nodes/node_shader_script.c [new file with mode: 0644]
source/blender/render/extern/include/RE_engine.h
source/blender/render/intern/source/external_engine.c