統一規格

概要

SharedKeyAssignとは主として飛行機においてピッチ・ロールやギア操作、射撃等の基本的な操作について、各人があらかじめ設定ファイルを用意することでどの機体でも一人ひとりが自分にあったキー割り当てで操作できるようにする仕組みである。

設定法

まず、前提としてライブラリフォルダを作り、LUA_PATHを設定する必要がある。これの方法についてはライブラリを参照すること。ここで、仮にライブラリフォルダをRigidChips/Lib/とすると、Lib/shared/SharedKeyAssign.luaというファイルを作成し、以下のように

SharedKeyAssign.割り当てる操作 = キー番号

の形でキー割り当てを記述する。 参考用雛形ファイルfileSharedKeyAssign.lua

SharedKeyAssign = {};

SharedKeyAssign.PitchUp = 1;
SharedKeyAssign.PitchDown = 0;
SharedKeyAssign.RollLeft = 2;
SharedKeyAssign.RollRight = 3;
SharedKeyAssign.YawLeft = 4;
SharedKeyAssign.YawRight = 6;
SharedKeyAssign.PowerUp = 5;
SharedKeyAssign.PowerDown = 8;
SharedKeyAssign.Gear = 10;
SharedKeyAssign.ModeChange = 14;
SharedKeyAssign.Fire = 12;
SharedKeyAssign.Shift = 16;
SharedKeyAssign.Option1 = 9;
SharedKeyAssign.Option2 = 10;
SharedKeyAssign.Option3 = 11;
SharedKeyAssign.Option4 = 15;

SharedKeyAssign.UseAnalog = 1;
SharedKeyAssign.AnalogPitch = 1;
SharedKeyAssign.AnalogRoll = 0;
SharedKeyAssign.AnalogYaw = 5;
SharedKeyAssign.AnalogPower = 3;
SharedKeyAssign.AnalogPitchSign = -1;
SharedKeyAssign.AnalogRollSign = -1;
SharedKeyAssign.AnalogYawSign = 1;
SharedKeyAssign.AnalogPowerSign = 1;

SharedKeyAssign.PitchFunc = function()
    return _ANALOG(1)/-1000;
end
SharedKeyAssign.RollFunc = function()
    return _ANALOG(0)/1000;
end
SharedKeyAssign.YawFunc = function()
    return _KEY(6) - _KEY(4);
end
SharedKeyAssign.PowerFunc = function()--出力はキーで十分
    return _KEY(SKA.PowerUp) - _KEY(SKA.PowerDown);
end

SKA = SharedKeyAssign;

ここで、PitchUp〜Option4までが通常のキー操作の割り当てである。

名称役割
PitchUp機首を上げる
PitchDown機首を下げる
RollLeft左にロールする
RollRight右にロールする
YawLeft左にヨーする
YawRight右にヨーする
PowerUpエンジン出力を上げる
PowerDownエンジン出力を下げる
Gearギアを出し入れする
ModeChange複数モードを持つ機体でのモード切替
Fire火器発射
Shift同時押しで特殊操作を持つ機体での同時押しキー
Optionあまったキーをとりあえず書く

!!以下のUseAnalog〜AnalogPowerSignを用いる方法は旧式化し、互換性のためにのみ残されています!!

また、UseAnalog〜AnalogPowerSignまではアナログスティックを使用する場合のキー操作 の割り当てである

名称役割
UseAnalogアナログ操作が可能な機体でアナログスティックを使うなら1,使わないなら0
AnalogPitchピッチ操作に使うアナログスティックの番号
AnalogRollロール操作に使うアナログスティックの番号
AnalogYawヨー操作に使うアナログスティックの番号
AnalogPower出力操作に使うアナログスティックの番号
AnalogPitchSignピッチ操作のアナログ軸の符号。スティック操作と機体の動きが合うように設定する
AnalogRollSignロール操作のアナログ軸の符号。スティック操作と機体の動きが合うように設定する
AnalogYawSignヨー操作のアナログ軸の符号。スティック操作と機体の動きが合うように設定する
AnalogPowerSign出力操作のアナログ軸の符号。スティック操作と機体の動きが合うように設定する

!!ここまで旧式化下部分!!

アナログ対応法

アナログ入力を用いるためには、上記のコードで示されたPitchFunc〜PowerFuncの関数を用います。これらの関数はそれぞれの角速度が正となる方向、すなわち、ピッチアップ、左ロール、右ヨー、出力上昇の方向への入力が正となるように、入力に応じて-1〜1の実数を返すように設定します。モデル側でこれらの関数を_ANALOGと同様に扱うことによって符号や軸の番号にとらわれないアナログ設定が可能となります。

リンク


添付ファイル: fileSharedKeyAssign.lua 1218件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-05-16 (日) 21:52:13