Oculus Rift 3D VR Helm - Mitarbeiter gesucht
-
Wie ihr bestimmt schon gesehen habt ist einer der großen Newcomer auf Kickstarter das 3D Headset Rift:
http://www.kickstarter.com/projects/1523379957/oculus-rift-step-into-the-gameWer das Teil aufhatte und die vorherigen Helme kennt weiss das dieses Mal etwas bezahlbares mit richtiger Sicht herauskommt. Primär denke ich über eine Hardware SDK für 300€ nach das man dort bestellen kann. Wenn dort 4000 Leute dasselbe kaufen sind genügend Entwickler dabei etwas auf den Weg zu bringen. Das ist in ganz anderen Dimensionen als die bisherigen Helme verkauft wurden.
Im Moment gibts da freilich nur DOOM, da man dort mit den Sourcen spielen kann. Ich kenne mich aber mit den Techniken von IZ3D aus, also dem hooken von Spielen und dem manipulieren der Ausgabeansichten. Ich hab da ein lauffähiges Nebenprojekt und mir würde es gefallen diese Technik für alle 3D und OpenGL Spiele umzusetzen. Also 3D splitting für zwei Ansichten und Sichtmanipulation für das Headtracking.Wenn jemand (vorwiegend Grafikprogrammierer) im Raum München/Augsburg auch Interesse hat und sich zufällig mit der Umrechnung von Blickwinkeln auskennt wäre es super hier ein wenig vorzupreschen, das würde bestimmt auf Anhänger stossen. Das müsste in ein zwei Wochen fürs Erste funzen wenn jemand mit den Grafikberechnungen mithilft.
Grüße
TheNoName
-
Dieser Thread wurde von Moderator/in rapso aus dem Forum Spiele-/Grafikprogrammierung in das Forum Projekte verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
-
thenoname schrieb:
Also 3D splitting für zwei Ansichten
ok
und Sichtmanipulation für das Headtracking.
ich behaupte mal das geht nicht ohne den Source des Spiels zu haben
-
Hi,
das mit more3D ist interessant, es gibt also wieder ein IZ3D. Nur den Zusammenhang mit dem Rift habe ich nicht verstanden
Sichtmanipulation:
Doch, ganz einfach. Die Hooks fangen alle DirectX oder OpenGL Aufrufe ab wie z.B. die D3D Berechnungen im Raum. Da bekommt man eine Matrix und rechnet mit der inversen Matrix die Position und Sichtrichtung zurück, je nach Spiel muss nur LeftHanded oder RightHanded eingestellt werden (der Part läuft schon). Diese werden einfach dann manipuliert und um ein paar Grad (je nach Kopflage) verdreht. Wenn der Hook zurückkommt dann hat er die manipulierten Ansichten und gibt diese natürlich an 2 Ansichten. Direct3D besteht zum Glück aus einer großen hookbaren 3D Bibliothek. Fadenkreuz wird im Spiel ausgeschalten, ich will aber primär auch Autorennen damit sehen, dort lässt sich am Besten das HUD ausschalten und ein 3D Kockpit einblenden.
Custom Pixelschader Spiele die rein in der Grafikkarte abgehen sind hier nicht möglich, das sind aber recht wenige.Grüße
TheNoName
-
thenoname schrieb:
Custom Pixelschader Spiele die rein in der Grafikkarte abgehen sind hier nicht möglich, das sind aber recht wenige.
das ist der grossteil der spiele, alles was so ca seit X360 und PS3 auf den markt kam, also die letzten 5Jahre, laeuft auf diese weise ab, weil man es auf konsolen auch so macht. ein paar alte spiele oder homebrew wuerde vermutlich noch mit hooks funzen, aber das ist so sehr randgruppen orientiert, dass es vermutlich kaum jemanden interesiert.
selbst doom3 ist ja schon mit shadern gemacht worden (wobei man dort aufgrund von ARB shadern noch hooks einbauen koennte, wenn das spiel nicht eh re-released werden wuerde bzw source vorhanden waere).
-
Es geht hier nicht um die Shader sondern um den Aufbau der Spieleengine. Diese wird meist nach Lehrbuch aufgebaut und verwendet DX Bibliotheken die man hooken kann. Als Beispiel das es so einfach funktioniert kann man entweder mein Vorprojekt herziehen oder aber auch mal einen Blick auf die Wallhacks bekannter neuer Spiele werfen, die verwenden selbiges.
Custom Pixel Shader Spiele sind für mich diejenigen die selbst die Positionsdaten des Spielers in der Graka halten und nur noch mit Offset Werten gefüttert werden. Also quasi die Matrixumrechnungen nicht mit DXLookAtLH etc. machen sondern von der Graka berechnen lassen. Das wiederspricht jedoch den Lehrbüchern und wird kaum gemacht.
Aber wie gesagt, das funzt ja schon, ich suche nur Leute die den Stereoskopischen Teil mit Shader Verzug nach Oculus verstehen und hier helfen können.
-
thenoname schrieb:
Es geht hier nicht um die Shader sondern um den Aufbau der Spieleengine. Diese wird meist nach Lehrbuch aufgebaut und verwendet DX Bibliotheken die man hooken kann.
lehrbuch fuer spiele engines? :):):)
Als Beispiel das es so einfach funktioniert kann man entweder mein Vorprojekt herziehen oder aber auch mal einen Blick auf die Wallhacks bekannter neuer Spiele werfen, die verwenden selbiges.
wallhacks sind spezialisierte hacks die durch reverse engineering erstellt wurden. dabei werden die daten die zur API uebergeben werden von menschen analysiert und die richtigen herausgegriffen. falls du das vor hast fuer stereo-3d, dann hast du eine chance, das wird aber keine generische loesung die einfach so funktioniert durch hooks irgendwelcher 'standard' calls. sowas wie "matrize uebergeben" nutzt niemand mehr.
Custom Pixel Shader Spiele sind für mich diejenigen die selbst die Positionsdaten des Spielers in der Graka halten und nur noch mit Offset Werten gefüttert werden. Also quasi die Matrixumrechnungen nicht mit DXLookAtLH etc. machen sondern von der Graka berechnen lassen. Das wiederspricht jedoch den Lehrbüchern und wird kaum gemacht.
ich will dir nicht zu nah treten, aber ich glaube deine einschaetzungen basieren auf halbwissen. fast niemand benutzt bei den professionellen spielen D3DX, meistens haben die engine seitige 'custom' loesungen. D3DX mit all den file loadern, matritzen helpern und effect files sind eher an hobby entwickler gerichtet um ihnen zeit zu sparen.
es hat auch nicht nur was mit 'pixel shader' zu tun, es ist die grundsaetzliche arbeit mit allen shadern die dafuer sorgt, dass du eigene werte uebergibst.Aber wie gesagt, das funzt ja schon, ich suche nur Leute die den Stereoskopischen Teil mit Shader Verzug nach Oculus verstehen und hier helfen können.
welche modernen spiele hast du damit zum laufen gebracht? vielleicht hilft die auflistung ein paar leute zu motivieren.
-
Halbwissen - ja, Erfolg - ja. Ich bin Hobbyprogrammierer und Reverse Engeneering ist auch nicht verkehrt wenn dabei sowas rauskommt.
Hmm, Spiele ... also ich denke mal mit UT3 angefangen bis ich zuletzt mal gehört habe das auch der Duke damit läuft.
Aber es ist einfacher die 100% nicht laufenden Games zu zählen. Das wäre Flatout und die zwei HawX Versionen, die sind nämlich mal so richtig geil programmiert was man dann auch spürbar merkt. Naja, mann kann auch dort spezielle Plugins einsetzen denn die Floats der SIchtrichtung werden dort in einem Dreiergrüppchen dem Schader Übergeben anstatt DX Befehle zu bemühen.
Wenn man eine API hat, die alle DX/OGL Befehle deckelt ähnlich dem Tool APIMonitor dann kann man schon von einer guten Reverse Analyse einer Spieleengine sprechen!
Dasselbe habe ich auch für Force Feedback grafisch gemacht, da kommen halt die Sachen ans Licht.