Cycles: add Vector Displacement node and extend Displacement node.
authorBrecht Van Lommel <brechtvanlommel@gmail.com>
Sat, 20 Jan 2018 23:40:42 +0000 (00:40 +0100)
committerBrecht Van Lommel <brechtvanlommel@gmail.com>
Sat, 3 Feb 2018 11:20:26 +0000 (12:20 +0100)
commitf9ea097a872290d20cd94504adb3172165cb770d
tree1560b65cd6b5077e8690b26bb4b2f2ff251ff358
parent37beac8eb823bd81b411426bfc8718639577b179
Cycles: add Vector Displacement node and extend Displacement node.

This adds midlevel and object/world space for displacement, and a
vector displacement node with tangent/object/world space, midlevel
and scale.

Note that tangent space vector displacement still is not exactly
compatible with maps created by other software, this will require
changes to the tangent computation.

Differential Revision: https://developer.blender.org/D1734
24 files changed:
intern/cycles/blender/addon/version_update.py
intern/cycles/blender/blender_mesh.cpp
intern/cycles/blender/blender_shader.cpp
intern/cycles/kernel/shaders/CMakeLists.txt
intern/cycles/kernel/shaders/node_displacement.osl
intern/cycles/kernel/shaders/node_vector_displacement.osl [new file with mode: 0644]
intern/cycles/kernel/svm/svm.h
intern/cycles/kernel/svm/svm_displace.h
intern/cycles/kernel/svm/svm_types.h
intern/cycles/render/nodes.cpp
intern/cycles/render/nodes.h
release/scripts/startup/nodeitems_builtins.py
source/blender/blenkernel/BKE_node.h
source/blender/blenkernel/intern/node.c
source/blender/editors/space_node/drawnode.c
source/blender/gpu/shaders/gpu_shader_material.glsl
source/blender/makesdna/DNA_node_types.h
source/blender/makesrna/intern/rna_nodetree.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_displacement.c
source/blender/nodes/shader/nodes/node_shader_normal_map.c
source/blender/nodes/shader/nodes/node_shader_vector_displacement.c [new file with mode: 0644]