Mu动态法线贴图(2026-07-01更新)
本帖最后由 鼓掌之间 于 2026-7-1 15:17 编辑转自:https://www.nexusmods.com/skyrimspecialedition/mods/154657
基于身体网格自动更新皮肤法线贴图
告别静态皮肤法线贴图,同时支持切线空间细节法线贴图/叠加法线贴图,兼容所有身形(CBBE、UNP、TBD、SOS、TNG及其他各类身形)
---
说明
当前游戏原版及常规身形MOD均使用固定形状的法线贴图,会出现以下问题:
- 若你使用了肌肉身形,肌肉部位不会显示对应的阴影
- 若你使用了丰满胸部身形,胸部区域不会显示对应的阴影
- 若你使用了平胸身形,胸部会残留违和的阴影,影响观感
- 若你使用了孕肚身形,腹部会残留违和的阴影,影响观感
- 若身体模型出现挤压变形,挤压部位不会显示对应的阴影
出现这些问题的核心原因,是常规法线贴图均基于特定身形预先烘焙生成。
本MOD会根据你当前使用的身体模型网格形状实时更新法线贴图,从而呈现正确的光影效果;同时支持切线空间细节法线贴图,让你可以自定义皮肤细节;还提供了叠加纹理功能,可保留原有身形法线贴图的细节效果。
---
功能特性
- 实时更新法线贴图
- 实时检测身形滑块变形等顶点位移变化,并同步更新法线贴图
- 每次穿戴装备时,都会根据当前身体模型网格形状更新法线贴图,完美呈现挤压部位的正确光影
- 同时支持CPU与GPU两种处理模式,若你的显卡驱动出现异常,或是设备性能较低,可自由切换处理模式
---
切线空间细节法线贴图
你可以添加切线空间细节法线贴图来丰富皮肤细节。
文件命名带_n后缀即可被自动识别,示例如下:
- 身体法线贴图文件路径为:Textures\actors\character\female\femalebody_1_msn.dds
- 创建切线空间细节法线贴图,重命名为femalebody_1_n.dds,放入Textures\actors\character\female文件夹
- 此时,使用femalebody_1_msn.dds文件的模型网格,会自动调用femalebody_1_n.dds作为切线空间细节法线贴图
---
叠加纹理
本MOD更新后的法线贴图会完全贴合身体模型网格的形状;但若你想要保留原有法线贴图中的褶皱、纹路等细节,可提取原有法线贴图的特定部位,制作成叠加纹理使用。
文件命名带_ov后缀即可被自动识别,示例如下:
- 身体法线贴图文件路径为:Textures\actors\character\female\femalebody_1_msn.dds
- 创建叠加纹理,重命名为femalebody_1_n_ov.dds,放入Textures\actors\character\female文件夹
- 此时,使用femalebody_1_msn.dds文件的模型网格,会自动调用femalebody_1_n_ov.dds作为叠加纹理
小贴士:为了让更新后的法线贴图与叠加纹理平滑融合,制作叠加纹理时,建议将叠加层的透明度设置为50%。
---
遮罩纹理
本MOD更新后的法线贴图会完全贴合身体模型网格的形状;但若你想要在特定部位保留原始法线贴图的效果,可使用遮罩纹理。
遮罩仅对Alpha通道生效,非透明区域会保留原始法线贴图的效果。
文件命名带_m后缀即可被自动识别,示例如下:
- 身体法线贴图文件路径为:Textures\actors\character\female\femalebody_1_msn.dds
- 创建遮罩纹理,重命名为femalebody_1_n_m.dds,放入Textures\actors\character\female文件夹
- 此时,使用femalebody_1_msn.dds文件的模型网格,会自动调用femalebody_1_n_m.dds作为遮罩纹理
---
条件配置文件
想要为多个NPC修改或添加切线空间细节法线贴图、叠加纹理,却因为它们使用的身体法线贴图不同,需要逐个替换非常繁琐?
本MOD提供的条件配置文件功能可完美解决这个问题,你只需在SKSE\Plugins\MuDynamicNormalMap文件夹中新建ini文件,即可添加条件配置。
配置示例:
Condition = IsRace(ErinRace.esm|1000) OR IsRace(ErinRace.esm|1001) OR HasKeywordEditorID(ActorTypeErin)
Enable = true
HeadEnable = false
DynamicTriShapeAsHead = true
DetailStrength = 0.5
ProxyDetailTextureFolder = actors\Erin, actors\Erin\face, actors\ErinFurryFace
ProxyOverlayTextureFolder = actors\Erin, actors\Erin\face, actors\ErinFurryFace
ProxyMaskTextureFolder = actors\Erin, actors\Erin\face, actors\ErinFurryFace
ProxyFirstScan = false
Priority = 200
配置项说明
1.Condition:配置该规则生效的NPC匹配条件
支持的条件语句如下:
- HasKeyword(插件名|表单ID)
- HasKeywordEditorID(编辑器ID)
- HasHeadPart(插件名|表单ID)
- HasHeadPartEditorID(编辑器ID)
- IsActorBase(插件名|表单ID)
- IsActor(插件名|表单ID)
- IsRace(插件名|表单ID)
- IsInFaction(插件名|表单ID)
- IsFactionRankGreaterOrEqual(插件名|表单ID|等级)
- IsFemale()
- IsChild()
注:插件名即Skyrim.esm这类插件文件名,表单ID为NPC的十六进制代码,编辑器ID为关键词对应的编辑器ID。
同时支持NOT(非)、AND(与)、OR(或)逻辑语法。
示例条件:IsRace(TestPlugin.esp|1234) AND NOT HasKeywordEditorID(TestKeyword) OR IsFemale()
运算逻辑为:
该NPC的种族是否为TestPlugin.esp插件中的0x1234,且不带有TestKeyword关键词;
或该NPC的种族为TestPlugin.esp插件中的0x1234,且为女性。
2.Enable:是否为该NPC启用法线贴图更新功能
3.HeadEnable:是否为该NPC启用头部法线贴图更新功能
4.DynamicTriShapeAsHead:设为true时,会将头部部件的模型网格识别为头部
5.DetailStrength:切线空间细节法线贴图的强度
6.ProxyDetailTextureFolder:切线空间细节法线贴图的代理文件夹
若NPC没有匹配其身体法线贴图路径的切线空间细节法线贴图,会自动在代理文件夹中查找同名文件并调用。
示例:若代理文件夹设为actors\Erin,NPC使用的法线贴图路径为Textures\actors\character\female\femalebody_1_msn.dds,但对应路径下没有femalebody_1_n.dds文件,MOD会自动查找并调用Textures\actors\Erin文件夹中的femalebody_1_n.dds文件。
可使用英文逗号分隔,添加多个代理文件夹。
7.ProxyOverlayTextureFolder:叠加纹理的代理文件夹,规则与上述代理文件夹一致
8.ProxyMaskTextureFolder:遮罩纹理的代理文件夹,规则与上述代理文件夹一致
9.ProxyFirstScan:修改纹理的读取优先级
- 设为false时,读取顺序为:
1. 查找Papyrus脚本设置的纹理文件
2. 若上一项不存在,查找原始文件夹中的纹理文件
3. 若上一项不存在,查找代理文件夹中的纹理文件
- 设为true时,读取顺序为:
1. 查找Papyrus脚本设置的纹理文件
2. 若上一项不存在,查找代理文件夹中的纹理文件
3. 若上一项不存在,查找原始文件夹中的纹理文件
10. Priority:条件配置文件的优先级
若有多个条件配置文件都匹配到同一个NPC,将生效优先级数值最大的配置。
数值范围:最小值-2147483648,最大值2147483647
---
额外数据设置
若你想要排除特定模型网格,或是让其复用其他模型网格生成的法线贴图,可按以下步骤操作:
1.使用Outfit Studio或Nifskope,为目标模型网格添加NiIntegerExtraData节点
2.将该额外数据节点命名为NoDynamicNormalMap
3.将数值设为1或2
- 数值1:该模型网格不参与法线贴图生成的几何计算,但会复用其他模型网格生成的法线贴图
- 数值2:该模型网格完全不参与法线贴图的生成与应用
---
安装步骤
1.安装所有前置需求
2.使用Vortex、MO2等MOD管理器安装主文件
---
前置需求
- SKSE64 或 SKSEVR
- 对应版本的地址库:
- 传奇版/周年版:Address Library for SKSE Plugins:https://bbs.3dmgame.com/thread-6549645-1-1.html
- VR版:VR Address Library for SKSEVR:https://bbs.3dmgame.com/thread-6650842-1-1.html
- Windows 10 (2004) 19041.264及以上版本(含Windows 11)
---
兼容性
- 支持SE v1.5.97版本
- 支持AE全版本(若v1.6.1130 ~ v1.6.1170版本出现问题,请安装最新版地址库)
- 支持VR v1.4.15版本
- 兼容所有使用对象空间法线贴图(_msn.dds格式法线贴图)的模型(例如高模头部MOD、CBBE系列、UNP系列、SOS、TNG及其他各类模型)
- 兼容所有玩家角色与NPC
- 兼容所有皮肤MOD——仅在运行时覆盖法线贴图,不会修改源文件
不兼容说明
1.与通过脚本(SetSkin函数)修改法线贴图文件的MOD不兼容
- 检查方法:
1.用记事本打开该MOD中所有.psc后缀的文件;若没有psc文件只有pex文件,需使用Papyrus反编译器反编译
2.按下Ctrl+F搜索SetSkin
3.若能搜索到该关键词,该MOD大概率与本MOD不兼容,因为它会覆盖本MOD的法线贴图修改结果
- 修复方法:编辑并重新编译Papyrus脚本,在SetSkin函数后添加本MOD的QUpdateNormalmap函数
2.与所有使用切线空间法线贴图(_n.dds格式法线贴图)的模型(例如UBE)不兼容——不会对主体身形造成影响,你可将其用于其他身形
---
已知问题
请勿报告此处列出的问题,此类问题要么无法修复,要么原因不明,报告无意义。
- 胸部下方等法线贴图坡度陡峭的区域,会根据动画出现画面错乱的问题
原因:法线贴图是基于静态模型网格烘焙的,动画(或着色器)无法对陡峭的坡度进行足够的光影修正。我已有一些优化思路,但目前除了用遮罩纹理临时修复外,没有特别有效的解决办法。
下载地址:
**** Hidden Message *****
本帖最后由 goofy1106 于 2025-7-22 15:11 编辑
好长,反正只需要直接安装不用手动修改就是好东西 感谢分享{:3_123:}
6666666666666666666666
2025-07-25更新
2025-07-26更新
2025-07-28更新
gx感谢分享
6666666666666666666666666 我的妈呀这更新这么快的嘛{:3_119:} 66666666666666
谢谢分享
DDD顶顶顶
影响性能啊。。。 用了这个蛮延迟的,感觉需要再优化几个版本 11111111111166666666666668888888888888888
2025-08-04更新
谢谢分享
666666666666666666666 感谢分享
2025-08-10更新
2025-08-14更新
2025-08-31更新
2025-09-14更新
666666666666666
666666661145 谢谢分享
z吱吱吱吱吱吱吱吱吱吱吱吱吱吱吱
66666666666666666666666666
666666666666666666