[Bf-extensions-cvs] [aeb4cb0] master: Fix T41808: FBX exporter does not properly position and rotate group instances
Bastien Montagne
noreply at git.blender.org
Sat Sep 13 18:44:21 CEST 2014
Commit: aeb4cb010eb497e3c511edcad05e8d8831a1ca12
Author: Bastien Montagne
Date: Sat Sep 13 18:40:32 2014 +0200
Branches: master
https://developer.blender.org/rBAaeb4cb010eb497e3c511edcad05e8d8831a1ca12
Fix T41808: FBX exporter does not properly position and rotate group instances
Forward/Up axes to FBX system was still wrong. Not happy with finding such issue
at this stage of development. :/ Hopefully now we are OK (at least, checked
all orientations with same basice file in Unity, all were imported OK).
===================================================================
M io_scene_fbx/fbx_utils.py
M io_scene_fbx_experimental/fbx_utils.py
===================================================================
diff --git a/io_scene_fbx/fbx_utils.py b/io_scene_fbx/fbx_utils.py
index d661cea..b751025 100644
--- a/io_scene_fbx/fbx_utils.py
+++ b/io_scene_fbx/fbx_utils.py
@@ -100,31 +100,30 @@ FBX_LIGHT_DECAY_TYPES = {
RIGHT_HAND_AXES = {
# Up, Front -> FBX values (tuples of (axis, sign), Up, Front, Coord).
- # Note: Since we always stay in right-handed system, third coord sign is always positive!
- ('X', 'Y'): ((0, 1), (1, -1), (2, 1)),
- ('X', '-Y'): ((0, 1), (1, 1), (2, 1)),
- ('X', 'Z'): ((0, 1), (2, -1), (1, 1)),
- ('X', '-Z'): ((0, 1), (2, 1), (1, 1)),
- ('-X', 'Y'): ((0, -1), (1, -1), (2, 1)),
- ('-X', '-Y'): ((0, -1), (1, 1), (2, 1)),
- ('-X', 'Z'): ((0, -1), (2, -1), (1, 1)),
- ('-X', '-Z'): ((0, -1), (2, 1), (1, 1)),
- ('Y', 'X'): ((1, 1), (0, -1), (2, 1)),
- ('Y', '-X'): ((1, 1), (0, 1), (2, 1)),
- ('Y', 'Z'): ((1, 1), (2, -1), (0, 1)),
- ('Y', '-Z'): ((1, 1), (2, 1), (0, 1)),
- ('-Y', 'X'): ((1, -1), (0, -1), (2, 1)),
- ('-Y', '-X'): ((1, -1), (0, 1), (2, 1)),
- ('-Y', 'Z'): ((1, -1), (2, -1), (0, 1)),
- ('-Y', '-Z'): ((1, -1), (2, 1), (0, 1)),
- ('Z', 'X'): ((2, 1), (0, -1), (1, 1)),
- ('Z', '-X'): ((2, 1), (0, 1), (1, 1)),
- ('Z', 'Y'): ((2, 1), (1, -1), (0, 1)), # Blender system!
- ('Z', '-Y'): ((2, 1), (1, 1), (0, 1)),
- ('-Z', 'X'): ((2, -1), (0, -1), (1, 1)),
- ('-Z', '-X'): ((2, -1), (0, 1), (1, 1)),
- ('-Z', 'Y'): ((2, -1), (1, -1), (0, 1)),
- ('-Z', '-Y'): ((2, -1), (1, 1), (0, 1)),
+ ('X', 'Y'): ((0, 1), (1, 1), (2, 1)),
+ ('X', '-Y'): ((0, 1), (1, -1), (2, -1)),
+ ('X', 'Z'): ((0, 1), (2, 1), (1, -1)),
+ ('X', '-Z'): ((0, 1), (2, -1), (1, 1)),
+ ('-X', 'Y'): ((0, -1), (1, 1), (2, -1)),
+ ('-X', '-Y'): ((0, -1), (1, -1), (2, 1)),
+ ('-X', 'Z'): ((0, -1), (2, 1), (1, 1)),
+ ('-X', '-Z'): ((0, -1), (2, -1), (1, -1)),
+ ('Y', 'X'): ((1, 1), (0, 1), (2, -1)),
+ ('Y', '-X'): ((1, 1), (0, -1), (2, 1)),
+ ('Y', 'Z'): ((1, 1), (2, 1), (0, 1)),
+ ('Y', '-Z'): ((1, 1), (2, -1), (0, -1)),
+ ('-Y', 'X'): ((1, -1), (0, 1), (2, 1)),
+ ('-Y', '-X'): ((1, -1), (0, -1), (2, -1)),
+ ('-Y', 'Z'): ((1, -1), (2, 1), (0, -1)),
+ ('-Y', '-Z'): ((1, -1), (2, -1), (0, 1)),
+ ('Z', 'X'): ((2, 1), (0, 1), (1, 1)),
+ ('Z', '-X'): ((2, 1), (0, -1), (1, -1)),
+ ('Z', 'Y'): ((2, 1), (1, 1), (0, -1)),
+ ('Z', '-Y'): ((2, 1), (1, -1), (0, 1)), # Blender system!
+ ('-Z', 'X'): ((2, -1), (0, 1), (1, -1)),
+ ('-Z', '-X'): ((2, -1), (0, -1), (1, 1)),
+ ('-Z', 'Y'): ((2, -1), (1, 1), (0, 1)),
+ ('-Z', '-Y'): ((2, -1), (1, -1), (0, -1)),
}
diff --git a/io_scene_fbx_experimental/fbx_utils.py b/io_scene_fbx_experimental/fbx_utils.py
index f0eeca0..369d9ab 100644
--- a/io_scene_fbx_experimental/fbx_utils.py
+++ b/io_scene_fbx_experimental/fbx_utils.py
@@ -100,31 +100,30 @@ FBX_LIGHT_DECAY_TYPES = {
RIGHT_HAND_AXES = {
# Up, Front -> FBX values (tuples of (axis, sign), Up, Front, Coord).
- # Note: Since we always stay in right-handed system, third coord sign is always positive!
- ('X', 'Y'): ((0, 1), (1, -1), (2, 1)),
- ('X', '-Y'): ((0, 1), (1, 1), (2, 1)),
- ('X', 'Z'): ((0, 1), (2, -1), (1, 1)),
- ('X', '-Z'): ((0, 1), (2, 1), (1, 1)),
- ('-X', 'Y'): ((0, -1), (1, -1), (2, 1)),
- ('-X', '-Y'): ((0, -1), (1, 1), (2, 1)),
- ('-X', 'Z'): ((0, -1), (2, -1), (1, 1)),
- ('-X', '-Z'): ((0, -1), (2, 1), (1, 1)),
- ('Y', 'X'): ((1, 1), (0, -1), (2, 1)),
- ('Y', '-X'): ((1, 1), (0, 1), (2, 1)),
- ('Y', 'Z'): ((1, 1), (2, -1), (0, 1)),
- ('Y', '-Z'): ((1, 1), (2, 1), (0, 1)),
- ('-Y', 'X'): ((1, -1), (0, -1), (2, 1)),
- ('-Y', '-X'): ((1, -1), (0, 1), (2, 1)),
- ('-Y', 'Z'): ((1, -1), (2, -1), (0, 1)),
- ('-Y', '-Z'): ((1, -1), (2, 1), (0, 1)),
- ('Z', 'X'): ((2, 1), (0, -1), (1, 1)),
- ('Z', '-X'): ((2, 1), (0, 1), (1, 1)),
- ('Z', 'Y'): ((2, 1), (1, -1), (0, 1)), # Blender system!
- ('Z', '-Y'): ((2, 1), (1, 1), (0, 1)),
- ('-Z', 'X'): ((2, -1), (0, -1), (1, 1)),
- ('-Z', '-X'): ((2, -1), (0, 1), (1, 1)),
- ('-Z', 'Y'): ((2, -1), (1, -1), (0, 1)),
- ('-Z', '-Y'): ((2, -1), (1, 1), (0, 1)),
+ ('X', 'Y'): ((0, 1), (1, 1), (2, 1)),
+ ('X', '-Y'): ((0, 1), (1, -1), (2, -1)),
+ ('X', 'Z'): ((0, 1), (2, 1), (1, -1)),
+ ('X', '-Z'): ((0, 1), (2, -1), (1, 1)),
+ ('-X', 'Y'): ((0, -1), (1, 1), (2, -1)),
+ ('-X', '-Y'): ((0, -1), (1, -1), (2, 1)),
+ ('-X', 'Z'): ((0, -1), (2, 1), (1, 1)),
+ ('-X', '-Z'): ((0, -1), (2, -1), (1, -1)),
+ ('Y', 'X'): ((1, 1), (0, 1), (2, -1)),
+ ('Y', '-X'): ((1, 1), (0, -1), (2, 1)),
+ ('Y', 'Z'): ((1, 1), (2, 1), (0, 1)),
+ ('Y', '-Z'): ((1, 1), (2, -1), (0, -1)),
+ ('-Y', 'X'): ((1, -1), (0, 1), (2, 1)),
+ ('-Y', '-X'): ((1, -1), (0, -1), (2, -1)),
+ ('-Y', 'Z'): ((1, -1), (2, 1), (0, -1)),
+ ('-Y', '-Z'): ((1, -1), (2, -1), (0, 1)),
+ ('Z', 'X'): ((2, 1), (0, 1), (1, 1)),
+ ('Z', '-X'): ((2, 1), (0, -1), (1, -1)),
+ ('Z', 'Y'): ((2, 1), (1, 1), (0, -1)),
+ ('Z', '-Y'): ((2, 1), (1, -1), (0, 1)), # Blender system!
+ ('-Z', 'X'): ((2, -1), (0, 1), (1, -1)),
+ ('-Z', '-X'): ((2, -1), (0, -1), (1, 1)),
+ ('-Z', 'Y'): ((2, -1), (1, 1), (0, 1)),
+ ('-Z', '-Y'): ((2, -1), (1, -1), (0, -1)),
}
More information about the Bf-extensions-cvs
mailing list