yoship1639 / Player2VRM

クラフトピアでプレイヤーモデルを任意のVRMモデルに差し替えるMOD
MIT License
101 stars 10 forks source link

装備品の位置調整設定を追加しました #31

Closed hiirohitoyo closed 3 years ago

hiirohitoyo commented 3 years ago

装備場所毎に以下のような設定で位置を調整できます。

// 頭装備の位置をVRMモデルに追従させるかどうか
// true:VRMモデルのHeadボーンに追従 false:クラフトピア標準位置
EquipHeadFollowsModel=true
// 頭装備の表示位置のオフセット
EquipHeadOffset=(0.0, 0.13, -0.05)

また、ファイル編集時に動的に位置を変更するかどうかのオプションも追加してあります。

// 装備品位置の調整内容をリアルタイムに反映するか
// true:  リアルタイムで反映する。設定ファイル保存のタイミングで位置が動的に変わる。ただし、常にファイルを読み込むので負荷が大きい。位置調整作業向け。
// false: 一度読み込んだ値を使い続ける。ゲーム再起動まで値の変更が反映されないが、負荷が小さい。通常プレイ時向け。
DynamicEquipAdjustment=false

全文はサンプルとしてアリシアちゃん用のものをAssets/settings_AliciaSolid.txtに追加させていただきましたので、そちらを確認ください。

プルリクを出しておきながら申し訳ないですが、結構扱いが難しいです。 settings_AliciaSolid.txtにコメントとして書いてありますが、わかっているだけでも以下のような制約・不具合があります。

あと、再起動すると直るのですが、たまにうまく動かないことがあります。

これらはいつか直したい気持ちはありますが、いつになるかわからないので一旦この状態でプルリクをださせてもらいます。 このままでも、帽子・アクセサリー、グライダーについては問題なく使え、他の装備もある程度見た目はマシにできるかと思います。

問題があればマージを見送って頂いてかまいません。

yoship1639 commented 3 years ago

@hiirohitoyo PRありがとうございます!

DynamicEquipAdjustmentをtrueにしてもキャッシュが効いてしまっているため効かないので直していただけるとありがたいです。 いくつか不具合があるみたいですが、選択で回避できる状態なのでこちらは一旦OKとします。 コンフリクトするのでそちらも直していただけると嬉しいです!

hiirohitoyo commented 3 years ago

@yoship1639 コメントありがとうございます!

DynamicEquipAdjustmentをtrueにしてもキャッシュが効いてしまっている件については、おそらく、一度falseにした場合、この設定自体もキャッシュする仕様にしているからでないかと思います。 DynamicEquipAdjustment自体はキャッシュしないほうが良ければそのように修正しておきます。

コンフリクトは直しておきます!(プルリクのタイミングが悪かった…ぴえん)

あと、不具合の修正については対応を悩んでます…。公式発表の短期実装計画にVRM対応が入っているので、正直直す意味あるのかなと…。

yoship1639 commented 3 years ago

@hiirohitoyo そうですね、DynamicEquipAdjustmentは調整用なのでキャッシュさせない方向でも問題ないかと もしくは変更の監視はFileSystemWatcher辺りを使っていただけると…!

不具合を残して修正しない想定でマージするのは良くないので、EquipDualFollowsModelなどをfalseのままで選択させない方向でも良いかもしれません。

一先ず、ご対応お願いします!

hiirohitoyo commented 3 years ago

@yoship1639 了解です!DynamicEquipAdjustmentはキャッシュしないようにしておきます。 FileSystemWatcherは確認してみます!とはいえ、導入する場合時間がかかってしまうと思うので直近では見送らせてください。

装備については、そうですね、概ね問題ないことがわかっている頭装備・アクセサリだけモデル追従の設定ができるようにしておいて、残りはfalse固定で設定不可にしようと思いますがいかがでしょうか。

yoship1639 commented 3 years ago

@hiirohitoyo

装備については、そうですね、概ね問題ないことがわかっている頭装備・アクセサリだけモデル追従の設定ができるようにしておいて、残りはfalse固定で設定不可にしようと思いますがいかがでしょうか。

了解です、お手数おかけします!

hiirohitoyo commented 3 years ago

@yoship1639 おまたせしました!コンフリクトの修正と、VRMモデルに追従するモードが設定できるのは頭装備とアクセサリだけに限定するように修正しました。 また、UnityEngine.InputLegacyModuleの参照パス設定がおかしかったので直しておきました。

yoship1639 commented 3 years ago

@hiirohitoyo マージしました!ありがとうございます、お手数おかけしました!

hiirohitoyo commented 3 years ago

@yoship1639 ありがとうございます!こちらこそお手数おかけしました!