Language:

サイドバー

バーチャルキャスト公式Wiki

メニュー

Steam版

デバイス

アセット

配信

その他

リリース情報

デベロッパー向け


開発環境

GLB

vci:sample:oncollision:no2

以前のリビジョンの文書です


棒で突くと勢いよく飛ぶビリヤードの玉を作る

※この記事は「UniVCI-0.15」時点のものです。

サンプルデータ

手順

オブジェクトが衝突したときの処理になるので「onCollisionEnter」を使用します。

各オブジェクトの設定は次のようになります。
SubItemのGroupIDは0以外で同じ数字にしておきます。
(同じ数字のSubItemはオーナー権が一致し、正しく物理演算が行われる)

GameObjectの「VCI Object」コンポーネントのScriptsのSizeを1に指定し、
Nameに「main.lua」を記入、Sourceに以下スクリプトを記入します。

AddForce(Vector3)はオブジェクトにVector3の力を加えます。

GetUp()でオブジェクトの上向き(ローカルY方向)単位ベクトルを得ることができます。
今回の場合はビリヤードのキューの先端の方向がy方向になっています。

VCIスクリプト

main.lua
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
vci/sample/oncollision/no2.1683603897.txt.gz · 最終更新: 2023/05/09 12:44 by pastatto

ページ用ツール