diff --git a/Assets/VRM10/Runtime/Migration/MeshUpdater.cs b/Assets/VRM10/Runtime/Migration/MeshUpdater.cs
index 389d441e3..1ca4c8d10 100644
--- a/Assets/VRM10/Runtime/Migration/MeshUpdater.cs
+++ b/Assets/VRM10/Runtime/Migration/MeshUpdater.cs
@@ -10,7 +10,12 @@ namespace UniVRM10
{
///
/// 座標系を変換した Model により、Mesh, Node, BindMatrices を更新する。
- /// buffer, bufferAccessor の更新もある。
+ ///
+ /// * gltf.images の参照する bufferView
+ /// * gltf.meshes の参照する index, VERTEX, MorphTarget の accessor, bufferView
+ /// * gltf.nodes の参照する skin の inverseBindMatrices 向けの accessor, bufferView
+ ///
+ /// を詰め込みなすことで bin を再構築する
///
class MeshUpdater
{
@@ -19,12 +24,23 @@ namespace UniVRM10
List _bufferViews = new List();
List _accessors = new List();
- public MeshUpdater(GltfData data)
+ MeshUpdater(GltfData data)
{
_data = data;
_buffer = new ArrayByteBuffer(new byte[data.Bin.Length]);
}
+ ///
+ /// data を model で更新する
+ ///
+ /// 更新前のオリジナル
+ /// 座標系の変換などの操作済み
+ ///
+ public static (glTF, ArraySegment) Execute(GltfData data, VrmLib.Model model)
+ {
+ return new MeshUpdater(data).Update(model);
+ }
+
int AddBuffer(NativeArray bytes)
{
var bufferView = _buffer.Extend(bytes);
@@ -66,11 +82,10 @@ namespace UniVRM10
///
/// bufferView, accessor を push することで bin を再構築する
- /// (meshの右手左手変換結果の適用など)
///
- ///
+ /// meshの右手左手変換結果
///
- public (glTF, ArraySegment) Update(VrmLib.Model model)
+ (glTF, ArraySegment) Update(VrmLib.Model model)
{
var gltf = _data.GLTF;
@@ -165,7 +180,6 @@ namespace UniVRM10
/// model はひとつのノードに複数の mesh をぶら下げることができる(meshGroup)
/// gltf.meshes[i].primitives[j] <-> model.meshGroups[i].meshes[0].submeshes[j]
///
- ///
void UpdateSharedVertexBuffer(VrmLib.Model model)
{
var gltf = _data.GLTF;
@@ -246,7 +260,6 @@ namespace UniVRM10
/// model はひとつのノードに複数の mesh をぶら下げることができる(meshGroup)
/// gltf.meshes[i].primitives[j] <-> model.meshGroups[i].meshes[j].submeshes[0]
///
- ///
void UpdateDividedVertexBuffer(VrmLib.Model model)
{
var gltf = _data.GLTF;
diff --git a/Assets/VRM10/Runtime/Migration/MigrationVrm.cs b/Assets/VRM10/Runtime/Migration/MigrationVrm.cs
index 6311ccb2f..68584cc5b 100644
--- a/Assets/VRM10/Runtime/Migration/MigrationVrm.cs
+++ b/Assets/VRM10/Runtime/Migration/MigrationVrm.cs
@@ -38,7 +38,7 @@ namespace UniVRM10
// Unity -> VRM1
model.ConvertCoordinate(VrmLib.Coordinates.Vrm1);
- var (gltf, bin) = new MeshUpdater(data).Update(model);
+ var (gltf, bin) = MeshUpdater.Execute(data, model);
gltf.extensions = null;
return MigrateVrm(gltf, bin, data.Json.ParseAsJson()["extensions"]["VRM"]);
}