ユーザ用ツール

サイト用ツール


vci:script:reference:vciinput

vci.me.GetAxisInput() (キー入力)


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 Is.Mine then の中にInputを書くと、VCIを出した人のみでキー入力が有効になる)

GetButtonInput()

引数:number 戻り値:bool
引数に対応するボタンが押されてる場合はtrue,押されてない場合はfalseを返します。

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

GetAxisInput()

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

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

スクリプトサンプル

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 · 最終更新: 2019/09/20 15:17 by navana

ページ用ツール