まず前半はキーマトリクスを用いて、認識できるキーを増やした(今回は2x2)。
各スイッチにダイオードを繋げておくのがポイントで、これがないとスイッチを3つ同時に押した際に電流が逆流して、残りの押してないキーが押された判定になってしまう。
後半は、seeeduino内のプルアップ抵抗を利用することで、上図の2つの抵抗を省略できるようにした。
とりあえずここまで出来た。 次はキーマトリックスでスイッチを増やす。
DirectInputとかXInputとかは一旦置いといて、とりあえずキーボードをなぞる方式で実装する予定。
・オリジナルキーボードを作ってみる まとめ
・mhama/M5StackHIDCtrlAltDel
春休みに遊んでたWS2812B等について。
・FastLEDライブラリの入手先
・解説スライド
http://cms.db.tokushima-u.ac.jp/DAV/person/S10723/ロボットをつくろう/春夏講座ー前編/Lecture05/slide05appendix.pdf
・64個のLEDでレインボーカラー。シリアルLEDのWS2812BとArduinoで簡単に実現
○seeeduinoの場合...
ボード: "Seeeduino V4(Atmega328P)"
書込装置: "AVRISP mkII"
一度開けば共有されるはず...
merl_shareにOffice等の最新版が置いてあるので更新したい人はどうぞ、とのこと
"cd C:\temp\platform-tools"でドライバのあるフォルダに移動(場所は任意の場所でおk)。
"adb devices"で接続状況の確認。
"adb install C:\...\AppName.apk"でapkファイルの場所を指定してインストール。
Android向けにアプリをビルドしようとすると、
"Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details. See the Console for details."
というエラーが出てビルドに失敗した。
Unityのバージョンを2018.1.3f1、JDKを1.8.0_66、SDKのtoolsフォルダを22.0.5にしたら通った。
ネット曰く『myObj.renderer.material.color = myColor;』で可能とのことだが失敗。
『myObj.GetComponent<Renderer>().material.color = myColor;』で成功した。
要領は前回とほぼ同じ。
スコア計算に必要な値はシリアルモニタで適宜確認する。
自主課題研究で誰かが実装途中までやってたテトリスを、自分も作ってみた。
入出力先をTFT液晶&付属していたジョイスティック用に整えるだけで完成。
・使用したパーツ: Adafruit 1.8インチTFTシールド
・コードの参考: 【プログラミング】テトリスを1時間強で作ってみた【実況解説】
たった1時間(開発環境のインストール時間込み)で作るとは...
・ライブラリAdafruit_ST7735の説明: Adafruit 1.8" SPI display のライブラリを読む
・カラーコードの参考: 16bit Color Picker & Color List
Adafruit_ST7735では16ビットカラーで色を指定できる。
・被験者のVR経験や年齢は?
・年齢によるVRへの体質差があるか?
・車酔いとも関係がありそう
・HMDの解像度の低さ→酔いに
・実験の順番をランダムにするとなお良い