Antworten auf deine Fragen:
Neues Thema erstellen

Polygonanzahl reduzieren Blender?

KBB

Mod 3D | Blaubaer

Teammitglied
LOD braucht man bei einem normalen 3D Spiel mit unterschiedlichen Tiefen, damit man vorne, vor der Kamera, viele Details hat, weiter hinten wenig bis keine.
Bei Deinem J&R kommen vermutlich keine unterschiedlichen Tiefen vor, richtig? Oder gibt es da tiefe Räume? Ich denke automatisch dabei an sidescroller mit immer gleichem Kameraabstand.
800 ohne Nägel? Magst mal einen Screenshot zeigen zwecks Beratung? Und denk dran, dass Game spezifisch immer in Tris, Dreiecken gerechnet wird. Jedes Polygon, das mehr als drei Seiten hat, wird unterteilt werden. Wenn die Kiste also jetzt z.b. aus 1.500 Quads besteht, sind das 3.000 Tris.
 

cjs

VariousDesign

Hi KBB. Das wird kein Sidescroller, da hast du was falsch verstanden. :)
Ich habe jetzt nicht die letzte Version der Kiste hier (anderer Rechner), aber die Optik ist fast gleich.
So soll die Kiste im späteren Spiel in etwa aussehen - natürlich noch mit Textur etc.



Das spätere Spiel soll später in diese Richtung gehen:

Nur etwas düsterer und mehr Details.
 

kraid

reMember

Bei einem 3D-Jump&Run gehe ich jetzt mal davon aus das da räumliche Tiefe vorhanden ist und LoDs somit ne gute Idee sind.

Anders verhält es sich natürlich mit sog. 2.5D Spielen, wo das Spiel zwar auf einer oder mehreren 2D Ebenen abläuft, die Assets aber in 3D erstellt wurden. (z.B. New Super Mario Bros, Donkey Kong Country Returns oder Trine)

Hier sind LoDs für besonders Polygonintensive Objekte unter Umständen auch Sinnvoll z.B. um mittlere und niedrige Detailstufen auf weniger Leistungsfähiger PC Hardware zu ermöglichen oder wenn trotz 2D Spielprinzip an bestimmten Stellen ein- und ausgezoomt wird. Natürlich kann man den Arbeitsaufwand durch gute Planung der Level hier durchaus reduzieren, so das man nicht überall mehrere Detailstufen benötigt.

Da 2.5D Spiele aber selten bis ans Limit gehen was die Polygonzahl auf dem Bildschirm angeht, sollte es bei einem vernünftigen Resourcenmanagment selbst ohne LoDs kaum probleme geben.

Man kann hier relativ gut planen wie viele Objekte und somit Polygone in einer Szene gleichzeitig auf dem Bildschirm dargestellt werden und wenn es in bestimmten Szenen zu Framedrops kommt, kann man dann speziell in diesen Szenen optimieren und z.B. die Anzahl der Objekte und Effekte oder deren Komplexität reduzieren.


Wie viele LoD-Stufen sollte man denn bei einem 3D-Jump&Run einplanen?
Das hängt in erster Linie davon ab, wie weit sich die Objekte von der Kamera entfernen können.

Bei großen offen gestalteten Welten darf man ruhig bis zur minimal möglichen Polygonzahl reduzieren - sind es eher kleine geschlossene Areale mit viel Verdeckung, muss man es damit nicht unbedingt übertreiben.

Dann kommt es noch darauf an, wie detailiert das Objekt bei vollen Details ist und ob eine Reduzierung der Polygonzahl noch genug Polygone einsparen kann.

Generell ist ein LoD immer sinnvoll wenn das Objekt um mindestens 40-50% Polygone verringert werden kann.
Wenn aus 1000 nur 950 Polygone werden dann kostet das LoD mehr Resourcen als es Nutzen bringt.
Wenn aber aus 1000 plötzlich 500 Polygone werden können, dann sollte man das tun.

Hier mal ein etwas älteres Beispiel von mir:
jx5s1vctsvqtu587g.jpg

Von fast 4000 auf ca. 1000 bzw. von ca. 1000 auf ca. 400 sind schon keine schlechten Einsparungen.
Bei niedrigeren LoDs kann man meist auch bestimmte Details komplett weglassen, da die Entfernung zu groß ist um diese noch zu erkennen und die Form muss auch nicht mehr so genau gehalten werden.

Gerade bei Zylindrischen Formen lässt sich bei den Rotationssegmenten und bei rundungen auch bei den Loops kräftig einsparen.
Gute Planung ist hier von Vorteil. So lässt sich aus einem 24-seitigen sehr gut ein 12-seitiger und daraus ein 6-seitiger Zylinder ableiten. Aus 32 wird 16, wird 8, wird 4.

Man sollte auch darauf achten, das die Nahtstellen der UV map günstig liegen, damit man die selbe Textur für alle LoDs nutzen kann.
D.h. die Kante an der die UV Insel eines Zylinders aufgetrennt wird, sollte auf allen LoD-Stufen erhalten bleiben.
Da gehört etwas Erfahrung dazu, um zu wissen wie man im jeweiligen 3D Programm Kanten auflöst und Polygone verschmelzt ohne die UV map zu beschädigen.

Unterschiedliche Texturen für LoDs sollten die Ausnahme bleiben und Situationsbedingt z.B. für den Switch von 3D Mesh zu Card-Tree genutzt werden. Texture LoDs werden ja durch das Mipmaping automatisch angelegt.
 

cjs

VariousDesign

Das macht Sinn! Vielen Dank für deine ausführliche Antwort. Ich stehe noch ganz am Anfang was das Erstellen von Modellen & Texturen für Spiele angeht. Dementsprechend bin ich sehr dankbar für alle Informationen die mir weiterhelfen. Ich sauge im Moment alles in mich auf was mit dem Thema zu tun hat (ganz schön vielschichtig).

Ich versuche jetzt die Kiste in 3 verschiedene Stufen zu unterteilen. Bei dem Objekt sollte es noch keine allzu großen Probleme mit der Textur geben. Das wird vermutlich erst bei komplexeren Objekten schwieriger.

Du sagst dass die Textur allgemein die selbe bleiben sollte. Heißt das egal in welcher Entfernung das Objekt im Sichtfeld ist - die Textur wird immer mit z.B. 2048px gewrappt?
Und die Abfrage, welches Modell wann eingeblendet wird, muss (in meinem Fall) in Unity programmiert werden?
 

kraid

reMember

Hier mal ein Versuch von mir:
rnt043roz0jx3ex7g.jpg

Ich habe Achteckige Nieten verwendet, evtl. reichen auch Fünfeckige (5 polygone x 20 Nieten pro Seite x 6 Seiten = 600 polygone gegenüber 8x20x6= 960 polygone mit der Achteckigen Version).

Die Nieten und die aufgesetzten Streben sind nur in der höchsten Detailstufe polygonal.
Das erste LoD spart da schon 1008 Polygone, man könnte also noch 2.5 Kisten dieser Stufe daneben stellen um in etwa auf die selbe Gesammtpolygonzahl zu kommen.

LoD 2 reduziert dann nochmal um gut 240 Polygone indem die Extrusionen, welche auf die Entfernung sowieso nicht mehr zu sehen sind, weggelassen werden.
Das wäre Variante A, wenn man die selbe Textur weiterhin verwenden will.

Ganz links ist die Variante B, welche in dem Fall aber eine neue Textur oder entsprechend einen eigenen Platz auf der UV map benötigen würde.
Ich hab das hier nur mal quick&dirty angedeutet, normalerweise müsste man für oben und unten ein anderes Bild benutzen.

Zu deinen Fragen:
https://docs.unity3d.com/Manual/LevelOfDetail.html
Letzter Absatz frei übersetzt:
Wenn du eine Reihe von Meshes erstellst die auf _LOD0, _LOD1, _LOD2 usw. enden, dann wird beim Import automatisch eine LOD Gruppe mit passenden Einstellungen erstellt.
Meshname_LOD0 ist dabei immer das Modell mit der vollen Detailstufe, je höher die Nummerierung, desto niedriger der Detailgrad.

Was Texturen angeht, so werden diese automatisch mit der Entfernung skaliert.
Das ganze nennt man Mipmaping.
Eine 2048x2048 Textur wird also erst auf 1024, dann 512, dann 256, 128, 64, 32, 16, 8, 4, 2, 1 pixel verkleinert.

Das Ganze passiert oftmals schon beim Import der Textur in die Engine und kann auch deaktiviert werden.
Dies ist z.B. für GUI-Elemente und andere nur in einer bestimmten Größe in 2D anzuzeigenden Texturen gedacht.
 

KBB

Mod 3D | Blaubaer

Teammitglied
Hi KBB. Das wird kein Sidescroller, da hast du was falsch verstanden. :)
Bei einem 3D-Jump&Run gehe ich jetzt mal davon aus das da räumliche Tiefe vorhanden ist
Alles gut, ihr zwei ^^
Ich habe nun mal bei Jump & Run vorwiegend Sidescroller vor Augen, auch in 3D (was u.a. daran liegt, dass ich einen solchen mitentwickeln durfte). Natürlich gibt es auch bei 3D Sidescrollern eine Tiefe, die aber wegen der starren Kamera keine große Rolle bei LODs spielen muss. Deshalb schrieb ich oben z.B. "vermutlich". Ich spreche dabei von echtem 3D, nicht von 2.5D mit vorberechneten Animationen, sondern in einer 3D Engine laufend. 2.5D wird m.W. hier und da unterschiedlich verwendet.
In dem Sinne also kein Missverständnis, sondern schlicht meine eingeschränke Sicht in diesem Fall. Danke, dass ich das aufklären durfte ^^

Schönes Modell Kraid. Dann muss ich meine Kiste nicht fertig stellen :) Ich hatte allerdings noch mehr Polygone ineinander geschoben an den Ecken und Stegen, anstatt alles aus einem Stück zu modellieren. Das spart auch noch mal 30% der Polys.
 

cjs

VariousDesign

Wow. Danke für die Mühe ihr beiden. Super Erklärung und vielen Dank für den Verweis aufs Unity Handbuch. Da bin ich noch nicht so fit drin.
Das hat mir wirklich sehr geholfen!
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
118.611
Beiträge
1.538.342
Mitglieder
67.524
Neuestes Mitglied
BSKGA
Oben