Unity開発で、しばしば困るのが、床が動く場合の処理です。主人公が動く床の上に乗ったら、床と一緒に動くようにしなければいけませんが、みーはこのように実装しました。
- 床が1フレームで移動したベクトルを取得する
- 主人公をそのベクトルだけ移動させる
Boo で記述するとこんな感じです。
//動く床のTriggerに対して
import UnityEngine
class floatingIsland (MonoBehaviour):
pos as Vector3
def Start ():
pass
def Update ():
pass
def OnTriggerEnter(other as Collider) :
pos = transform.position
def OnTriggerStay(other as Collider) :
other.transform.position += transform.position-pos
pos = transform.position