バーチャルキャスト公式Wiki
メニュー
Steam版
デバイス
アセット
配信
その他
リリース情報
- wiki編集者用ページ
-
以前のリビジョンの文書です
※この記事は「UniVCI-0.15」時点のものです。
オブジェクトが衝突したときの処理になるので「onCollisionEnter」を使用します。
各オブジェクトの設定は次のようになります。
SubItemのGroupIDは0以外で同じ数字にしておきます。
(同じ数字のSubItemはオーナー権が一致し、正しく物理演算が行われる)
GameObjectの「VCI Object」コンポーネントのScriptsのSizeを1に指定し、
Nameに「main.lua」を記入、Sourceに以下スクリプトを記入します。
AddForce(Vector3)はオブジェクトにVector3の力を加えます。
GetUp()でオブジェクトの上向き(ローカルY方向)単位ベクトルを得ることができます。
今回の場合はビリヤードのキューの先端の方向がy方向になっています。
function onCollisionEnter(item, hit) if (item=="bili_ball" and hit=="bili_q") or (item=="bili_q" and hit=="bili_ball") then local bili_ball = vci.assets.GetTransform("bili_ball") local bili_q = vci.assets.GetTransform("bili_q") bili_ball.AddForce(1000 * bili_q.GetUp()) end end