Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

08.02.2017, 10:23

3D Modelling, sollten sich Polygone überlappen dürfen?

Hallo,(hoffe das ist das richtige Unterforum^^)

ich habe folgende Frage: Sollten sich Polygone innerhalb eines Modell sich überlappen dürfen oder macht es allgemein Sinn dies zu tun?
Kann dies z.B. für Spiel-Engine zu Framedrops führen, da Lichteinfall und Schatten schwerer zu berechnen sind, da es keine "klaren" grenzen im Modell gibt?


Ich habe mir bei Modellen aus anderen Spielen angeguckt das dort meist mehre 3D-Objekte innerhalb eines Objektes überlappt werden, ich denke mal um die Struktur nicht aufzubrechen.


Ich versuche es mal an einem Beispiel zu verdeutlichen(ich glaube, so kann ich es besser erklären^^). In einem Gang in dem Säulen stehen, kann ich das Ende der Säule mit der Decke verbinden, also einarbeiten mit Polygonen. Dadurch würde ich aber die Decke ganz schön "aufbrechen" müssen und hätte dadurch viel mehr Arbeit beim texturieren, da ich nun dann die einzeln UV'S von der Decke zusammenfügen muss etc.

Bild:
http://www.directupload.net/file/d/4626/qfyfpnwe_jpg.htm

http://www.directupload.net/file/d/4626/yl6cwfnp_jpg.htm

http://www.directupload.net/file/d/4626/mjvcgbfj_jpg.htm

(Über den Säulen wäre noch ein grünes Dach, so das man die Säulen darin verstecken könnte)
Und falls jemand in dem Zusammenhang Tipps für UV-Mesh hat oder sonstiges zum Thema Modelling sind diese immer willkommen :thumbup: .


Hoffentlich war das jetzt nicht zu umständlich ausgedrückt :)

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

08.02.2017, 11:10

Willkommen im Forum!
Zu Performance-Problemen beim Rendering führt sowas normalerweise nicht. Wie du schon bemerkt hast, führt das korrekte "Aufbrechen" von Geometrie in der Regel dazu, dass man wesentlich komplexere Meshes bekommt. Gewisse Mesh-Operationen, z.B. Mesh Smoothing, funktionieren jedoch nicht korrekt, wenn solche Fälle vorliegen - aber das ist eher ein Problem während der Modellierung.

Tiles

Treue Seele

Beiträge: 168

Wohnort: none

  • Private Nachricht senden

3

08.02.2017, 11:23

Zitat

Ich habe mir bei Modellen aus anderen Spielen angeguckt das dort meist mehre 3D-Objekte innerhalb eines Objektes überlappt werden, ich denke mal um die Struktur nicht aufzubrechen.


Manchmal wird so eine Überlappung absichtlich dafür verwendet damit die Floatingpoint Ungenauigkeiten zwischen zwei Meshelementen nicht zu sichtbaren Lücken führen. Da wird dann extra noch ein Face rausgezogen, und das Gleiche beim Gegenstück. Und die überlappen sich dann. Den Spass mit den sichtbaren Lücken hatte ich schon in Unity bei einer Levelgeometrie die aus mehreren Meshteilen bestand.

Ideal wäre natürlich ein einziges Mesh. Dann gibts erst gar keine Lücken die man eventuell nacharbeiten muss. Aber das scheitert schon allein an der 65K Grenze ...
Free Game Graphics, Freeware Games https://www.reinerstilesets.de

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

4

08.02.2017, 11:59

Niemand erstellt Modelle aus einem Guss. Das wäre auch einfach nicht sinnvoll. Dadurch dass du dein Modell aufblähst benötigen Berechnungen länger, deine Bearbeitung wird komplizierter, UVs auslegen macht noch weniger Spaß als so schon, und und und.
Das mit der Floatingpoint Ungenauigkeit ist mir beim modellieren jetzt noch nie passiert und das ist auch das erste mal dass ich höre dass jemand deshalb Modelle vergrößert. Deshalb bau deine Modelle ruhig aus so vielen Komponenten wie du meinst.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

5

08.02.2017, 13:34

Hallo,
erstmal danke für eure schnellen Antworten :thumbup:

Gibt es denn Fälle wo es sich lohnen kann, ein Modell aus einem Guss zu machen, z.B. bei einem simplen Tisch, oder würdet ihr da auch die Tischbeine in die Tischplatte "verstecken" bzw. "überlappen" bzw. hat das "aus einem Guss" auch Vorteilen. -mal abgesehen von den schon genannten "smoothing"



Tiles:
Was meinst du mit Floatingpoint? -Hast du da vielleicht was zum veranschaulichen?


Schorsch:

Zitat

bau deine Modelle ruhig aus so vielen Komponenten

Das war die Formulierung die ich gesucht hatte, aber nicht fand. ;)


Hat Jemand außerdem ein paar Tipps(vielliecht aus eigener Erfahrung) zum Thema UV-Mesh, erstellt ihr die Texturen für eurer Objekt bevor ihr die UVs anordnet(passt sie also der Textur an) oder nachdem? Online finde ich zumeist nur grundlegende Tutorials zu diesem Thema.



Ein Tipp (falls den nicht schon alle anderen kennen :D ), wäre dieser:
Bei Objekten z.B. Gebäuden die von allen 4 Seiten gleich sind arbeite ich mit einem Symmetrie-Objekt(oder jeh nachdem wie es im jeweiligen Programm heißt) und erstelle nur eine Ecke vom Objekt um diese dann mithilfe von dem Symmetrie-Objekt zu einem ganzen zu verschmelzen.
Das hat folgenden Vorteile:

-Ich spare Zeit bei der Modellierung, da ich nicht alles öfter machen muss(spezielle Merkmale kommen zum Schluss)
-Die UVS werden beim Urobjekt einmal angeordnet und liegen bei der Verdoppelung übereinander, Zeit gespart und weniger UVs müssen platziert werden.


Ich habe auch gesehen das manche die Textur ihrer Objekte nicht backen sondern einzelne Texturen haben und diese immer wieder mehren Objekten zuweisen (wie bei Terrains, ich glaube um so Grafikspeicher zu sparen, da so die Textur nur noch an die jeweiligen Stellen "gewapt" wird)



Sind vielleicht ein bisschen viele Fragen aufeinmal^^

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Streetmonkey« (08.02.2017, 13:42)


Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

6

08.02.2017, 15:02

Bei der float Geschichte geht es um Gleitkommazahlen. Die sind im Rechner durch ein bestimmtes Prinzip umgesetzt wodurch nicht jede Kommazahl dargestellt werden kann. Dadurch kann es schon mal kleinere Probleme geben. Mach dir da aber keine Gedanken drüber.
Was UVs angeht, normal legst du erst die UVs aus und erstellst dann die Texturen. Oft wird das so gemacht dass du die Edges der UVs speicherst und als Ebene in Photoshop/Gimp/whatever importierst. Jetzt kannst du darüber deine Textur malen. Teilweise kannst du die Texturen auch direkt auf die Modelle malen. Normalerweise musst du aber eben vorher die UVs ausgelegt haben.
Das mit dem Spiegeln ist völlig in Ordnung. So macht man das eben. Dein Ziel ist es am Ende ein bestimmtes Ergebnis zu erreichen. Alles was dir den Weg dorthin erleichtert und beschleunigt ist in Ordnung.

Als ich mich vor ein paar Jahren mehr mit Modellierung beschäftigen wollte habe ich mir einfach eine Lehr-DVD bestellt und die durchgearbeitet. Das hat mir enorm geholfen. Vielleicht ist das ja was für dich. Komplett allein und ohne Anleitung oder Hilfe würde ich mir das nicht unbedingt antun. Zumindest kannst du dir das lernen vereinfachen.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

7

08.02.2017, 17:51

Hi :) ,
Videotrainings sind meiner Erfahrung nach so eine Sache...

..ich habe mir ein eine DVD von Video2brain(auch andere wie Galileo Design) zum Thema 3D-Modellierung angesehen(14 Stunden laut Verpackung), aber im Grunde -ich hoffe das nimmt mir jetzt keiner Übel wenn ich das so sage :D - wurden da bloß die Werkzeuge erklärt und beschrieben ("das tut das und dies und tut dies" etc, abgesehen von einem Projekt wie baue ich einen Raum)

Dazu wurde das Thema UV komplett weggelassen(aber auch andere, wie ich später merkte), stattdessen wurde nur mit einfarbigen Material gearbeitet und ein bisschen die Kanäle(wie Bumpmap(aber nicht wie man eine erstellt, alles vorgefertigt) beschrieben).

Da fehlt mir so was wie Workshops(die auch das exportieren von Objekte beinhaltet, so das die Modell nicht nur mit programminternen Generatoren entstehen die sich nicht konvertieren lassen) oder das man echte Projekte bearbeitet, das würde aber wahrscheinlich den Rahmensprengen so einer Grundlagen DVD...(es gibt auch ein paar Workshops bei Video2brain diese sind jedoch nicht zu empfehlen)

Ich würde es auch schön finden, wenn es solche Trainings für Modelling für Games geben würde, da ihr doch eigenes anders gemacht wird und zu beachten gilt....aber da kennt ihr euch sicher zur genüge aus ^^
----------------
Ich kenne float als Variabentyp aus der Programmierung, ist das also wie folgt zu verstehen:

Wenn zwei Flächen eines Objektes nicht mit einander verbunden sind, aber nahe bei einander(so nahe das wir uns im Nachkommerstellenbereich finden, ich vermute mal des wegen gehts hier um float) das es dann probleme geben kann?
Sprich: Mal fällt Licht durch manchmal nicht?
Ich glaube so etwas gesehen zu haben bei manchen Spielen das dort quasi die Flächen oder das Licht "tanzte" da sich die Engine nicht entscheiden wollte ob nun Platz zwischen den Flächen war oder nicht

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Streetmonkey« (08.02.2017, 17:56)


Tiles

Treue Seele

Beiträge: 168

Wohnort: none

  • Private Nachricht senden

8

08.02.2017, 18:09

Genau das meinte ich. Das ist grade in dunklen Levels dann immer doof wenn da plötzlich eine Naht sichtbar wird. Und das habe ich auch schon in professionellen Games so gesehen ^^

Bei mir kamen diese Ungenauigkeiten damals durch hin- und herschubsen zwischen meinen Grafikprogrammen und Unity. Ich konnte das aber aus Pipelinegründen nie abstellen. Also gabs noch ein wenig Extrageometrie mit drauf um diese Lücken zu schliessen. Das Phänomen ist übrigens unter Grafikern durchaus bekannt. Und wie gesagt, mir ist es eben auch schon passiert :)

Normalerweise macht man wie Schorsch schon erwähnt hat erst das UV Mapping, und fertigt dann danach die Textur an.

Textur backen, hmmm, für Levelgeometrie macht man das ja heutzutage in der Game Engine. Dafür gibts ja das Lightmapping. In die Textur von Characteren wird aber nach wie vor zum Beispiel Ambient Occlusion gebacken.

Letztenendes ist erlaubt was funktioniert. Also mach dir keinen zu grossen Kopf. Und mach einfach erst mal. Du wirst schon früh genug über die Problemzonen stolpern ;)

Wenn du dich in Richtung Spielegrafik entwickeln willst empfehle ich das Polycount Forum. Da triffst du die Profis. Und die geben auch den einen oder anderen Tip. Ist aber Englisch.
Free Game Graphics, Freeware Games https://www.reinerstilesets.de

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

9

08.02.2017, 18:26

Videotrainings sind meiner Erfahrung nach so eine Sache...

Na du musst dir vorher auch schon ansehen was du dir da anguckst. Klar gibt es viel Müll, das heißt aber nicht dass es nicht auch gute Sachen geben kann. Es muss ja auch kein Videotraining sein. Es gibt immerhin auch gute Bücher. Wobei ich bei der Modellierung Videotrainings bevorzuge. Aber an sich ist das ja auch nur eine Empfehlung.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Werbeanzeige