バーチャルキャスト公式Wiki
メニュー
Steam版
デバイス
アセット
配信
その他
リリース情報
- wiki編集者用ページ
-
onTriggerEnterを使用した、アイテムがコライダーを通過したときに色が変化するサンプルです。
SubItemにCollider(Trigger)が接触したときに処理を実行するには「onTriggerEnter」を、
Collider(Trigger)が離れたときに処理を実行するには「onTriggerExit」を使用します。
1. 新しくGameObjectを作成し、その中にCube、Sphere、Planeを入れ子にします。
GameObjectの名前は「TriggerEnterExit_VCI」としていますが、任意の名前でも可です。
その他は以下のように設定します。
2. Cubeの色を変更するため「TriggerMaterial」Materialファイルを新規作成します。
作成したTriggerMaterialを「Cube」のMaterialとして設定します。
3. GameObjectに「VCI Object」コンポーネントをアタッチし、
Cube、Ball、Planeに「VCI SubItem」コンポーネントをアタッチします。
この時、「Rigitbody」コンポーネントもアタッチされます。
CubeとPlaneは重力を使用しないため、「Use Gravity」をOFF、「Is Kinematic」をONにします。
Ballは物理挙動させるため、「Use Gravity」をON、「Is Kinematic」をOFFにします。
4. GameObjectの「VCI Object」コンポーネントのScriptsのSizeを1に指定し、
Nameに「main.lua」を記入、Sourceに以下スクリプトを記入します。
local green = Color.__new(0,1,0,0.5) local red = Color.__new(1,0,0,0.5) function onTriggerEnter(item, hit) if item == "Ball" and hit == "Cube" then vci.assets.material._ALL_SetColor("TriggerMaterial", red) end end function onTriggerExit(item, hit) if item == "Ball" and hit == "Cube" then vci.assets.material._ALL_SetColor("TriggerMaterial", green) end end