~~NOTOC~~ ====== ExportMe GetXXInput(キー入力) ====== このページは過去の情報となります。\\ 新しいスクリプトリファレンスは**[[https://developer.virtualcast.jp/vci-docs/api/|こちら]]**になります。 VCIでキーボードの入力を受け取ります。\\ **キー入力の受付はVirtualCastのクライアントがアクティブである必要があります。\\ ※マウスカーソルでソフトをクリックするとアクティブ状態になります。** ^ 名前 ^ 説明 ^ バージョン ^ | [[vci/script/reference/vciinput#GetAxisInput ]] | VCIのキー操作の入力受付 | | | [[vci/script/reference/vciinput#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:setting:control|設定(コントロール)]]から変更する事ができます。 * キー入力の受付は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が入ります。\\ -- キーの状態がVector3でsxisに格納されます local axis = vci.me.GetAxisInput() -- コンソールに表示 print(" axis : "..tostring(axis)) ===== GetButtonInput ===== **GetButtonInput fun(id: number): boolean**\\ 引数に対応するボタンが押されてる場合はtrue,押されてない場合はfalseを返します。\\ -- Key1が押された場合、コンソールに表示 if vci.me.GetButtonInput(1) then print(" Button1 が押されました。") end ===== サンプル ===== 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:sample:input:sample1 | キーボードの入力で移動・拡縮・回転するVCIを作る]]