# Tipp fürs Rendern gesucht?



## Horschie (5. Feb 2009)

Hallo,

wie könnte ich folgendes Objekt in Jogl rendern (3D) ? 







Die Daten liegen als Vektor vor. Start- und Endpunkt sind bekannt. Die Radien sind ebenfalls als Vektor interpoliert. 

Was ich suche ist ein Hinweis, Algo, o.ä. mit welchem ich die obere FLäche des Würfels am geschicktesten berechnen kann? Gewiss als Polygonfläche...aber wie definiere ich die Kanten am geschiktesten? 


DAnke
Christoph


----------



## 0x7F800000 (5. Feb 2009)

Bist du dir sicher, dass du für so eine "relativ platte" Form ein Polygonnetz mit 672654 vertices haben willst?
Wäre es mit einer Bump-Map auch schon getan?


----------



## 0x7F800000 (5. Feb 2009)

ansonsten gibt's in OGL irgendwelche "evaluatoren"
Stichworte:
glMap1
glMap2
glMapGrid1
glMapGrid2
glEvalMesh
glEvalCoord

damit soll man irgendwie praktisch parametrisierte kurven und flächen rendern können, aber da hab ich noch kA von, hab das ebengrad aus einem OpenGL Buch für die Uralte version 1.2 ausgekramt (ja, ich weiß, scheiße ist's , aber allzuviel wird sich an Grundprinzipien da bis 2.0 wohl nicht verändert haben)


----------



## Horschie (5. Feb 2009)

Danke.

Bumpmapping scheidet wohl aus, da dies nur ein exemplarisches Beispiel ist. Hmmm....es se idenn ich könnte die Bumpmaps in Java einfach berechnen und dann anweden...das wär natürlich ne Idee...

nach dem rest schau ich noch


----------



## 0x7F800000 (5. Feb 2009)

JOGL unterstützt definitiv auch bumpmaps. Ausrechnen ist auch Kinderkram: erzeugst eine Textur, die die tiefe angibt, und machst das gelbe ein bisschen tiefer. Programme gibt's dafür bestimmt auch.


----------



## Horschie (7. Feb 2009)

Also so ganz komme ich da leider nicht weiter. Da fehlts irgendwie an den Grundlagen. 

nehmen wir mal an, der Klotz oben sollte 100x100x100mm groß sein. Wie würde man das angemessen in Pixeln machen? 

1mm = 1 Pixel? 
0,1mm = 1 Pixel? 

Ein paar versuche habe ich durch...eine Heightmap erstellt und dann Dreiecke gezeichnet. nur bei 1000x1000 Pixeln wird das recht lahm...


----------



## 0x7F800000 (7. Feb 2009)

bwoah, hast du jetzt die rieesigen weißen flächen in zig millionen klitzekleine Dreiecke aufgebröselt und wunderst dich, dass es langsam wird? 

Nee, wenn schon in dreiecke aufbrechen, dann muss man schon mit etwas feineren methoden drangehen.
Spontan würde ich vorschlagen, die Oberfläche mit einem Quadtree in dreiecke zu zerlegen. Dann würden die großen weißen flächen auch mit großen Dreiecken dargestellt werden, und feinere Unterteilung wäre nur an den Rändern der gelben Kurve nötig. Da gibt's aber noch wesentlich coolere Algos...


----------

