Oculus Riftでメーヴェを作ろう(8) フットペダルでターボ加速!
飛行スピードをコントロールする手段は、現状ありませんでした。
けど実際試してみると、ビューンって加速したくなったりします。
そこでナウシカの映画を見たところ、足元のペダルでビューンって加速していました。
ペダルを踏むとエンジンで加速するらしいです。
ふむ、これそのまま実装してみましょう(笑)
工作
秋葉原でフットスイッチを買ってきました。700円くらいでした。
ソッコー切断します。
単純に2本のケーブルがあります。仕組みは普通のスイッチですね。
電子回路
回路はコチラ↓を参考にプルダウン回路で組みました。
http://baticadila.dip.jp/arduino_002.html
プルアップorプルダウンのどちらにするかの判断は
- 通常時ON→プルアップ 回路
- 通常時OFF→プルダウン回路
って考えでよいみたいですね。
普段はターボ加速しない想定なのでプルダウンでいきます。
プログラム
今回もUnityアセットのUNIDUINOを使ったプログラムです。
Arduinoの8番ピンをデジタル入力として使います。
reportDigital()
のところがちょっと謎な気配ですが、チュートリを読んだ所
(byte)(FOOT_SWITCH_PIN/8)
はピンのportを調べるロジックのようです。要はどのピンだろうと、こう書いておけばOKそうです。
int FOOT_SWITCH_PIN = 8; void Start( ) { arduino = Arduino.global; arduino.Setup(ConfigurePins); } void ConfigurePins( ) { arduino.pinMode(FOOT_SWITCH_PIN, PinMode.INPUT); arduino.reportDigital((byte)(FOOT_SWITCH_PIN/8), 1); }
デジタル入力の読み取りはこんな感じです。
スイッチが押されたら、メーヴェを加速させます。
void Update () { if(arduino.digitalRead(FOOT_SWITCH_PIN) == 1){ speedUp(); // 飛行速度の加速メソッド } }
実行
足元にフットスイッチを置きます。
最終的にはメーヴェ筐体(現状でいうダンボール...)の上に装着するつもりです。
フットスイッチ踏んで、、、
ターボ加速!画像じゃわかりませんね(笑)
ターボ加速中は、機体後ろから火炎のようなものを排出します。
振り返らないと見えないけど、火炎が空中に尾を引く感じは爽快です。