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
path: root/intern
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2014-08-28 16:58:21 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2014-08-28 16:59:24 +0400
commit21a7433faafed266b48601d44d6aaf80ea66450b (patch)
treefa52fef82472471c21743aa8a24663c68813eaf5 /intern
parente39a4961b5c352ee17fb06c0764831973ddbf1db (diff)
Fix T41473: Cycles volume rendering is too dark
The issue was caused by the changed defaults from the Cycles side. Because of those properties being saved as an IDProp and not being saved to the file, every change to the defaults would ruin someone's day updating the values. Added a bpy.app.handler.version_update which is run after the regular do_versions() are done and could be sued by the scripts to apply versioning code on their settings. Reviewers: campbellbarton Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D761
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/blender/addon/__init__.py6
-rw-r--r--intern/cycles/blender/addon/version_update.py35
2 files changed, 40 insertions, 1 deletions
diff --git a/intern/cycles/blender/addon/__init__.py b/intern/cycles/blender/addon/__init__.py
index 27d986900c8..d1d27df8dc3 100644
--- a/intern/cycles/blender/addon/__init__.py
+++ b/intern/cycles/blender/addon/__init__.py
@@ -31,7 +31,7 @@ bl_info = {
import bpy
from . import engine
-
+from . import version_update
class CyclesRender(bpy.types.RenderEngine):
bl_idname = 'CYCLES'
@@ -100,12 +100,16 @@ def register():
presets.register()
bpy.utils.register_module(__name__)
+ bpy.app.handlers.version_update.append(version_update.do_versions)
+
def unregister():
from . import ui
from . import properties
from . import presets
+ bpy.app.handlers.version_update.remove(version_update.do_versions)
+
ui.unregister()
properties.unregister()
presets.unregister()
diff --git a/intern/cycles/blender/addon/version_update.py b/intern/cycles/blender/addon/version_update.py
new file mode 100644
index 00000000000..b0b4e1d24dd
--- /dev/null
+++ b/intern/cycles/blender/addon/version_update.py
@@ -0,0 +1,35 @@
+#
+# Copyright 2011-2014 Blender Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License
+#
+
+# <pep8 compliant>
+
+import bpy
+
+from bpy.app.handlers import persistent
+
+
+@persistent
+def do_versions(self):
+ # We don't modify startup file because it assumes to
+ # have all the default values only.
+ if not bpy.data.is_saved:
+ return
+
+ if bpy.data.version <= (2, 71, 0):
+ for scene in bpy.data.scenes:
+ cscene = scene.cycles
+ if not cscene.is_property_set("volume_bounces"):
+ cscene.volume_bounces = 1