7201f6d14c
Now we calculate color in range 800..12000 using an approximation a/x+bx+c for R and G and ((at + b)t + c)t + d) for B. Max absolute error for RGB for non-lut function is less than 0.0001, which is enough to get the same 8 bit/channel color as for OSL with a noticeable performance difference. However there is a slight visible difference between previous non-OSL implementation because of lookup table interpolation and offset-by-one mistake. The previous implementation gave black color outside of soft range (t > 12000), now it gives the same color as for 12000. Also blackbody node without input connected is being converted to value input at shader compile time. Reviewers: dingto, sergey Reviewed By: dingto Subscribers: nutel, brecht, juicyfruit Differential Revision: https://developer.blender.org/D1280
81 lines
946 B
CMake
81 lines
946 B
CMake
|
|
set(INC
|
|
.
|
|
../device
|
|
../kernel
|
|
../kernel/svm
|
|
../kernel/osl
|
|
../bvh
|
|
../util
|
|
../../glew-mx
|
|
)
|
|
|
|
set(INC_SYS
|
|
${GLEW_INCLUDE_DIR}
|
|
)
|
|
|
|
set(SRC
|
|
attribute.cpp
|
|
background.cpp
|
|
bake.cpp
|
|
buffers.cpp
|
|
camera.cpp
|
|
film.cpp
|
|
graph.cpp
|
|
image.cpp
|
|
integrator.cpp
|
|
light.cpp
|
|
mesh.cpp
|
|
mesh_displace.cpp
|
|
nodes.cpp
|
|
object.cpp
|
|
osl.cpp
|
|
particles.cpp
|
|
curves.cpp
|
|
scene.cpp
|
|
session.cpp
|
|
shader.cpp
|
|
sky_model.cpp
|
|
sobol.cpp
|
|
svm.cpp
|
|
tables.cpp
|
|
tile.cpp
|
|
)
|
|
|
|
set(SRC_HEADERS
|
|
attribute.h
|
|
bake.h
|
|
background.h
|
|
buffers.h
|
|
camera.h
|
|
film.h
|
|
graph.h
|
|
image.h
|
|
integrator.h
|
|
light.h
|
|
mesh.h
|
|
nodes.h
|
|
object.h
|
|
osl.h
|
|
particles.h
|
|
curves.h
|
|
scene.h
|
|
session.h
|
|
shader.h
|
|
sky_model.h
|
|
sky_model_data.h
|
|
sobol.h
|
|
svm.h
|
|
tables.h
|
|
tile.h
|
|
)
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${RTTI_DISABLE_FLAGS}")
|
|
|
|
include_directories(${INC})
|
|
include_directories(SYSTEM ${INC_SYS})
|
|
|
|
add_definitions(${GL_DEFINITIONS})
|
|
|
|
add_library(cycles_render ${SRC} ${SRC_HEADERS})
|