scenegraph transformation
-
ich muss jetzt auch noch meinen senf dazu geben.

imho ist ein scenegraph ist ein azyklischer, gerichteter und gewurzelter graph, deren elemente(blätter) knoten sind. und leaf ist der letzte knoten, sprich grösste baumtiefe, aber auch ein knoten.
wobei das leaf bei mir immer die geometry war.
http://de.wikipedia.org/wiki/Typen_von_Graphen_in_der_Graphentheorie
-
dali schrieb:
Also ich habe zb Klassen Node, Transform und Geometry:
class Transform { ... }; class Node: public Transform { Transform* childs[] }; class Geometry: public Tranform { .. };interresanter ansatz, dieses erklärt auch deine depth-first traversierung.
wie sehen den deine restlichen nodes, nur die vererbung, aus? den wofür brauch zb. ein shader node eine transformation? so schaffst du dir doch unnötige abhangigkeiten und vergeudest rechenzeit, denn du müsstest immer die transformation berücksichtigen ausser du machst noch ne abfrage die
überrpüft ob eine transformation stattgefunden hat.
-
miller_m schrieb:
imho ist ein scenegraph ist ein azyklischer, gerichteter und gewurzelter graph, deren elemente(blätter) knoten sind. und leaf ist der letzte knoten, sprich grösste baumtiefe, aber auch ein knoten.
Endlich einer, der mitdenkt.
Aber Achtung. Leafs und Blätter sind verschieden Worte für das Gleiche. Alle Leafs/Blätter sind Knoten aber nicht alle Knoten sind Blätter. Knoten die keine Blätter sind, nennt man innere Knoten. Zudem besteht der Graph nicht nur aus Knoten, sondern auch als Kanten!
Bye, TGGC
-
Ich habe hier Transform nur als ein Beispiel genommen welches Node als Kinder hat damit dann nicht Node als Leaf dasteht was man ja normalerweise auch nicht will denn ein Leaf hat ja eben keine Kinder. Statt Transform würd ich eben ne andere Klasse nehmen die dann die lokale und globale Transform beinhaltet und die dann auch solche Überprüfungen macht wie du gesagt hast. Von Node kannst du dann solche sachen wie Switchnode, BillboardNode, BspNode etc ableiten...
-
dali schrieb:
damit dann nicht Node als Leaf dasteht
Blätter in einem Baum sind Knoten, egal wie beknackt du deine Klassen benennst. Kapier's doch endlich.
Bye, TGGC
-
@dali: Warum ist ein Geometry Node eigentlich ein Transform-Node? Was hat das miteinander zu tun?
Das sollte von der Klassenhierarchie doch eher so aussehen:
Node
- Geometry
- ...
- Group
-- Transform
-- LOD
-- Switch
-- ...
-
TGGC schrieb:
dali schrieb:
damit dann nicht Node als Leaf dasteht
Blätter in einem Baum sind Knoten, egal wie beknackt du deine Klassen benennst. Kapier's doch endlich.
Bye, TGGC
Lies dir einfach mal ne Lektüre durch 8).
malignate schrieb:
@dali: Warum ist ein Geometry Node eigentlich ein Transform-Node? Was hat das miteinander zu tun?
Geometry ist kein Transform Node hat aber eine lokale und globale Transformation.
malignate schrieb:
Das sollte von der Klassenhierarchie doch eher so aussehen:
Node
- Geometry
- ...
- Group
-- Transform
-- LOD
-- Switch
-- ...Versteh ich nicht.
-
dali schrieb:
TGGC schrieb:
dali schrieb:
damit dann nicht Node als Leaf dasteht
Blätter in einem Baum sind Knoten, egal wie beknackt du deine Klassen benennst. Kapier's doch endlich.
Bye, TGGC
Lies dir einfach mal ne Lektüre durch

Das habe ich schon lange.
Bye, TGGC
-
Man merkts schon lange 8).
-
da ich gerade bei amazon etwas stöbere kennt jemand ein gutes buch, deutsch oder englisch, das sich mit dieser thematik(scenegraphen) auseinander setzt?
-
Da frägst du am Besten TGGC 8).
-
dali schrieb:
Da frägst du am Besten TGGC 8).
ROFL es geht mir nicht um die definition von node und leaf, welches könntest du mir empfehlen.
-
Bei uns in der Vorlesung wurde glaube das empfohlen http://www.amazon.com/exec/obidos/tg/detail/-/0201624958/103-4609455-9603831
Habs aber nicht getestet...
Bye, TGGC
-
TGGC schrieb:
Bei uns in der Vorlesung wurde glaube das empfohlen http://www.amazon.com/exec/obidos/tg/detail/-/0201624958/103-4609455-9603831
ist sehr auf den inventor bezogen, falls allerdings grundlegende dinge geklärt werden würde ich es mir zulegen. hat es irgend jemand gelesen oder kennt jemand ein anderes?