Language:

サイドバー

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

メニュー

Steam版

デバイス

アセット

配信

その他

リリース情報

デベロッパー向け


開発環境

GLB

vci:script:reference:vciinput

ExportMe GetXXInput(キー入力)

このページは過去の情報となります。
新しいスクリプトリファレンスはこちらになります。

VCIでキーボードの入力を受け取ります。
キー入力の受付はVirtualCastのクライアントがアクティブである必要があります。
※マウスカーソルでソフトをクリックするとアクティブ状態になります。

名前 説明 バージョン
GetAxisInput VCIのキー操作の入力受付
GetButtonInput VCIのキー操作の入力受付

キー入力の概要

VCI操作キー キーバインド(デフォルト) スクリプト 取得可能な値
Forward Up Arrow (カーソルキー上) vci.me.GetAxisInput().z Z = +1
Backward Down Arrow (カーソルキー下) vci.me.GetAxisInput().z Z = -1
Left Left Arrow (カーソルキー左) vci.me.GetAxisInput().x X = -1
Right Right Arrow (カーソルキー右) vci.me.GetAxisInput().x X = +1
Up U vci.me.GetAxisInput().y Y = +1
Down I vci.me.GetAxisInput().y Y = -1
Key1 1 (数値の1) vci.me.GetButtonInput(1) true,false
Key2 2 (数値の2) vci.me.GetButtonInput(2) true,false
Key3 3 (数値の3) vci.me.GetButtonInput(3) true,false
Key4 4 (数値の4) vci.me.GetButtonInput(4) true,false
  • 使用可能なキーは上記の10種類です。
  • キーバインドはバーチャルキャストの設定(コントロール)から変更する事ができます。
  • キー入力の受付はVirtualCastのクライアントがアクティブ※である必要があります。
    ※マウスカーソルでソフトをクリックするとアクティブ状態になります。
  • GetAxisInput()では、キー入力をXYZ軸入力に変換した値をVector3で取得できます。
    ただし値は -1,0,1 の3種類しか入りません。(-1~1のアナログ値ではない)
  • GetAxisInput()はキーを押している間値が入ります。何も入力していなければ0を返します。
  • キー入力はVCIスクリプトを実行しているクライアントのキー入力しか受け取りません。
    (if vci.assets.IsMine then の中にInputを書くと、VCIを出した人のみでキー入力が有効になる)

GetAxisInput

GetAxisInput fun(): Vector3
Forward,Backward,Left,Right,Up,Downに対応するキーが押された状態のVector3を返します。
押されていない場合は0が入り、押されている場合は-1か1が入ります。

main.lua
    -- キーの状態がVector3でsxisに格納されます
    local axis = vci.me.GetAxisInput()
 
    -- コンソールに表示    
    print(" axis : "..tostring(axis))

GetButtonInput

GetButtonInput fun(id: number): boolean
引数に対応するボタンが押されてる場合はtrue,押されてない場合はfalseを返します。

main.lua
    -- Key1が押された場合、コンソールに表示
    if  vci.me.GetButtonInput(1) then
        print(" Button1 が押されました。")
    end

サンプル

main.lua
function update()
 
    -- 軸入力を取得する。
    local axis = vci.me.GetAxisInput()
 
    if axis.x ~= 0 then
        print(" X : "..tostring(axis.x))
    end
 
    if axis.y ~= 0 then
        print(" Y : "..tostring(axis.y))
    end
 
    if axis.z ~= 0 then
        print(" Z : "..tostring(axis.z))
    end
 
    if  vci.me.GetButtonInput(1) then
        print(" Button1 が押されました。")
    end
 
    if  vci.me.GetButtonInput(2) then
        print(" Button2 が押されました。")
    end
 
    if  vci.me.GetButtonInput(3) then
        print(" Button3 が押されました。")
    end
 
    if  vci.me.GetButtonInput(4) then
        print(" Button4 が押されました。")
    end
 
end

各キーが押された結果をコンソールに表示するサンプルです。

サンプルVCI

vci/script/reference/vciinput.txt · 最終更新: 2023/06/01 11:13 by pastatto

ページ用ツール