Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2016-05-07 21:30:16 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2016-05-22 18:29:25 +0300
commite7d13b8a1da046d7bb78a3c0e21bbb575ed6074e (patch)
tree5af00d1e1e72fb15212decc2448152696ea519b7 /intern/cycles/render/background.cpp
parent0062d9f58c74e6dd021a3517e0dcba41c414ac97 (diff)
Code refactor: nodify Cycles background and film.
Differential Revision: https://developer.blender.org/D2016
Diffstat (limited to 'intern/cycles/render/background.cpp')
-rw-r--r--intern/cycles/render/background.cpp33
1 files changed, 15 insertions, 18 deletions
diff --git a/intern/cycles/render/background.cpp b/intern/cycles/render/background.cpp
index 89f90bc8dad..28ca04fe615 100644
--- a/intern/cycles/render/background.cpp
+++ b/intern/cycles/render/background.cpp
@@ -28,18 +28,25 @@
CCL_NAMESPACE_BEGIN
-Background::Background()
+NODE_DEFINE(Background)
{
- ao_factor = 0.0f;
- ao_distance = FLT_MAX;
+ NodeType* type = NodeType::add("background", create);
- use_shader = true;
- use_ao = false;
+ SOCKET_INT(ao_factor, "AO Factor", 0.0f);
+ SOCKET_FLOAT(ao_distance, "AO Distance", FLT_MAX);
- visibility = PATH_RAY_ALL_VISIBILITY;
- shader = NULL;
+ SOCKET_BOOLEAN(use_shader, "Use Shader", true);
+ SOCKET_BOOLEAN(use_ao, "Use AO", false);
+ SOCKET_INT(visibility, "Visibility", PATH_RAY_ALL_VISIBILITY);
+ SOCKET_BOOLEAN(transparent, "Transparent", false);
- transparent = false;
+ return type;
+}
+
+Background::Background()
+: Node(node_type)
+{
+ shader = NULL;
need_update = true;
}
@@ -108,16 +115,6 @@ void Background::device_free(Device * /*device*/, DeviceScene * /*dscene*/)
{
}
-bool Background::modified(const Background& background)
-{
- return !(transparent == background.transparent &&
- use_shader == background.use_shader &&
- use_ao == background.use_ao &&
- ao_factor == background.ao_factor &&
- ao_distance == background.ao_distance &&
- visibility == background.visibility);
-}
-
void Background::tag_update(Scene *scene)
{
scene->integrator->tag_update(scene);