Language:

サイドバー

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

メニュー

Steam版

デバイス

アセット

配信

その他

リリース情報

デベロッパー向け


開発環境

GLB

vci:sample:onuse:no4

アイテムを使ったときに段階的に小さくなるVCI

SetLocalScaleを利用した、useすると指定した段階で小さくなるVCIです。
主に食べ物などの表現を想定しています。

注意点として、縮小するだけではその場に極小のオブジェクトが残ります。
メッシュを完全に見えなくするには、透明のマテリアルに変更したり、縮小と同時に地下や接触不可な場所に位置変更する等といった方法があります。

サンプルデータ

コンポーネント設定

grab可能なVCIであればOKです。

VCIスクリプト

onUse(use)でuseしたVCIのオブジェクト名を取得し、GetLocalScale()で現在の大きさを取得します。
現在の大きさに対して、定数を引いて小さくしたScaleをSetLocalScale()で適用しています。

上記のスクリプトはコピー&ペースト して使用する事が可能です。grab可能なVCIであればそのまま使用できます。

main.lua
function onUse(use)
    local scale = vci.assets.GetTransform(use).GetLocalScale()
    --scaleにマイナスの値が入らないように、一定以上小さくなったら定数で縮小させます
    if scale.y <= 0.11 then
        vci.assets.GetTransform(use).SetLocalScale(Vector3.zero)
        return
    end
    --1回のuseでsteppointの値だけ小さくなります
    local steppoint = 0.1
    scale.x = scale.x - steppoint
    scale.y = scale.y - steppoint
    scale.z = scale.z - steppoint
    vci.assets.GetTransform(use).SetLocalScale(scale)
end
vci/sample/onuse/no4.txt · 最終更新: 2023/10/11 16:58 by pastatto

ページ用ツール