UniVRM10.Vrm10
VRM-1.0 importer
Assets/VRM10/Runtime/IO/Vrm10.cs
LoadPathAsync
ファイルパス(文字列)からロードします。
Task<Vrm10Instance> Vrm10.LoadPathAsync(
string path,
bool canLoadVrm0X = true,
ControlRigGenerationOption controlRigGenerationOption = ControlRigGenerationOption.Generate,
bool showMeshes = true,
IAwaitCaller awaitCaller = null,
ITextureDeserializer textureDeserializer = null,
IMaterialDescriptorGenerator materialGenerator = null,
VrmMetaInformationCallback vrmMetaInformationCallback = null,
CancellationToken ct = default(CancellationToken),
ImporterContextSettings importerContextSettings = null,
IVrm10SpringBoneRuntime springboneRuntime = null
)
仕様例
var vrm = await Vrm10.LoadPathAsync(vrm_path);
sample の仕様例
return: Vrm10Instance
canLoadVrm0X: vrm-0.x をマイグレートするか?
true
の場合(default) vrm-0.x は vrm-1.0 に変換してロードされます。
vrm-0.x とアタッチされるコンポーネントが異なります。
controlRigGenerationOption: ControlRig を生成するか?
unity の humanoid を経由せずに直接操作する場合のユーティリティーです。
showMeshes: Load完了時に表示させるか
awaitCaller: 非同期の制御
await
しない場合は以下のようにしてください。
ImmediateCaller
により内部の await が即時実行されるので、
完了済みの Task が返ります。
var task = Vrm10.LoadPathAsync(vrm_path, new ImmediateCaller());
var vrm = task.Value;