FFXIV TexTools 模型导入法线避坑实录:一次全黑救火与 7 个排查点
FFXIV TexTools 模型导入法线避坑实录一次全黑救火与 7 个排查点【免费下载链接】FFXIV_TexTools_UI项目地址: https://gitcode.com/gh_mirrors/ff/FFXIV_TexTools_UIFFXIV TexTools 是一款面向《最终幻想14》的模型 Mod 制作与安装框架它的核心工作是把第三方建模软件导出的模型转换成游戏.mdl格式并正确接入游戏光照系统。这篇实录围绕一次真实的模型全黑事故展开把法线Normal相关的排查路径、底层原理、修复动作一次讲透配 7 个可以直接照抄的排查点供新手与普通玩家按图索骥。1 凌晨三点我导入的第一件装备全黑了故事发生得很朴素从 Blender 里做完一件上衣导成 FBX在 TexTools 里选好路径点下 Import进度条走完一切顺利。进游戏一看——整件装备像被泼了墨完全没有光影反应。更麻烦的是把视角转了一圈袖口处偶尔还会闪出几道刺眼的高光像坏掉的霓虹灯。检查材质、检查 UV、重新导入三遍问题原样复现。这就是模型制作里最磨人的一类问题数据层面没报错渲染层面全崩了。如果你也遇到过黑模型、光照乱闪或高模细节全丢下面这套排查与修复流程就是为你准备的。2 先分清病情三步定位是模型黑还是光照乱动手修之前先花两分钟判断异常属于哪一类。病根不同药方完全不同。第一步看模型检查器里的数据在 TexTools 的模型查看器中打开异常模型切到线框/数据视图项目源码目录FFXIV_TexTools/Views/Models/ModelInspector.xaml对应此功能。如果模型本身的网格、UV 都在说明几何数据是好的问题大概率出在光照输入侧。第二步导出法线图看通道把该模型对应材质的法线贴图用导出纹理功能导成 PNG 或 TGA用任意图像工具打开。正常法线图应该是蓝紫色为主、带明显方向色块的图如果整张图发灰、发黑或者红绿通道一片死板就是法线数据本身坏了。第三步转视角验证在游戏或查看器里让光源固定、转动模型。全黑→数据级问题闪烁→切线空间问题细节丢失→格式或通道问题。记住你观察到的那一种接着往下对号入座。3 病根剖析法线为什么一错整个模型就废了法线映射Normal Mapping人话解释用一张贴图里的颜色数据伪造表面的凹凸方向让低模也能拥有高模的光影细节。它不改变几何只骗光照计算。问题在于这张贴图里的数据是有坐标系约定的。FFXIV 游戏引擎走的是 DirectX左手系约定法线贴图里R 通道管 X 轴左右方向G 通道管 Y 轴上下方向B 通道存高度信息而 Blender、Maya 默认的导出约定往往和 DirectX 相反——最常见的就是 Y 轴绿色通道方向反了。这不会报错但引擎把贴图数据从[0,1]展开到[-1,1]之后得到的方向向量全部偏转光照结果自然全面错乱。这一逻辑在项目源码里有直接体现FFXIV_TexTools/Resources/Shaders/psCustomMeshBlinnPhong.hlsl中的法线采样函数就是用bumpMap mad(2.0f, bumpMap, -1.0f)把贴图值从 (0,1) 展开到 (-1,1)再与切线t1、副切线t2组合成最终法线。贴图里的通道数据一旦站错队这一整套组合就全错了。另一个关键选项是Use Imported Tangents使用导入的切线数据。切线Tangent 副切线Bitangent 法线Normal构成所谓的 TBN 矩阵它决定贴图法线要往哪个方向偏。勾选使用导入的切线数据就是信任源文件里的切线信息不勾则由引擎按 UV 重新计算。**如果你的源文件切线本身就来自 OpenGL 约定这个选项就是放大错误的开关。**该选项在FFXIV_TexTools/Views/Models/ImportModelView.xaml与FFXIV_TexTools/ViewModels/ImportModelViewModel.cs中均有对应实现。4 一套能照抄的修复流程4.1 全黑模型先查数据再决定是否重烘焙全黑通常意味着法线向量无效或方向整体反转按这个顺序处理导出当前法线图逐像素检查是否存在 R、G、B 同时为 0 的像素那等于没有方向用图像工具的通道查看看绿色通道确认是否需要反转若确认是 Y 轴反转用 TexTools 的通道编辑器源码对应FFXIV_TexTools/Views/Textures/EditChannelsWindow.xaml勾选反转绿色通道后重新保存若整图数据就是坏的回到 3D 软件重烘焙烘焙时按 DirectX 规范设置Blender 中对应翻转绿通道/绿色为 -Y的选项。4.2 光照闪烁切线空间重建视角一动就闪往往是 TBN 矩阵计算错误。处理顺序导入时取消勾选Use Imported Tangents让引擎按 UV 重算切线若仍闪烁检查模型是否有非流形几何重叠顶点、破面焊接距离阈值从 0.001 起试最后一步回到建模软件检查顶点法线是否被手动编辑过重置为平均法线再导出。4.3 细节丢失查格式与通道归属高模细节完全看不到多数情况是法线图被当成了普通 RGB 贴图处理。检查确认导入时该贴图的用途被识别为法线而不是漫反射确认源图不是扁平化后的产物——比如从 Substance Painter 导出时选错 DirectX/OpenGL 预设整个通道会被压平确认图片分辨率与低模 UV 密度匹配法线图过小会直接丢细节。4.4 导入时的七项检查清单检查项推荐做法踩坑后果源文件坐标系按 DirectX 约定导出通道方向错乱模型发黑法线烘焙方向绿色通道按 -Y光照整体反转Use Imported Tangents确认源文件可靠再勾错误切线被放大Shift Imported UVs老模型与新版客户端注意该开关UV 错位连带法线错乱自动缩放单位混乱时开启非等比缩放扭曲法线材质合并默认不合并法线贴图引用丢失法线图格式用无损格式中转压缩导致不可逆损伤5 三类异常的对照速查症状最容易误判的地方真凶破坏范围自救难度整件全黑是不是贴图丢了法线数据全零或 Y 通道反转整个模型低转动视角就闪是不是模型破面切线空间计算错误局部网格中细节全部消失是不是贴图分辨率低法线图被当普通贴图或通道压平材质层面中6 进阶把修复变成一条命令并提前防住它6.1 一条命令反转绿色通道如果你手头有 ImageMagick反转 Y 通道不用打开软件# 先看绿色通道的平均亮度越接近 255 越可能是平的 magick normal.dds -channel G -separate -format G通道平均亮度:%[fx:mean*255]\n info: # 确认方向反了之后只反转绿色通道其余通道保持不动 magick normal.dds -channel G -negate normal_dx_fixed.dds6.2 用命名与提交规范防患于未然把修复动作沉淀进命名团队协作时不靠嘴传Character_[种族]_[部位]_v1.2_DXNorm.fbx提交说明建议固定结构问题现象 → 修复手段通道反转/切线重建/格式转换→ 验证结果通过/部分通过。一套模板用熟之后同样的坑不会再踩第二遍。6.3 排查决策图7 收个尾法线数据是你的光影地基一句话总结FFXIV TexTools 导入模型时90% 的光照问题都出在法线数据的坐标系与切线来源上而不是模型本身。先分清症状再对号入座查数据、查通道、查切线最后用命令把修复标准化——这套流程走熟之后全黑、闪烁、丢细节都不再是拦路虎。下一步建议把本文收藏成你的排障手册想深入验证文中提到的选项与着色器逻辑可以克隆https://gitcode.com/gh_mirrors/ff/FFXIV_TexTools_UI看源码重点看FFXIV_TexTools/Views/Models/ImportModelView.xaml与FFXIV_TexTools/Resources/Shaders/psCustomMeshBlinnPhong.hlsl也欢迎去项目官方 Issue 与社区反馈工具链兼容问题。免责声明本文基于 FFXIV TexTools 仓库当前公开源码结构与通用 FFXIV 模型制作实践撰写具体菜单与版本行为以官方 Release 为准涉及具体版本处以 [vX.X.X] 标注文中命令适用于 Windows 环境的 DX11 客户端。使用第三方工具修改游戏文件请务必遵守 SQUARE ENIX 的用户协议与相关法律法规风险自负。【免费下载链接】FFXIV_TexTools_UI项目地址: https://gitcode.com/gh_mirrors/ff/FFXIV_TexTools_UI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Claude Sonnet 5 API 价格锁定:开发者实战指南与成本优化策略

Claude Sonnet 5 API 价格锁定:开发者实战指南与成本优化策略

如果你是一名开发者,最近在关注大模型 API 的成本,那么这条消息值得你停下来仔细看看:Anthropic 官方宣布,其旗舰模型 Claude Sonnet 5 将永久维持其首发优惠价,取消了原定于今年晚些时候的涨价计划。 这不仅仅是一…

2026/10/16 16:53:21 阅读更多 →
【创新方案】绝区零全自动智能管家:一键解放双手的终极游戏自动化方案

【创新方案】绝区零全自动智能管家:一键解放双手的终极游戏自动化方案

【创新方案】绝区零全自动智能管家:一键解放双手的终极游戏自动化方案 【免费下载链接】ZenlessZoneZero-OneDragon 绝区零 一条龙 | 全自动 | 自动闪避 | 自动每日 | 自动空洞 | 支持手柄 项目地址: https://gitcode.com/gh_mirrors/ze/ZenlessZoneZero-OneDrago…

2026/10/12 23:01:54 阅读更多 →
总结ysm公司(第四家)

总结ysm公司(第四家)

1. yi si mai公司总结-CSDN博客

2026/10/17 0:40:39 阅读更多 →

最新新闻

用Python SimPy实现离散事件仿真:从资源排队到系统优化

用Python SimPy实现离散事件仿真:从资源排队到系统优化

简介:一份面向Python开发者与系统仿真初学者的完整技术文档,以SimPy离散事件建模为主线,帮助读者从零掌握复杂系统仿真的核心方法。文档内容系统完整,先从离散事件系统的基本概念讲起,再深入讲解SimPy的环境、进程、事…

2026/10/17 23:07:01 阅读更多 →
【blender】使用Vscode进行blender调试:把调试配置改到 TaoToken 的完整实践

【blender】使用Vscode进行blender调试:把调试配置改到 TaoToken 的完整实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 23:07:01 阅读更多 →
炸裂开源!MindMemOS 让 AI Agent 真正「不忘事」:LoCoMo 94.03 分背后的记忆架构拆解与 TaoToken 接入实践

炸裂开源!MindMemOS 让 AI Agent 真正「不忘事」:LoCoMo 94.03 分背后的记忆架构拆解与 TaoToken 接入实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 23:07:01 阅读更多 →
Qwen3-VL本地部署完全指南:从零开始用conda搭建多模态大模型环境

Qwen3-VL本地部署完全指南:从零开始用conda搭建多模态大模型环境

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 23:07:01 阅读更多 →
Qt模型类实战指南:从现成模型到自定义实现与数据同步

Qt模型类实战指南:从现成模型到自定义实现与数据同步

很多 Qt 学习者看《Qt Creator快速入门(第三版)》前面十几章都挺顺,一到第16章 Model/View 就有点卡壳,尤其是第16-2节讲到“模型类”的时候,概念一下子抽象起来。我当年这节看了三遍才真正缓过来,主要原因…

2026/10/17 23:06:01 阅读更多 →
VCSA服务全Invalid?从vmon到systemd的排障实践与修复全攻略

VCSA服务全Invalid?从vmon到systemd的排障实践与修复全攻略

1. 故障背景:VCSA服务集体“invalid”的真相搞虚拟化的同行看到这个报错应该都不陌生:某天vCenter Server Appliance(VCSA)管理界面打不开,浏览器刷不出登录页,外部PSC/VC通信断掉,SSH上去执行s…

2026/10/17 23:06:01 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →