そういえば機関誌にプログラムなことを何も書いていなかったなと思ったので、せっかくなので書いておきます。
開発環境
- VisualC++ 2008
- DXライブラリ
- wiiuse バージョンは0.12を使用
- Wiiリモコン
- ブルートゥースを使える環境
今回用いた環境はいわゆるいつもの環境、C++とDXライブラリで、それにwiiリモコンの状態を取得するライブラリであるwiiuseというものを用いて作りました。リンク先見ればわかると思うのですが、英語なのでココのサイトを参考に環境のセットアップを行ないました。
また神籤箱のモデリングとしてメタセコイヤLEを使用しました。
また神籤箱のモデリングとしてメタセコイヤLEを使用しました。
環境のセットアップ
基本的にはDXライブラリのセットアップと同一とします。
追加として、wiiuseのライブラリファイルやdllとか一式全部をカレントディレクトリにぶっこんでおきます。
追加として、wiiuseのライブラリファイルやdllとか一式全部をカレントディレクトリにぶっこんでおきます。
プログラミング
wiiリモコンの加速度をグラフで表示するプログラム。
テスト用のソースファイル
上記を参考に適当にやってください。パスはいつものごとく「soft」です。
加速度の取得とボタンの入力、LEDを光らすことができちゃいます。このプログラムを起動する前にwiiリモコンをPC上で認識させておく必要があります。普通のBluetooth機器の接続と同じような形でwiiリモコンも接続することができます。
また今回このプログラムでは使っていませんが、赤外線関連のこともできるみたいです(関数名にirって書いてあるやつがそれっぽい)。
テスト用のソースファイル
上記を参考に適当にやってください。パスはいつものごとく「soft」です。
加速度の取得とボタンの入力、LEDを光らすことができちゃいます。このプログラムを起動する前にwiiリモコンをPC上で認識させておく必要があります。普通のBluetooth機器の接続と同じような形でwiiリモコンも接続することができます。
また今回このプログラムでは使っていませんが、赤外線関連のこともできるみたいです(関数名にirって書いてあるやつがそれっぽい)。
おみくじの実際のプログラムはあまりにもカオスだったので上げません。欲しい人がいたらあげますが……
おみくじを振るという動作に関してですが、一定時間内に垂直方向の加速度がある一定以上超えたのが何回か続いたらという判定をしています。ここで重要なのは下方向への重力がかかったという判定をしているところです。上下に揺れる加速度の判定は非常に難しいので下方向への加速度が複数回かかったらにしています。これは通常の重力より大きな加速度がかかったらということです。
おみくじを振るという動作に関してですが、一定時間内に垂直方向の加速度がある一定以上超えたのが何回か続いたらという判定をしています。ここで重要なのは下方向への重力がかかったという判定をしているところです。上下に揺れる加速度の判定は非常に難しいので下方向への加速度が複数回かかったらにしています。これは通常の重力より大きな加速度がかかったらということです。
添付ファイル