統一規格

概要

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と同様に扱うことによって符号や軸の番号にとらわれないアナログ設定が可能となります。

リンク

  • orz13448 : SKA設定の妥当性を検査するためのチェッカー。

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

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-06-21 (日) 23:22:12 (3043d)