Echtzeit LOD genau wie beim Terrain
Übersicht

![]() |
rctunerBetreff: Echtzeit LOD genau wie beim Terrain |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
Gibts es eine Möglichkeit ein LOD wie bei den Blitz Terrains auf Meshes anzuwenden? Brauche dies wirklich dringend... Bin mir auch über den geschwindigkeits verlusst bewusst. |
||
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu [AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB] |
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Im Samples-Ordner im Blitz3D-Verzeichnis gibt's glaub ich sowas ... | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Dynamisch gibts bei anderen Meshes nur auf Basis von vorgegebenen LoD Levels.
Progressives LoD taugt nichts bis nicht sehr viel. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
rctuner |
![]() Antworten mit Zitat ![]() |
---|---|---|
wie sieht es mit smoothen aus?
für meine zwecke könnte ich auch einfach ein low poly laden und dann smoothen lassen... |
||
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu [AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB] |
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
durchs smoothen(jedenfalls mit Wings), bekommst du ja mehr polys, also das das model runder wirkt.
Das High-Poly lässt du dann zb. bis zu einer Distanz von 50 oder jenachdem eniger oder mehr anzeigen und wenn es diese Grenze überschreitest, hidest du es und zeigst dafür das Low-Poly an. hierzu brauchst du noch nicht mal mit 2 Dateien zu arbeiten, erstelle einfach 2 mal das gleiche model in der Datei und lade es als anim mesh, mittels childs kannst du dann beide auslesen und je nach bedarf anzeigen lassen. |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
rctuner hat Folgendes geschrieben: wie sieht es mit smoothen aus?
für meine zwecke könnte ich auch einfach ein low poly laden und dann smoothen lassen... Wenn dir Vornoi Diagramme und so was sagen, wärs vielleicht möglich, ist nur ein beträchtlicher Aufwand bei allgemeinen Formen. Aber da Blitz nicht auf dynamische Meshes optimiert ist wäre dann "high poly" 2000-3000 polygone und maximal 20 objekte oder so davon, damit wärs du dann vermutlich an der grenze Darum lieber 5 LoD Level zb, damit kannst du problemlos das 10fache durchjagen ![]() |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
rctuner |
![]() Antworten mit Zitat ![]() |
---|---|---|
danke für die Antworten.
Dass Problem ist aber, dass ich mein Wasser optimieren möchte und diesen Code auf die geteilten Wasser-Platten anwenden muss:Code: [AUSKLAPPEN] Function UpdateWater() For aW=0 To VertexCount-1 Freq#=MilliSecs()/10 Vertex(aW)\z#=Sin(freq+Vertex(aW)\x#*300+Vertex(aW)\y#*400)*0.04 VertexCoords surface,aW,Vertex(aW)\x#,Vertex(aW)\y#,Vertex(aW)\z# Next UpdateNormals watermesh End Function Umso mehr Polys die Platten haben, umso besser sehen die Wellen aus, welche durch den Code oben erzeugt werden. Sagen wir ich hab jetzt 5 Platten, eine von ihnen ist 30 m lang. Diese werden dann zusammen gelegt, sodass ich ein Meer habe. Die weit entfernten Platten werden versteckt um die Geschwindigkeit zu erhögen. Wie könnte ich dann den Code um Wellen zu erzeugen nur auf zB 50 m Radius von mir anwenden? Denn wenn ich alle Platten mit der Funktion Update, zieht das ziemlich an Geschwindigkeit... |
||
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu [AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB] |
![]() |
Black Spider |
![]() Antworten mit Zitat ![]() |
---|---|---|
hmm,
es gibt da ne Möglichkeit, die Valve auch bei neueren Spielen einsetzt (TF2, Half Life² Episode 2), nennt sich Multi Resolution Mesh, genauer Artikel dazu ist hier: http://www.teamfortress2.de/tf2_tech.php#mesh das heisst du könntest das Mesh mehrmals speichern, jeweils mit unterschiedlicher Polygonzahl, und es dann immer je nach entfernung austauschen. Das ist dann zwar kein wirkliches LoD, funktioniert aber besser als wie wenn du einen LoD Code für Meshes schreiben würdest, das wäre nämlich saumäßig aufwändig, und könnte am Ende unschön aussehen. |
||
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif |
![]() |
rctuner |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich hab ein beispiel im englischen forum gefunden, welches nur mit hiden/show funktioniert und somit recht einfach und unkompliziert ist.
mein problem ist jetzt aber wie gesagt, wie ich den oberen code auf nur die Wasser Platten in meiner umgebung anwende... |
||
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu [AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB] |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group