Transform/Interaction/AssetFrameSlot

Last-modified: 2025-04-20 (日) 10:29:23


AssetFrameSlot(アセット フレーム スロット)

アセットを近くで放した時に、枠に吸着してくれるコンポーネント
吸着した際、子スロットに移動させるだけでなく、指定先のアセットを置き換えることもできる。


項目

Enabled:
このコンポーネントを有効にするかどうか。

FrameSize:
枠の大きさ。

FrameAnimSpeed:
枠の大きさアニメーションの速さ。(秒)

SnapAnimTime:
吸着アニメーションの速さ。(秒)

Targets(list):
Add押すと増える。
アセットの適用先。
吸着時に、アセットを置き換える。(取外時は何もしない。)

Callback:
???
Sync Delegate - Resonite Wiki

_current:
自動。
枠に収まっているアセット。<Slot>

_currentRatio:
自動。
枠に収まっているアセットの大きさの縦横比率。

_frameSize:
自動的にFrameMeshが生成され、そのサイズが駆動される。
この項目がnullになると、EnabledがFalseになります。(何でもいいのでfloat2を駆動させれば騙せます。)

ちなみに、枠の幅や色は自由に設定できます。FrameMesh以外でもOK。


_collider:
自動的にBoxColliderが生成される。
画像等の薄いアセットは、このコライダーと重なってしまい掴みづらくなってしまいます。
コライダーオフセットを少しだけ奥側にずらすと使いやすくなります。

ちなみに、BoxColliderじゃなくても良いです。
同じスロット又は配下のスロットにコライダーがあればOK。SphereColliderのNoCollisionで大きさ0でも機能します。


使用例

  • 画像・動画・音声などなど、様々なアセットを選択できる。Material等は直接入力する。
  • 適当なスロットにアタッチ。すると、自動的にFrameスロット(MeshRendererFrameMesh・PBS_Metallic・BoxCollider)も一緒に生成される。
  • 写真立て(フォトフレーム)や、アセットを取り込む為の設定画面等が作れる。


その他

  • マテリアルアセットが個別生成されるので、注意が必要です。最適化作業をお忘れなく。
  • 引き寄せ範囲は設定できない。おそらく、方向は無関係で、原点距離が1m未満になると引き寄せられる?
  • ReferenceProxyコンポーネント(対象のアセットを参照中)があれば、引き寄せられる。(各種アセットの実体には、自動的に付いてるので手動で設定する必要は無いです。)