Аз присъствах на събитието Oculus в GDC тази година, където за пръв път чух, че Pinball FX2 VR е в процес на разработка. Опитах играта и след 5 минути знаех, че искам да създам интерфейс за VR. VR компонентът решава най-голямото ми схващане с традиционните "виртуални" игри с пинбол - не можете да движите главата си, за да получите по-добро четене на ударите или топката. Както и да е, след като дата на излизане на Oculus беше седмица по-късно, направих пътуване до Walgreens и взех два листа ядро от пяна. Вече имах всичко останало (събирах и управлявах истински игри с пинбол в продължение на години и съм пристрастен купувач на Adafruit).
Започнах с измерване на размерите на предното тяло на истинска пинбол игра и след това изрязах реплика 1: 1 от ядрото на пяната. След това измерих разположението на бутоните, изрязах ги и ги залепихме цяла нощ. Измерих точно височината на тялото и прикрепените крака, като използвах неподвижен болт / скоба за крака. Бутоните и джойстика са доста общи. Важно беше, че флип бутоните не „щракват“, така че ще се почувства реалистично. Мислех, че ще трябва да инсталирам реални ключове за пинбола, но тези мълчаливи 30мм полупрозрачни от Adafruit работят чудесно за сега. Джойстикът не казва „пинбол“, но е необходимо да се движите в менютата.
Всичко е свързано с макет с микроконтролер Teensy LC, свързан чрез USB към компютъра. В Teensy има режим, който удобно заблуждава един компютър да мисли, че е генеричен геймпад, така че кодът просто превръща заземените щифтове в емулирани натискания на бутона на геймпада. Има и акселерометър, който преобразува X / Y движението в аналогов стик за геймпад за бутане на масата. Бутоните за старт и за гмуркане са предварително инсталирани, така че аз просто ги свързах с USB 5V линията.
Най-голямото препятствие беше играта да разпознае геймпада. За съжаление Teensy не поддържа Xinput, а играта поддържа само Xbox геймпадове. За щастие намерих тази прекрасна програма с отворен код, наречена x360ce, която прихваща генерични сигнали и ги конвертира в Xinput. Проблема решен!
След това искам да заменя бутона "стартиране" с истинско бутало. Имам всички части, аз просто трябва да вземе решение за метод за преобразуване на движението на вала до последователен аналогов сигнал. Имам сгъваеми резистори, IR детектори за разстояние и сонари, с които да играя. След това ще се опитам да убедя приятеля си от дърводелеца да помогне да се отреже рамката от нещо по-красиво от ядрото на пяната. Изглежда, че има интерес и към схематични планове и код, така че ще намеря начин да споделя всичко това, когато е направено.