Skip to content

1.0.0

Choose a tag to compare

@AleFeng AleFeng released this 17 Jul 14:45

为网格自动计算平滑法线并烘焙到顶点色 / 切线 / TEXCOORD 通道,用于背面外扩描边,解决硬边处描边断裂。

📦 安装

Window > Package Manager → 左上角 +Install package from git URL... → 粘贴:

https://github.com/AleFeng/OutlineSmoothNormalsGenerator.git?path=/Packages/com.alefeng.outlinesmoothnormalsgenerator#1.0.0

⚠️ 装完还必须导入一个 Sample,否则没有描边 Shader。
核心包刻意不含 Shader —— 这是「不引入任何渲染管线依赖」的代价。
在 Package Manager 里选中本包 → Samples按你的管线导入其中一个

Sample Shader 名
Outline Shader (URP) & Demo OutlineSmoothNormalsGenerator/Outline URP
Outline Shader (Built-in RP) & Demo OutlineSmoothNormalsGenerator/Outline Built-in

两个 Sample 各自附带同一套对照演示场景(已烘焙 / 原始法线 / 接缝抖动 三个立方体)。

安装成功后,菜单栏出现 Tools → Smooth Normal Generator

✨ 主要功能

  • 平滑法线生成工具 —— 纯 Editor C#,与渲染管线无关,Built-in / URP / HDRP 均可用于烘焙。
  • 三种存储方式 —— 顶点色(八面体编码,全球面双射,8-bit 下误差约 1°)/ 切线 / TEXCOORD。
  • 实时描边预览、法线可视化对比、通道状态检查。
  • 会话快照还原Mesh 另存为独立资产(不可写网格唯一能真正保存的路径)。
  • 可调合并容差(默认 0.0001),处理 DCC 导出与 FBX 浮点截断造成的接缝。

⚠️ 已知限制

  • 顶点合并采用格点取整,恰好跨越格边界的两点仍会被分开。容差需远小于模型的最小真实特征尺寸。
  • 不支持 Undo —— Undo.RecordObject 并不可靠地跟踪网格顶点数据,对不可变的导入子资产更是完全无效。工具提供自己的会话快照还原作为替代。
  • HDRP 未提供描边 Shader,可参照详细文档自行移植(解码逻辑通用,仅渲染 Pass 需适配)。
  • 通道状态最高只说「可能是平滑法线」—— 编码后就是普通数值,与任意顶点色 / UV 在数据上不可区分。

📖 文档

简体中文 ·
English ·
日本語 ·
详细使用文档 ·
CHANGELOG