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@pandora.be>2011-11-04 19:46:15 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2011-11-04 19:46:15 +0400
commita620ec61ec173b7d9b753c9be443fdbdb1644c71 (patch)
tree7957535a1fc54798752d7c1b556fdc225344e99e /intern/cycles
parent9a4e1e0f0aec88c79fe4113019b1d7d1c79a7511 (diff)
Cycles: always use static bvh for non-viewport render.
Diffstat (limited to 'intern/cycles')
-rw-r--r--intern/cycles/blender/addon/properties.py2
-rw-r--r--intern/cycles/blender/blender_session.cpp4
-rw-r--r--intern/cycles/blender/blender_sync.cpp8
-rw-r--r--intern/cycles/blender/blender_sync.h2
4 files changed, 10 insertions, 6 deletions
diff --git a/intern/cycles/blender/addon/properties.py b/intern/cycles/blender/addon/properties.py
index 0d30307fc73..a58e4dfd154 100644
--- a/intern/cycles/blender/addon/properties.py
+++ b/intern/cycles/blender/addon/properties.py
@@ -92,7 +92,7 @@ class CyclesRenderSettings(bpy.types.PropertyGroup):
cls.debug_text_timeout = FloatProperty(name="Text timeout", description="",
default=1.0, min=0.01, max=10.0)
- cls.debug_bvh_type = EnumProperty(name="BVH Type", description="Choose between faster updates, or faster render",
+ cls.debug_bvh_type = EnumProperty(name="Viewport BVH Type", description="Choose between faster updates, or faster render",
items=enums.bvh_types, default="DYNAMIC_BVH")
cls.debug_use_spatial_splits = BoolProperty(name="Use Spatial Splits", description="Use BVH spatial splits: longer builder time, faster render",
default=False)
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp
index 4fa87815601..4433b1e24f9 100644
--- a/intern/cycles/blender/blender_session.cpp
+++ b/intern/cycles/blender/blender_session.cpp
@@ -73,7 +73,7 @@ BlenderSession::~BlenderSession()
void BlenderSession::create_session()
{
- SceneParams scene_params = BlenderSync::get_scene_params(b_scene);
+ SceneParams scene_params = BlenderSync::get_scene_params(b_scene, background);
SessionParams session_params = BlenderSync::get_session_params(b_scene, background);
/* reset status/progress */
@@ -152,7 +152,7 @@ void BlenderSession::write_render_result()
void BlenderSession::synchronize()
{
/* on session/scene parameter changes, we recreate session entirely */
- SceneParams scene_params = BlenderSync::get_scene_params(b_scene);
+ SceneParams scene_params = BlenderSync::get_scene_params(b_scene, background);
SessionParams session_params = BlenderSync::get_session_params(b_scene, background);
if(session->params.modified(session_params) ||
diff --git a/intern/cycles/blender/blender_sync.cpp b/intern/cycles/blender/blender_sync.cpp
index d44fc3f29ca..36cf29de128 100644
--- a/intern/cycles/blender/blender_sync.cpp
+++ b/intern/cycles/blender/blender_sync.cpp
@@ -210,7 +210,7 @@ void BlenderSync::sync_render_layer(BL::SpaceView3D b_v3d)
/* Scene Parameters */
-SceneParams BlenderSync::get_scene_params(BL::Scene b_scene)
+SceneParams BlenderSync::get_scene_params(BL::Scene b_scene, bool background)
{
SceneParams params;
PointerRNA cscene = RNA_pointer_get(&b_scene.ptr, "cycles");
@@ -221,7 +221,11 @@ SceneParams BlenderSync::get_scene_params(BL::Scene b_scene)
else if(shadingsystem == 1)
params.shadingsystem = SceneParams::OSL;
- params.bvh_type = (SceneParams::BVHType)RNA_enum_get(&cscene, "debug_bvh_type");
+ if(background)
+ params.bvh_type = SceneParams::BVH_STATIC;
+ else
+ params.bvh_type = (SceneParams::BVHType)RNA_enum_get(&cscene, "debug_bvh_type");
+
params.use_bvh_spatial_split = RNA_boolean_get(&cscene, "debug_use_spatial_splits");
return params;
diff --git a/intern/cycles/blender/blender_sync.h b/intern/cycles/blender/blender_sync.h
index 48e755b3dcd..2e7b8ed253d 100644
--- a/intern/cycles/blender/blender_sync.h
+++ b/intern/cycles/blender/blender_sync.h
@@ -59,7 +59,7 @@ public:
void sync_view(BL::SpaceView3D b_v3d, BL::RegionView3D b_rv3d, int width, int height);
/* get parameters */
- static SceneParams get_scene_params(BL::Scene b_scene);
+ static SceneParams get_scene_params(BL::Scene b_scene, bool background);
static SessionParams get_session_params(BL::Scene b_scene, bool background);
static bool get_session_pause(BL::Scene b_scene, bool background);