ngari
2011-01-07, 21:13:02
Hallo,
ich habe mir vor ein paar Wochen mal vorgenommen, eine Art Minecraftklon zu entwickeln --- mittlerweile stehen die Basisklassen (Welt wird als Octree modelliert, OpenGL ueber LWJGL fuers Display). Nun habe ich das Problem, dass ich von den Kamerakoordinaten nicht zu welchen in meinem Octree komme. Um das zu beheben habe ich die letzten paar Tage gegruebelt und etliche Ansaetze probiert, bekam allerdings nur Fail heraus. (Und uebers Suchen habe ich auch die leise Vermutung, dass mein Ansatz vom Prinzip her nicht funktionieren kann. Ich habe OpenGL bisher nur fuer 2D-Sachen mit Rasterisierung benutzt, insofern sind da meine Faehigkeiten eher beschraenkt.)
Die Kamera hat einen Positionsvektor und drei Richtungsvektoren --- das Fliegen im Ghostmode funktioniert prima (und mittlerweile auch beschraenkt auf x- und z-Achsen bewegung ohne Spruenge). Außerdem habe ich 'ne Klasse, zu deren Octreekoordinaten vor der Kameraausrichtung verschoben wird --- die Kamerakomponenten werden passend zwischen 0.0f und 1.0f gehalten und die Octreekoordinaten angepasst. Sollte diese Anpassung in an einer Octreeposition landen, die nicht null ist, gaebe es eine Kollision, nur kann ich immer noch seelenruhig durch Texturen fliegen.
ich habe mir vor ein paar Wochen mal vorgenommen, eine Art Minecraftklon zu entwickeln --- mittlerweile stehen die Basisklassen (Welt wird als Octree modelliert, OpenGL ueber LWJGL fuers Display). Nun habe ich das Problem, dass ich von den Kamerakoordinaten nicht zu welchen in meinem Octree komme. Um das zu beheben habe ich die letzten paar Tage gegruebelt und etliche Ansaetze probiert, bekam allerdings nur Fail heraus. (Und uebers Suchen habe ich auch die leise Vermutung, dass mein Ansatz vom Prinzip her nicht funktionieren kann. Ich habe OpenGL bisher nur fuer 2D-Sachen mit Rasterisierung benutzt, insofern sind da meine Faehigkeiten eher beschraenkt.)
Die Kamera hat einen Positionsvektor und drei Richtungsvektoren --- das Fliegen im Ghostmode funktioniert prima (und mittlerweile auch beschraenkt auf x- und z-Achsen bewegung ohne Spruenge). Außerdem habe ich 'ne Klasse, zu deren Octreekoordinaten vor der Kameraausrichtung verschoben wird --- die Kamerakomponenten werden passend zwischen 0.0f und 1.0f gehalten und die Octreekoordinaten angepasst. Sollte diese Anpassung in an einer Octreeposition landen, die nicht null ist, gaebe es eine Kollision, nur kann ich immer noch seelenruhig durch Texturen fliegen.