Unity学习 5.6 FBX

news/2025/9/18 12:02:40/文章来源:https://www.cnblogs.com/qiuliw/p/19098488

FBX保存了模型和纹理,没有贴图,贴图作为静态资源单独存在

FBX的使用

演示:

  • 选择*.fbx文件,直接拖到层级窗口
  • 观察节点图标
  • 选中节点,观察Inspector中的操作按钮
    • select可以focus资源路径

贴图路径

  • 有的模型需要贴图文件
  • 贴图文件路径是约定好的
    • 与fbx相同目录,或者同级Texture目录

材质替换

重映射

演示:

  • 选中*.fbx资源文件
  • 在Inspector中切到Materials属性
    • Use Embedded Materials
    • On Demand Remap:映射新的材质
  • Apply 应用设置

image

或使用外部材质

  • 选中fbx文件
  • Location: Use External Materials(使用外部材质)
  • Apply 应用,则将内嵌材质解压缩到Materials目录
  • 直接修改Materials目录下的材质文件

image

image

答疑

核心问题解答

1. “Use Embedded Materials” 和 “Use External Materials” 的根本区别是什么?

  • Use Embedded Materials (使用嵌入式材质)

    • 本质:材质数据被“锁”在FBX文件内部。Unity在运行时从FBX文件中读取这些材质信息。
    • 优点:资源管理简单,所有东西都打包在一个FBX里,便于移动和分享。
    • 缺点无法直接修改。您看到的是材质的“只读”副本。任何修改(如On Demand Remap)都只是在这个FBX实例的层级进行映射,并不会改变FBX源文件。
  • Use External Materials (使用外部材质)

    • 本质:将FBX内部“嵌入”的材质提取出来,生成独立的Unity材质文件(.mat),并保存在您项目的Materials文件夹(或其他指定位置)中。
    • 优点可以自由编辑。您可以像编辑任何普通Unity材质一样,修改它的着色器、贴图、颜色等所有属性。
    • 缺点:会生成额外的材质文件,需要单独管理。

2. 为什么可以“重映射”(On Demand Remap)?它的映射信息保存在哪里?

  • 为什么可以:因为Unity在导入FBX时,会为每个MeshRenderer组件创建一个对材质的引用(Reference)。On Demand Remap功能就是允许您重新指定这个引用,让它指向另一个不同的材质球,而不是FBX内嵌的那个。
  • 保存在哪里:这个重映射的关联信息并不会保存回FBX文件(FBX文件始终保持原样)。而是保存在您Unity项目的一个“元文件” 中。每个资源文件(如YourModel.fbx)都会有一个对应的、由Unity自动生成的YourModel.fbx.meta 文件。这个.meta文件记录了该资源在Unity项目中的导入设置和材质重映射关系

3. 这个操作会修改原始的FBX文件吗?

绝对不会。
无论是 On Demand Remap 还是 Use External Materials 后点击 Apply,Unity都不会以任何方式修改您原始的FBX源文件。所有的修改和映射关系都只保存在您Unity项目的内部(即上面提到的 .meta 文件和提取出来的材质文件)。这是一个非常重要的特性,保证了您的原始美术资源永远不会被引擎污染。

4. 解压后,是不是整个物体都使用解压后的资源?

是的,完全正确。
当您选择 Use External Materials 并点击 Apply 后,Unity会执行以下操作:

  1. 为FBX中每一个内嵌材质,在您的项目目录(通常是Materials文件夹)中创建一个对应的外部材质文件。
  2. 然后,自动将FBX模型中的所有MeshRenderer组件对材质的引用,从之前的内嵌材质,全部切换为指向新创建的外部材质文件
  3. 从此,该模型在场景中渲染时,将100%使用这些外部材质。您对外部材质做的任何修改都会立刻生效。

总结与类比

您可以这样理解:

把FBX文件想象成一个礼品盒

  • 嵌入式材质:礼品盒里自带了一个不可修改的玩具(材质)。
  • 重映射(On Demand Remap):您给这个礼品盒里的玩具贴了个标签,告诉别人“请把这里面的玩具看成是我指定的另一个玩具”。但盒子里的原玩具没动,只是贴了个标签。
  • 外部材质(Use External Materials):您直接把礼品盒里的玩具拿出来,摆在外面(提取到Materials文件夹),然后可以随意改装它。并且以后大家都只看这个摆在外面的改装后的玩具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/907097.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SEERC 2022 题面简要翻译

A. Append / 附件 你有两个字符串 \(s,t\),同时你还有一个字符串数组,这个数组中的第 \(i\) 个字符串是由 \(i\) 个 \(s\) 拼接而成,现在问最小的 \(p\) 使得 \(t\) 是这个字符串数组的第 \(p\) 个字符串。 \(1 \le…

C++篇(7)string类的模拟搭建

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

【稳定检索、线上线下参会、马理工主办】第十一届建筑、土木与水利工程国际学术会议(ICACHE 2025)

快速见刊,检索稳定! 第十一届建筑、土木与水利工程国际学术会议(ICACHE 2025) 2025 11th International Conference on Architectural, Civil and Hydraulic Engineering (ICACHE 2025) 在这里看会议官网详情 大会…

telnet安装与开启

在 CentOS 中,Telnet 是一种远程登录协议,默认情况下是关闭的。以下是开启 Telnet 服务的步骤。 # 首先检查是否已安装相关软件包 rpm -qa | grep telnet rpm -qa | grep xinetd # 以下命令安装: yum install -y te…

history路由模式下的nginx配置

路由模式 众所周知,浏览器下的单页面应用的路由模式有下面两种: hash 模式和 history 模式。hash 模式通用性好,而且不依赖服务器的配置,省心省力,但是缺点是不够优雅。相比于 hash 模式来说,history 模式则更加…

20250917NOIP#21

20250917NOIP#21 T2 题意: 给定一个 \(n\) 个点的树,点上有一个非负整数点权 \(a_i\),表示这个点需要在操作序列中正好被经过 \(a_i\) 次,一次操作为选择两个顶点 \(u,v\) ,从 \(u\) 经过简单路径走到 \(v\) ,求…

阿里云防刷神器ESA搞活动免费领取

最近使用阿里云的边缘安全加速ESA,防刷、访攻击。 所有套餐支持一键防刷、安全事件分析、频次控制等。 最近搞活动,可以不限次数领取基础版代金券,免费领取链接:http://s.tb.cn/e6.0Fu67m测速效果

报错TypeError: Unknown file extension .ts - broky

当出现这个TypeError: Unknown file extension ".ts"这个报错的时候,可以看看package.json里没有是不是有"type": "module"这个字段,有的话需要去掉

抗 IgE 单克隆抗体联合变应原免疫治疗(AIT):过敏性疾病治疗的协同新策略

过敏性疾病(如哮喘、慢性荨麻疹、过敏性鼻炎)的发病率在全球范围内持续攀升,传统治疗手段(如抗组胺药、糖皮质激素)虽能缓解症状,却难以从根本上改变机体的过敏状态。变应原免疫治疗(AIT)作为唯一能 “重塑免疫…

python虚拟环境管理工具venv教程

python虚拟环境管理工具venv教程 王云峰 ​计算机技术爱好者/CV/ML/Python​关注他收录于 点滴技术62 人赞同了该文章0. 概述 Python有各种各样的系统包和第三方开发的包,让我们的开发变得异常容易。不过也引入了一个…

【收藏必备】ChatGPT拥抱MCP:一条Prompt实现全自动化,小白也能轻松上手 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

php怎么关闭数据库连接

在PHP中,关闭数据库连接是一个很重要的步骤,它可以释放资源并防止不必要的连接浪费。下面是一些关闭数据库连接的常见方法:1. 使用mysqli_close()函数关闭连接:“`$conn = mysqli_connect($servername, $username,…

createHashRouter

createHashRouter This router is useful if you are unable to configure your web server to direct all traffic to your React Router application. Instead of using normal URLs, it will use the hash (#) por…

代码分析之污点分析 - 教程

代码分析之污点分析 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", …

设计模式 7章

软件设计7大原则 开闭原则:是原则,在设计软件时保持扩展的开放性和修改的封闭性 里式替换原则:要求在继承时不要破坏父类的实现 单一职责原则:要求类的功能要单一 接口隔离原则:要求接口的设计要精简 依赖倒置原则…

磁盘存储简介-轮子

https://blog.csdn.net/user2025/article/details/142364353

前端mjs和js文件区别,mjs和cjs区别

前端mjs和js文件区别,mjs和cjs区别.js 文件和 .mjs 文件之间的主要区别在于模块系统的使用: 1. 模块类型.js 文件:默认使用 CommonJS 模块系统(尤其在 Node.js 环境中)。 可以使用 require() 导入模块和 module.e…

洛谷 P1967 [NOIP 2013 提高组] 货车运输 题解

洛谷 P1967 [NOIP 2013 提高组] 货车运输 题解原题链接:货车运输 kruskal重构树+LCA做法,树剖不想写 很容易发现原图跑最短路可以解,但是复杂度难以承受,所以考虑如何简化该图。 发现原图边权维护的应该是(u,v)…

详细介绍:【2026计算机毕业设计】基于Springboot的婚车租赁系统

详细介绍:【2026计算机毕业设计】基于Springboot的婚车租赁系统2025-09-18 11:33 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !imp…

【每日一问】示波器探头校准技巧和校准原理是什么?

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …