Home | Forum | XNA.mag - Fragen | XNA - 3D-Programmierung | Allgemeine Draw Methode für Modelle
Allgemeine Draw Methode für Modelle
| |
|
|
| |
daniel.weber Member
Anmeldedatum: 21.03.2012 Beiträge: 12
|
Verfasst am: 21.03.2012, 13:05 Titel: Allgemeine Draw Methode für Modelle |
|
Hallo zusammen,
ich bin seit heute hier im Forum angemeldet, lese aber schon seit einiger Zeit interessiert mit.
Ich arbeite mich derzeit in XNA 4.0 ein und versuche mich daher in einer kleinen 3D Gameengine.
Nun bin ich aber auf eine grundlegende Frage gestoßen, für die ich einfach nicht wirklich eine Antwort finde.
In meiner Draw-Methode sollen allgemein Modells aus meiner Modell-Klasse gezeichnet werden. Bei dem "normalen" Modell-Typ aus XNA macht man das ja in etwa so:
| Code: | foreach(ModelMesh mesh in model.Meshes)
{
foreach (BasicEffect effects in mesh.Effects)
//...
}
mesh.Draw();
} |
Soweit so einfach... Jetzt kann meine Modell-Klasse aber auch Modelle enthalten, die nicht durch den Content geladen werden, sondern zur Laufzeit berechnet werden, diese liegen dann in einer Liste als VertexPositionNormalTexture vor, werden dann in einen VertexBuffer gespeichert und von da über die DrawPrimitives-Methode aus dem GraphicsDevice gezeichnet.
Das ist aber recht umständlich, da ich zwei Methoden habe. Gibt es keine Möglichkeit die Modells, die über Content geladen werden in die VertexPositionNormalTexture-Form "umzuwandeln", so dass ich alles mit einer einzigen Draw-Methode zeichnen lassen kann?
Viele Grüße
Daniel |
|
| Nach oben |
|

|
Glatzemann XNA.mag - Team
Anmeldedatum: 24.07.2009 Beiträge: 7420 Wohnort: Leverkusen
|
Verfasst am: 21.03.2012, 13:14 Titel: |
|
Sinnvoll und performant geht das eigentlich nur, wenn du einen eigenen Model-Prozessor schreibst und auf den Komfort der Model-Klasse verzichtest.
Aber warum ist es so schlimm, wenn du zwei unterschiedliche Methoden zum rendern hast? Da werden unter Garantie noch mehr hinzukommen  _________________ MVP · starLiGHT · "Mit ohne Haare" · ANX
|
|
| Nach oben |
|

|
daniel.weber Member
Anmeldedatum: 21.03.2012 Beiträge: 12
|
Verfasst am: 21.03.2012, 13:18 Titel: |
|
naja schlimm ist das jetzt nicht, bin nur immer bemüht alles so allgemein wie möglich zu schreiben
einen eigenen Model-Prozessor traue ich mir glaube nicht zu, oder kannst du da ein gutes Tutorial zu empfehlen? |
|
| Nach oben |
|

|
Glatzemann XNA.mag - Team
Anmeldedatum: 24.07.2009 Beiträge: 7420 Wohnort: Leverkusen
|
Verfasst am: 21.03.2012, 13:25 Titel: |
|
Nein, hab leider keines zur Hand.
Ich würde in den Render-Manager oder wie auch immer du renderst halt unterschiedliche Render-Methoden packen. Eine kann halt ein Model rendern und eine andere rendert halt Vertex- und/oder Index-Buffer in Verbindung mit einem Custom-Effekt. Mach einfach Überladungen, dann bleibt das schön übersichtlich. _________________ MVP · starLiGHT · "Mit ohne Haare" · ANX
|
|
| Nach oben |
|

|
daniel.weber Member
Anmeldedatum: 21.03.2012 Beiträge: 12
|
Verfasst am: 21.03.2012, 13:27 Titel: |
|
ja ich denke auch, dass ist die einfachste Möglichkeit. Vielen dank für den Tipp  |
|
| Nach oben |
|

|
|
|
|
 |
 |
 |
 |
|
Alle Zeiten sind GMT + 1 Stunde
|
| Seite 1 von 1 |
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de