Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Do Mär 28, 2024 10:29

Foren-Übersicht » Programmierung » Mathematik-Forum
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Zwei Quader Mergen
BeitragVerfasst: Fr Aug 17, 2012 09:10 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
Hallöchen allerseits,

Für mein neues Projekt will ich eine Voxel-Engine ähnlich wie Cube schreiben. Dazu sollen die Voxel in einen R-Baum gepackt werden. Die Keys bestehen dabei aus einen Integer
Würfel und die Werte sollen zunächst nur un/gefüllt speicher (diverse Sachen wie Texturen oder Slopes kann man ja noch später machen). Soweit ja alles kein Problem, doch nun
wollt ich das ganze ein Wenig optimieren. Dazu will ich überprüfen ob zwei aneinander angrenzende Würfel zu einen größeren Würfel zusammengefasst werden können. Allerdings
fällt mir gerade irendwie nichts wirklich dazu ein lol

Hier mal die Struktur eines Knotens:

Code:
  1.  
  2. vox_t
  3. {
  4.      vox_t parent;
  5.      int minmax[6];
  6.      bool filled; //parent kann niemals filled sein!!!
  7.      vox_t next;
  8.      vox_t previous;
  9.      vox_t first;
  10.      vox_t last;
  11. }
  12.  

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Zwei Quader Mergen
BeitragVerfasst: Fr Aug 17, 2012 10:26 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 18, 2004 16:45
Beiträge: 2621
Wohnort: Berlin
Programmiersprache: Go, C/C++
Da hab ich auch mal ne Frage.
Wieso ist es ein R-Tree und kein Octree ?
Die Voxel-Systeme von NVidia, AMD und Crytek schreiben, dass sie Octrees verwenden, da man diese gut auf Grafikkarten abbilden kann. Wo liegt der Vorteil vom R-Tree ?

_________________
"Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren"
Benjamin Franklin

Projekte: https://github.com/tak2004


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Zwei Quader Mergen
BeitragVerfasst: Fr Aug 17, 2012 13:18 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
TAK2004 hat geschrieben:
Da hab ich auch mal ne Frage.
Wieso ist es ein R-Tree und kein Octree ?
Die Voxel-Systeme von NVidia, AMD und Crytek schreiben, dass sie Octrees verwenden, da man diese gut auf Grafikkarten abbilden kann. Wo liegt der Vorteil vom R-Tree ?


Ganz einfach in Octrees hast du immer das gleiche Aspectratio für eine Gruppe zusammenhängender Daten also sprich Quader der Größe (n*n*n) [in Fachkreisen auch Würfel
genannt). In einen R-Tree ist man darauf nicht beschränkt und kann richtige Quader der Größe (x*y*z) nehmen. Desweiteren sind Nearest-Neighbour Queries wesentlich
schneller als im Octree (Überleg dir einfach mal wie du einen Strahl durch beide schicken würdest ;) ). Ein Octree lohnt sich demnach erst bei einer sehr sehr hohen Auflösung ,
damit verbunden großer Arbeitsaufwand, und wenig "Abwechslung". Im Prinzip kann man sagen das ein R-Tree zwar weniger aber dafür Aufwänderigere Abfragen hat (was auf einer
GPU natürlich ein no-go ist).

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Zwei Quader Mergen
BeitragVerfasst: Fr Aug 17, 2012 18:43 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 18, 2004 16:45
Beiträge: 2621
Wohnort: Berlin
Programmiersprache: Go, C/C++
Das klingt schon logisch :)

_________________
"Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren"
Benjamin Franklin

Projekte: https://github.com/tak2004


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Foren-Übersicht » Programmierung » Mathematik-Forum


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 13 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.043s | 17 Queries | GZIP : On ]