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

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2011-01-10 15:31:04 +0300
committerCampbell Barton <ideasman42@gmail.com>2011-01-10 15:31:04 +0300
commit65f69ef65391ab31d7c3582de4dca4b0835a3a17 (patch)
tree8b0ab63bc8ea3c83dd4bc608569f29b170bc497f /render_povray
parentcebbb4ee9bdb8cb992e97ff6fc0fd5e1efed9d11 (diff)
rotate entire scene -90d X, so povray's up axis matches blenders.
Diffstat (limited to 'render_povray')
-rw-r--r--render_povray/render.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/render_povray/render.py b/render_povray/render.py
index 4957b126..bcd95f6d 100644
--- a/render_povray/render.py
+++ b/render_povray/render.py
@@ -153,6 +153,7 @@ def safety(name, Level):
##############################EndSF###########################
def write_pov(filename, scene=None, info_callback=None):
+ import mathutils
file = open(filename, 'w')
# Only for testing
@@ -161,6 +162,7 @@ def write_pov(filename, scene=None, info_callback=None):
render = scene.render
world = scene.world
+ global_matrix = mathutils.Matrix.Rotation(-pi / 2.0, 4, 'X')
def uniqueName(name, nameSeq):
@@ -400,7 +402,7 @@ def write_pov(filename, scene=None, info_callback=None):
# DH disabled for now, this isn't the correct context
active_object = None #bpy.context.active_object # does not always work MR
- matrix = camera.matrix_world
+ matrix = global_matrix * camera.matrix_world
focal_point = camera.data.dof_distance
# compute resolution
@@ -437,7 +439,7 @@ def write_pov(filename, scene=None, info_callback=None):
for ob in lamps:
lamp = ob.data
- matrix = ob.matrix_world
+ matrix = global_matrix * ob.matrix_world
color = tuple([c * lamp.energy *2 for c in lamp.color]) # Colour is modified by energy #muiltiplie by 2 for a better match --Maurice
@@ -594,7 +596,7 @@ def write_pov(filename, scene=None, info_callback=None):
writeObjectMaterial(material)
- writeMatrix(ob.matrix_world)
+ writeMatrix(global_matrix * ob.matrix_world)
file.write('}\n')
@@ -632,7 +634,7 @@ def write_pov(filename, scene=None, info_callback=None):
# continue
# me = ob.data
- matrix = ob.matrix_world
+ matrix = global_matrix * ob.matrix_world
try:
uv_layer = me.uv_textures.active.data
except AttributeError:
@@ -1079,7 +1081,7 @@ def write_pov(filename, scene=None, info_callback=None):
def exportWorld(world):
render = scene.render
camera = scene.camera
- matrix = camera.matrix_world
+ matrix = global_matrix * camera.matrix_world
if not world:
return
#############Maurice####################################