dynamischer Octree
-
Servus!
rapso->danke()
Das hilft mir schon mal weiter!Potenzielle Bewegungsräume für meine 3DModelle zu erkennen
gestaltet sich für meine Anwendung leider als relativ schwierig,
da ich es dem Endanwender ermögliche einzelnen thematisierten
Objekten beliebige Animationen zuzuordnen, welche wiederum
objektorientiert im Speicher gehalten werden.Jedoch mit BruteForce könnte ich durchaus weiterkommen!
=> Denn jedes meiner 3DModelle verfügt über einen eigenen BoundingTree,
der auf Modell-,Objekt- und Faceebene BoundingSpheres enthält.
Der Kollisionstest jedes 3DModells mit dem ViewFrustrum dürfte dann
ja nicht ganz so aufwendig werden, zumindest wenn ich mich auf die
Modellebene beschränke.Da bleibt mir dann erst mal nichts weiter übrig als ein paar Testläufe
zu fahren!
Schau mer mal, dann sehn mer scho!Danke!
Grüße,
TS++
-
dann mußt du den animationen zuordnen um welchen faktor die bounding volume eines objecktes steigt, wenn die animation dort angehaftet wird, oder sind das KI gesteuerte animationen und du kannst das deswegen nicht wissen?
aber ein paar begränzungen bezüglich maximaler verschiebung der objekte und kameras wirste doch eigentlich haben können, oder?
rapso->greets();
-
rapso! wieviele rechtschreibfehler kann ein mensch eigentlich machen? es heißt "objekt" und nicht "objeckt"! es heißt "potenzen" und nicht "potänzen"!
-
-
Original erstellt von <gormor>:
rapso! wieviele rechtschreibfehler kann ein mensch eigentlich machen? es heißt "objekt" und nicht "objeckt"! es heißt "potenzen" und nicht "potänzen"!sovile ich mag um leute aufzuregen
ach übrigens, du hast vergessen das ich alles klein schreibe
womit ich auch noch gramatische macken habe
weil z.B.
der gefangene Floh
und
der Gefangene floh
so
der gefangene floh
gramatisch falsch ist, da ich zwei verb'n drinne habe ohne substantivdanke dass du dich aufrägst, ich genisse es!
rapso->greets();
ps. ich mag die sprache in der man sich die rechtschreibung selber bestimmen kann, c++
#define inteagae int
-
@rapso
Da kommt mir gerade eine Idee!
Prinzipiell hast du recht.
Das war vielleicht ein Denkfehler von mir!=> Ich geh jetzt einfach mal davon aus, dass der Endanwender keine
eigenen Animationen definieren kann, sondern lediglich vordefinierte
Animationen verwendet werden können. Dann ist ja bereits vor der Animation bekannt, welche einzelnen Animationsschritte, also neue Position und neues
lokales Koordinatensystem, auf das jeweilige Modell anzuwenden sind.
D.h.: ich könnte doch zuerst einen BoundingTree für den Animationspfad beschreiben und dann eine Kollisionserkennung zwischen Animationspfad
und ViewFrustrum durchführen.
Und nur falls die Kamera den Animationspfad einfängt, werden die Modelle, die
sich auf diesem Pfad befinden gerendert!
Das wär doch mit Sicherheit schon mal eine wesentliche Verbesserung!
Mal schaun . . .Grüße,
TS++
-
wird bestimmt prima laufen
du könntest zusätzlich vielleicht die animation in abschnitte einteilen und für die je eine bounding volume generieren falls die animation länger dauert, aber so meinte ich das ungefähr auch (auch wenn es vielleicht aus meinem wort-matsch nicht ersichtlich war (im 2. posting))
woran arbeitest du eigentlich, klingt ja als würdest du dir sehr viel mühe geben
rapso->greets();
-
ps. ich mag die sprache in der man sich die rechtschreibung selber bestimmen kann, c++
#define inteagae int#define = C
-
Ursprünglich handelte es sich bei meinem Projekt lediglich um
einen kleinen 3DModellierer, ohne auffällige Besonderheiten.
Ich war als WI-Student ein absoluter Neuling auf dem Gebiet der
Grafikprogrammierung und wollte in meiner Freizeit auch mal neben
Datenbanken für Wissensmanagment und Kostenrechnungssystemen
Neuland kennenlernen. Seit dem hat sich sehr viel an dem ursprünglich
kleinen Tool geändert, da mir immer wieder neue Knacknüsse in den
Sinn kamen, die ich ja aber, als Neuling, auch selber wieder knacken musste.
Seit mir schließlich einer meiner Dozenten angeboten hat, mein Projekt
als Basis für meine Diplomarbeit zu verwenden, lässt mich die fixe Idee
nicht mehr los, die Anwendung soweit auszubauen, bis mit ihr die Modellierung
kompletter dreidimensionaler Welten möglich ist(incl. Animationen).Jetzt wirst du verstehen warum ich so viel Zeit in das Projekt investiere!
Ein Diplom ist doch ein guter Anreiz!Grüße,
TS++PS: Wie bist du eigentlich bei diesem Haufen hier gelandet?
-
also mit dem erstellen von polys und CSG drinne? alles?
sowas wie der quake level editor oder wie kann ich mir das vorstellen? *g*
rapso->greets();
-
Das kommt schon ungefähr hin!
Nur hab ich zunächst vor, mich bei den 3DModellen erst einmal
auf eine vorgegebene Bibliothek zu beschränken, deren Modelle dann
bezüglich ihrer Texturen, Farben, Oberflächenbeschaffenheit usw.
verändert werden und in der Szene plaziert werden können. Einzelnen
3DModellen oder 3DModellgruppen können dann wieder aus einer Bibliothek
entnommene Animationen zugeordnet werden. Ebenso sind die einzelnen
Modelle logisch miteinander verbunden. D.h.: der Benutzer soll die Möglichkeit
haben Reaktionen auf bestimmte Ereignisse einzubauen.
z.B.: sobald Lichtquelle1 eingeschaltet wird, soll Modell31 mit seiner Animation beginnen, worauf 10 Sekunden lang die Soundquelle26 aktiviert
bleibt. Terrain und SkyBox sollen natürlich ebenfalls modifizierbar bleiben.
Vergleichbar wäre vielleicht, was das Grundprinzip anbelangt, das 3DGameStudio.
Allerdings ohne Skripsteuerung. Denn wenn ich jetzt auch noch Parser und Tokenizer für eine eigene Skriptsprache implementieren müsste, würde ich
glaub ich durchdrehen. Kommerziell wollte ich die Anwendung eigentlich garnicht
nutzen.Ich schau mal wie weit ich komm!
Grüße,
TS++[ Dieser Beitrag wurde am 10.04.2003 um 18:09 Uhr von TS++ editiert. ]
-
das ist ne freie scriptsprache, ich nutze sie noch net viel, aber ich kenne viele leute die von z.B. python drauf umgestiegen sind. sie soll relativ einfach sein in jeder hinsicht und trotzdem gut!
also das nur als tip
rapso->greets();