码迷,mamicode.com
首页 > 编程语言 > 详细

Unity场景、模型等资源转UE4

时间:2020-01-19 00:39:38      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:mic   scale   16px   img   location   ash   direction   unity   ref   

技术图片技术图片  技术图片技术图片

 

共同点:

 

在世界空间和模型空间内,UE4、Unity均为左手系

 

不同点:

 

轴向

模型空间内,UE4、Unity轴向的对应关系如下:

轴向 UE4 Unity
向前 +x +z
向右 +y +x
向上 +z +y

 

旋转

欧拉角Euler Angles)使用三个角度值来描述物体在三维空间的任意朝向

它的基本思想是让物体开始于“标准”方位(物体坐标轴和惯性坐标轴对齐),每次让其绕着物体坐标系某个轴进行旋转,通过三次旋转就可以达到最终朝向

如果从惯性坐标系到物体坐标系,欧拉角顺序为:m-n-p;那么,从物体坐标系到惯性坐标系,旋转的顺序就是相反的,为p-n-m

 

合法的欧拉角组中,唯一的限制是,任何两个连续的旋转,必须绕着不同的转动轴旋转,因此,一共有12种顺规。

欧拉角分为两大类:

别种欧拉角组(Proper Euler angles,仅绕两个不同的轴进行旋转): z-x-z、x-y-x,、y-z-y、z-y-z、x-z-x、y-x-y

泰特-布萊恩角(Tait–Bryan angles,三次都绕不同的轴进行旋转) :x-y-z、y-z-x、z-x-y、x-z-y、z-y-x、y-x-z

 

游戏中使用的是泰特-布萊恩角(Tait–Bryan angles)

泰特-布萊恩角(Tait–Bryan angles)又称Cardan angles; nautical angles; heading, elevation, and bank; or yaw, pitch, and roll

Yaw(shaking your head to say "no") ,又称heading,方位角

Pitch (think nodding to say "yes"),又称elevation, 俯仰角

Roll (tilting your head sideways while looking in a specific direction) ,又称bank,横滚角

 

UE4欧拉角顺序为:Yaw-Pitch-Roll

欧拉角 旋转轴方向 存储分量
横滚角(Roll) -x(向后) x
俯仰角(Pitch) -y(向左) y
方位角(Yaw) +z(向上) z

 

Unity欧拉角顺序为:Yaw-Pitch-Roll

欧拉角 旋转轴方向 存储分量
横滚角(Roll) +z(向前) z
俯仰角(Pitch) +x(向右) x
方位角(Yaw) +y(向上) y

 

值得注意地是,虽然UE4和Unity的欧拉角顺序相同,但两者在Pitch和Roll分量的旋转方向是相反的

 

若要将Unity的场景转换到UE4中,需要进行如下操作:

(1) 计算场景中GameObject在世界坐标系中Location、Rotation和Scale,然后按照如下对应关系写入到UE4中

string.format("RelativeLocation=(X={0:F6},Y={1:F6},Z={2:F6})", UnityWorldPosition.Z * 100, UnityWorldPosition.X * 100, UnityWorldPosition.Y * 100);
string.format("RelativeRotation=(Roll={2:F6},Pitch={0:F6},Yaw={1:F6})", -UnityWorldRotation.Z, -UnityWorldRotation.X, UnityWorldRotation.Y);
string.format("RelativeScale3D=(X={0:F6},Y={1:F6},Z={2:F6})", UnityWorldScale.Z, UnityWorldScale.X, UnityWorldScale.Y);

 注:Location要乘以100,原因是untiy的单位是m,而UE4的单位是cm

(2)mesh模型导入到UE4中时,需要将Pitch俯仰角设置成 -90,另外Location也要乘以100

技术图片

 

Unity场景、模型等资源转UE4

标签:mic   scale   16px   img   location   ash   direction   unity   ref   

原文地址:https://www.cnblogs.com/kekec/p/12209526.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!