Unity3D导入MAX文件的一些问题。不断更新。。。

2024-05-10 12:32

本文主要是介绍Unity3D导入MAX文件的一些问题。不断更新。。。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原文 http://blog.sina.com.cn/s/blog_6ae2a3f1010113nk.html


Unity3D版本:3.5.4   新的版本若是有改变就谢天血地了。呵呵。


1、轴向偏转
MAX模型导入Unity3D后,X轴会自动偏转-90度。是因为 Unity3D采用的是左手坐标系,而3DMax采用的是右手坐标系。无奈啊,这是很多游戏引擎跟Max结合后都会产生的问题。兼容性问题!!傻X啊MAX。这世界上绝大多数三维软件都TMD的是左手,你非要右手。。主流啊主流。。。
也就是说MAX进入 Unity3D后,Z轴就会向上,而空间坐标是Y轴向上。别认为是什么小问题。。如果用程序控制物体指向时,麻烦就大了。妈逼。。
解决方案:把模型导3DS文件,再进 Unity3D就不会有问题。而不是官方建议的FBX。FBX跟MAX没差。MAX有什么问题FBX同样有那问题。( FBX里的导出设置里的Z up或是Y up都没有意义

2、单位问题(缩放因子问题)
Unity3D物理系统的单位是 米(M) 。也就是说Position X为1的话就是X方向移动1米。
情况A,MAX系统单位为米时,建一个长宽高各为5米的Box丢进 Unity3D里变成了5厘米。
情况B, MAX系统单位为厘米时, 建一个长宽高各为5厘米 的Box丢进 Unity3D里就是5厘米。
情况C, MAX系统单位为厘米时, 建一个长宽高各为5米的 Box丢进 Unity3D里就是5米。
可以看出MAX单位为厘米时, Unity3D识别正确。。那为什么米就不对呢,难道做建筑用厘米去做?
经过大量的实验我发现了一个很操蛋的问题。
MAX的系统单位设置对于 Unity3D而言一点意义都没有!! Unity3D根本就不理会MAX的单位,官方文档里称MAX文件可以使用文件单位,这是在放屁~~~
重新理解一下情况A、B、C就可以明白了。咱们撇去MAX系统单位不看。
A中,Box为5个单位,进入 Unity3D后是0.05个单位,缩小了100倍。
B中, Box为5个单位, 进入 Unity3D后是0.05个单位,缩小了100倍。
C中, Box为500个单位, 进入 Unity3D后是5个单位, 缩小了100倍。
说白了就是丢进 Unity3D里就会缩小100倍,跟单位没什么关系。
为什么会缩小100倍呢?
因为MAX模型导入 Unity3D时,导入 设置里的缩放因子(Scale Factor)默认是0.01,缩小100倍。呃。。好吧。。。你赢了。。
既然MAX系统单位毫无意义,那就毫不犹豫的把导入设置里的使用文件单元(Use File Units)选项取消掉
然后MAX建模里也不用使用特殊的系统单位了,导入时用缩放因子控制大小就行了。
例如:
建筑建模时,MAX单位视为米。导入时,缩放因子设为1。
角色建模时,MAX单位视为厘米。导入时,缩放因子设为0.01。
OK了。。。


这篇关于Unity3D导入MAX文件的一些问题。不断更新。。。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/976445

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja

MySQL 表空却 ibd 文件过大的问题及解决方法

《MySQL表空却ibd文件过大的问题及解决方法》本文给大家介绍MySQL表空却ibd文件过大的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录一、问题背景:表空却 “吃满” 磁盘的怪事二、问题复现:一步步编程还原异常场景1. 准备测试源表与数据

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

SysMain服务可以关吗? 解决SysMain服务导致的高CPU使用率问题

《SysMain服务可以关吗?解决SysMain服务导致的高CPU使用率问题》SysMain服务是超级预读取,该服务会记录您打开应用程序的模式,并预先将它们加载到内存中以节省时间,但它可能占用大量... 在使用电脑的过程中,CPU使用率居高不下是许多用户都遇到过的问题,其中名为SysMain的服务往往是罪魁

MySQ中出现幻读问题的解决过程

《MySQ中出现幻读问题的解决过程》文章解析MySQLInnoDB通过MVCC与间隙锁机制在可重复读隔离级别下解决幻读,确保事务一致性,同时指出性能影响及乐观锁等替代方案,帮助开发者优化数据库应用... 目录一、幻读的准确定义与核心特征幻读 vs 不可重复读二、mysql隔离级别深度解析各隔离级别的实现差异