Einfaches Head Tracking?
Verfasst: 13.09.2013, 23:51
Hi,
Kann mir jemand Empfehlungen geben, wie man möglichst einfach Head Tracking in seine Anwendung einbinden kann – also, welche Hardware und welche API? Was ich so weit herausgefunden habe:
Die Wiimote ist quasi dafür geschaffen und verbraucht keine Systemressourcen (weil die Hardware alles erledigt). Allerdings soll das Protokoll nicht gerade trivial sein: U.A. soll man den BlueTooth-Stack des Systems von Hand steuern müssen. Öh wie wär’s mit Nein?
TrackIR von NaturalPoint ist der de-facto-Standard im Simulationsbereich, und wird von vielen erfolgreichen Titeln unterstützt. Ich habe mir gestern eines gekauft, aber: Genau so einfach wie es für den User ist, so katastrophal ist es für Entwickler. Für kommerziellen Betrieb muss man eine Lizenz erwerben (was ja machbar ist), aber dann muss man eine viel zu fette DLL mitausliefern (Unterstützung für Motion Capture mit >400 Bones, brauche ich!!1) und es scheint zu den Geschäftspraktiken zu gehören, dass die Unterstützung anderer Hardware vertraglich eingeschränkt wird. Da das Gerät nur verschlüsselt mit dem Treiber kommuniziert und Reverse Engineering totgeklagt wird, will ich mit denen auch nichts zu tun haben (hätte ich das vor dem Kauf gewusst, hätte ich mir das Geld auch gespart).
FreeTrack war bis ungefähr 2010 eine GPL-offene Alternative, die neben jedem denkbaren selbstgebastelten System auch TrackIR-Hardware ansteuern konnte. Damit wäre es für mich perfekt. Dummerweise mussten sie die TrackIR-Hardware auf Druck von NaturalPoint entfernen; jetzt ist es für mich weder besser noch schlechter als alles andere.
FaceTrackNoIR ist ein neuer (und scheinbar offener?) Ansatz, bei dem keine spezielle Hardware zum Einsatz kommt, sondern eine normale Webcam genutzt wird. Das macht wahrscheinlich vieles einfacher, aber bedeutet wohl auch hohe CPU-Last und, sofern man keine 120-Hz-High-End-Webcam besitzt, trägere Reaktion oder geringere Genauigkeit. Für mich als Einsteiger sieht das nach der Zukunft aus, aber vielleicht sehen Experten das anders.
Meinungen?
Rant nebenbei: Da dedizierte Hardware dafür verkauft wird, dachte ich, dass man längst bloß den Sensor auf den Bildschirm setzt und in den USB-Port steckt; man das fertige XYZ aus dem HID-Report ausliest; und die Werte dann eben schnell in die Anwendung steckt. Scheiße anner Latte. Alles Steinzeit. Alles Grabenkämpfe. Kein Konzept. Es gibt hunderte Websites, die zeigen, wie man sich mit Klebeband und Leuchtdioden selber Head-Tracker für die Webcam baut, und ich vermute fast, dass man damit noch besser wegkommt als mit allen Produkten und APIs da draußen. Hilft meinem Publikum leider nicht.
Kann mir jemand Empfehlungen geben, wie man möglichst einfach Head Tracking in seine Anwendung einbinden kann – also, welche Hardware und welche API? Was ich so weit herausgefunden habe:
Die Wiimote ist quasi dafür geschaffen und verbraucht keine Systemressourcen (weil die Hardware alles erledigt). Allerdings soll das Protokoll nicht gerade trivial sein: U.A. soll man den BlueTooth-Stack des Systems von Hand steuern müssen. Öh wie wär’s mit Nein?
TrackIR von NaturalPoint ist der de-facto-Standard im Simulationsbereich, und wird von vielen erfolgreichen Titeln unterstützt. Ich habe mir gestern eines gekauft, aber: Genau so einfach wie es für den User ist, so katastrophal ist es für Entwickler. Für kommerziellen Betrieb muss man eine Lizenz erwerben (was ja machbar ist), aber dann muss man eine viel zu fette DLL mitausliefern (Unterstützung für Motion Capture mit >400 Bones, brauche ich!!1) und es scheint zu den Geschäftspraktiken zu gehören, dass die Unterstützung anderer Hardware vertraglich eingeschränkt wird. Da das Gerät nur verschlüsselt mit dem Treiber kommuniziert und Reverse Engineering totgeklagt wird, will ich mit denen auch nichts zu tun haben (hätte ich das vor dem Kauf gewusst, hätte ich mir das Geld auch gespart).
FreeTrack war bis ungefähr 2010 eine GPL-offene Alternative, die neben jedem denkbaren selbstgebastelten System auch TrackIR-Hardware ansteuern konnte. Damit wäre es für mich perfekt. Dummerweise mussten sie die TrackIR-Hardware auf Druck von NaturalPoint entfernen; jetzt ist es für mich weder besser noch schlechter als alles andere.
FaceTrackNoIR ist ein neuer (und scheinbar offener?) Ansatz, bei dem keine spezielle Hardware zum Einsatz kommt, sondern eine normale Webcam genutzt wird. Das macht wahrscheinlich vieles einfacher, aber bedeutet wohl auch hohe CPU-Last und, sofern man keine 120-Hz-High-End-Webcam besitzt, trägere Reaktion oder geringere Genauigkeit. Für mich als Einsteiger sieht das nach der Zukunft aus, aber vielleicht sehen Experten das anders.
Meinungen?
Rant nebenbei: Da dedizierte Hardware dafür verkauft wird, dachte ich, dass man längst bloß den Sensor auf den Bildschirm setzt und in den USB-Port steckt; man das fertige XYZ aus dem HID-Report ausliest; und die Werte dann eben schnell in die Anwendung steckt. Scheiße anner Latte. Alles Steinzeit. Alles Grabenkämpfe. Kein Konzept. Es gibt hunderte Websites, die zeigen, wie man sich mit Klebeband und Leuchtdioden selber Head-Tracker für die Webcam baut, und ich vermute fast, dass man damit noch besser wegkommt als mit allen Produkten und APIs da draußen. Hilft meinem Publikum leider nicht.