# VRM官方文档-汉化加强版-【VRM-1.0】
# UniVRM-1.0
UniVRM 是一个实现了 VRM 标准的 Unity 库集合。使用 UniVRM,你可以在 Unity 中生成或读取 VRM 文件。
这里将解释如何使用 UniVRM 来处理 VRM-1.0 标准的 VRM 文件。
- [尝试 VRM1.0 !新的 VRM 要点解析。 (Youtube)](https://www.youtube.com/watch?v=7ZuEbzE7Hew)
- [关于使用 UniVRM 的应用程序向 VRM 1.0 迁移的问题。(Youtube)](https://www.youtube.com/watch?v=iWucttIioRk&t=5274s)
### **资产构成**
当在编辑器中导入 vrm-1.0 文件时
- XXX.vrm (vrm-1.0 文件)
- XXX.vrm\_assets/vrm1 (提取出的 VrmObject 资产)
- XXX.vrm\_assets/preset(提取出的 VrmExpression 资产)
### **组件构成**
附加在 Runtime 的 VRM 层级结构中的组件
- RuntimeInstance(UniGLTF)
- VrmController
- VrmSpringBone
- VrmConstraint
# URP 兼容情况
### **URP版 shader 的实装情况**
glTF extensions | built-in | URP | 备注 |
---|
(PBR) | `Standard` | `Universal Render Pipeline/Lit` | |
KHR\_materials\_unlit | `UniGLTF/UniUnlit` | `UniGLTF/UniUnlit` | URP shader 和 Built-in shader 是相同的。 |
VRMC\_materials\_mtoon | `VRM10/MToon10` | `VRM10/Universal Render Pipeline/MToon10` | |
VRM | `UniGLTF/UniUnlit` | `UniGLTF/UniUnlit` | URP 不被支持,回退为 unlit. |
**DITOR**
glb 和 vrm-1.0 可以从 inspector 替换为 URP 材质。
**VRM-0.x 版本 MToon 不支持 URP**
将默认回退到 unlit(无光照)模式。在导入时,建议考虑升级到 VRM-1.0 版本,以便使用 MToon-1.0 的 URP 版本。
###
### **URP Import**
glTF extensions | IMaterialDescriptorGenerator | 备注 |
---|
(PBR) | UrpGltfMaterialDescriptorGenerator | |
KHR\_materials\_unlit | UrpGltfMaterialDescriptorGenerator | |
VRMC\_materials\_mtoon | UrpVrm10MaterialDescriptorGenerator | |
VRM | UrpVrmMaterialDescriptorGenerator | URP版 VRM0.X MToon 未实装 |
#### **RuntimeImport[](https://vrm.dev/univrm1/urp/#runtimeimport "RuntimeImport への直接リンク")**
通过 `IMaterialDescriptorGenerator` 参数生成的材质可以在内置(Built-in)和 URP(Universal Render Pipeline)之间切换。
###
### **URP Export**[](https://vrm.dev/univrm1/urp/#urp-export "URP Export への直接リンク")
开发中
glTF extensions | IMaterialExporter | 备注 |
---|
(PBR) | UrpGltfMaterialExporter | `v0.125.0` |
KHR\_materials\_unlit | UrpGltfMaterialExporter | `v0.125.0` |
VRMC\_materials\_mtoon | | 未实装 |
VRM | | 未实装 |
# Folder(文件夹) 结构
文件夹结构 截至 v0.104 版本,UniVRM 仓库的 Assets 文件夹下有六个子文件夹。
### **Assets 下的文件夹:**
#### **VRMShaders**
这是一个 UPM 包 `com.vrmc.vrmshaders`。
收集了与 `glTF`、`VRM 0.x`、`VRM 1.0` 相关的 `Shader`、`Material` 和 `Texture` 功能。包括了 `UniUnlit`、`MToon`、`MToon-1.0`。
有关各个 Shader 的详细信息,请参考 [https://vrm.dev/univrm/shaders/index.html](https://vrm.dev/univrm/shaders/index.html)。
#### **UniGLTF**
这是 UPM 包 `com.vrmc.gltf`,依赖于 `com.vrmc.vrmshaders`。
具有 `gltf`, `glb` 的导入/导出功能。支持 `.gltf`, `.glb` 文件的编辑器导入功能。
#### **VRM**
这是 UPM 包 `com.vrmc.univrm`,依赖于 `com.vrmc.vrmshaders` 和 `com.vrmc.gltf`。
它具有 vrm-0.x 的导入/导出功能。它还具有扩展名为 .vrm 的文件的编辑器导入功能。如果是 vrm-1.0,则无法导入。
#### **VRM\_Samples**
包含 vrm-0.x 的示例场景。需要 `VRM`, `UniGLTF`, `VRMShaders` 才能运行。
#### **VRM10**
这是 UPM 包 `com.vrmc.vrm`,依赖于 `com.vrmc.vrmshaders` 和 `com.vrmc.gltf`。
具有 `vrm-1.0` 的导入/导出功能。支持 `.vrm` 文件的编辑器导入功能。如果是 `vrm-0.x`,则可以进行迁移。
#### **VRM10\_Samples**
包含 `vrm-1.0` 的示例场景。需要 `VRM10`, `UniGLTF`, `VRMShaders` 才能运行。
### **文件夹的组合**
文件夹可以根据您的需要和条件进行组合。如果包含所有文件夹,那么vrm-0.x和vrm-1.0两个版本都可以运行。如果您只使用其中一个版本,您可以删除不需要的文件夹。
**例:仅安装 VRM-0.X**
- VRMShaders
- UniGLTF
- VRM
**例:同时安装 VRM-1.0 和 VRM-0.X**
- VRMShaders
- UniGLTF
- VRM
- VRM10
**例:仅安装 VRM-1.0**
- VRMShaders
- UniGLTF
- VRM10
**例:仅安装 UniGLTF**
- VRMShaders
- UniGLTF
**无法运行的例子:仅安装 UniGLTF**
- UniGLTF
因为没有 VRMShaders,所以无法运行。
# 制作 VRM-1.0
🚧创建 VRM-1.0 模型
测试环境
• Unity 2019.4.30f1
• UniVRM 0.80.0
# FBX 的导入,T-Pose 初始化导出
### **使用的素材[](https://vrm.dev/univrm1/vrm1_tutorial/first_export_from_fbx/#%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E7%B4%A0%E6%9D%90 "使用する素材 への直接リンク")**
- new\_seedsan.fbx
- 相关的 \*.png 文件
### **fbx的导入[](https://vrm.dev/univrm1/vrm1_tutorial/first_export_from_fbx/#fbx-%E3%81%AE-import "fbx の import への直接リンク")**
在 Assets 中创建一个工作用的文件夹 `Assets/seedsan/fbx` 。
#### **导入Texture**
[](https://vrm.dev/univrm1/vrm1_tutorial/first_export_from_fbx/#texture-%E3%82%92-import "Texture を import への直接リンク")将相关的 png 文件导入到 `Assets/seedsan/fbx` 中
- backpack.png
- body.png
- faceparts.png
- gradation.png
- hair.png
- nm\_backpack\_normals.png
- nm\_body\_normals.png
- nm\_wear.png
- planekun\_face.png
- robo\_arm.png
- wear.png
#### **导入FBX**
将 `new_seedsan.fbx` 导入到 `Assets/seedsan/fbx` 文件夹中
> 导入了FBX的场景
>
> [](https://docs.vrcd.org.cn/uploads/images/gallery/2024-09/AyvY6lKfIaiAfzja-fbx-import.jpg)
>
> 有部分得纹理分配不正确(机械臂)。我们将按照以下步骤进行修正。
# VrmObject 和 Extract(VRM对象 和 提取)
# 🚧Meta(元数据) 的设置
# Expression(表情表达式) 的设置
# LookAt(视线) 的设置
# 🚧FirstPerson(第一人称) 的设置
# SpringBone (弹簧骨骼) 的设置
# 🚧Material(材质) 的设置
# 🚧Constraint(约束关系) 的设置
# 从 VRM-0.x 迁移到 VRM-1.0
# 升级兼容性
# 在编辑器中升级