v0.46¶
commit¶
ce8c
バグ修正¶
ImporterContext.Destroyの修正¶
Runtimeのリソース破棄に使えるように仕様変更しました。
詳細は、APIの変更
- ImporterContext.Destroy
を参照。
BlendShapeProxyでマテリアルのクリア挙動を修正しました¶
毎フレームマテリアルの基準値にクリアしていたので、変化していないときにセットするのをやめると元に戻ってしまう。
https://github.com/dwango/UniVRM/issues/72
thumbnail設定の復旧¶
https://github.com/dwango/UniVRM/issues/62
Importer¶
float値にNan、Infがあったときにパース出来るようにした¶
ToDo: ExporterでNan Infを検知すべき
Unity2018.3対応¶
#if NET_4_6 || NET_STANDARD_2_0
Import時に既存のファイル(BlendShapeClip, BlendShapeAvatar, Material)を上書きしない¶
https://github.com/dwango/UniVRM/issues/56
改めて作成させるには対象のVRMから作成されたMaterialとBlendShapeClipとBlendShapeAvatarアセットを削除したのちに、vrmファイルをreimportしてください(右クリックのメニューなどからできます)。
Exporter¶
非アクティブオブジェクトのスキップ¶
エクスポート時に非アクティブのノードのメッシュエクスポートをスキップするようにしました。
Component¶
VRMFirstPerson.Setupの最適化¶
設定が auto
のとき SubMesh の index 配列(mesh.getIndices
)が長い(10万以上)モデルで異常に負荷がかかるのを修正しました。
APIの変更¶
BlendShapeProxy.SetValue(key, value, immediately)¶
3引数 SetValue
の代わりに2引数の明示的な関数を用意しました。
AccumulateValue¶
値を貯めて、後で Apply
したときに反映する。
SetValues
の最後にも Apply
されます。
void BlendShapeProxy.AccumulateValue(key, value)
// [Obsolete] SetValue(key, value, false)
ImmediatelySetValue¶
即反映する。
void BlendShapeProxy.ImmediatelySetValue(key, value)
// [Obsolete] SetValue(key, value, true)
ImporterContext.Destroy¶
ImporterContext.Destroy(bool destroySubAssets)
が名前から期待される動作をしていないので Obsolete
にして用途を明確にした関数を用意しました。
DestroyRootAndResources¶
runtimeインポーター向けのリソース解放。 追加したDisposeはこれを呼びます。
EditorDestroyRoot¶
editorインポート時のprefabの元になったGameObjectをシーンから削除。 旧Destroy(destroySubAssets=false)
EditorDestroyRootAndAssets¶
editorインポート時にエラーが発生した場合などに作ったアセットを削除する。 旧Destroy(destroySubAssets=true)