Wie die meisten Webseiten nutzen wir Cookies. Nähere Informationen dazu, wie wir mit diesen Cookies umgehen, können Sie in unseren Datenschutzbestimmungen lesen.   Einverstanden
 
 

3D Forum > UVs passend skalieren

UVs passend skalieren

17.10.2021 19:48
 
GastSo. 17 Okt. 2021, 23:04 Uhr
Ansonsten die UV so anpassen, dass die so viel es geht ausfüllen, also UV Gruppen nochmal unterteilen, wenn es das Model zulässt. Sollte man wegen sichtbare Seams nicht tun, aber heute sollte das nicht mehr das Problem sein.

LG Mahlstrom
 
WigandSo. 17 Okt. 2021, 23:31 Uhr
Danke für den Tipp.
So wie du aber schreibst, ist das wohl ein allgemeines Problem,
das sollte doch mit Hausmitteln lösbar sein?
Das mit dem Verbinden der Objekte ist verständlich.
Mal sehen, ob das in meinem Fall klappt.

 
GastMo. 18 Okt. 2021, 00:20 Uhr
Ich weiß was du meinst, ich habe da keine Lösung für, vll. hat jemand anderes eine Idee. Mich nervt das UV Thema auch tierisch, Wenn die halbe Fläche leer ist. Klar kann man dann 2:1 also zb 2048x1024 anlegen. geht aber nicht immer, wenn das Model z.b. in eine andere Software rüber muss. So wie du das vorhast, mache ich ich das auch und versuche auch immer soviel wie möglich Fläche zu nutzen. Wenn ich mit Sustance Painter arbeite, zerlege ich die UVs oft auch nochmal, Nähte sieht man eh nicht, wenn die Margin eingehalten wird. Bei 2k Texturen fällt das nicht so auf, aber wenn du dann mit 8k und mehr arbeitest, dann sind schnell einige 100MB pro Kanal weg. Selbst wenn du ordentliche UVs hast, hast du ja immer Stellen wo Platz übrig ist und das summiert sich schnell. Hier 30%, dort 20% usw.

Hier mal ein Beispiel einer Treppe (aus Rizom) würde die erste Stufe für sich auf der UV liegen, hast du haufen Platz verschwendet, also entweder UV Insel Teilen oder 5 Treppen auf einer Textur.

Edit: In dem Beispiel sind die Objekte einzeln in einer Datei.

LG Mahlstrom
 
 
WigandMo. 18 Okt. 2021, 01:55 Uhr
Um konkret zu sein...
Es geht mir darum die Enterprise Szene, die du bei meinen Bildern sehen kannst
nach Unreal zu befördern. Dort will ich sie in eine VR-begehbare Szene umsetzen.
So, dass ich mich darin bewegen kann.

In Blender hatte ich die Wände mit einer prozeduralen Textur versehen.
Die muss ich erst mal in eine Normal-Map baken. Und da habe ich halt das
Problem, weil die Wandelemente einzeln sind, sind sie auch verschieden groß.
Als prozedurale Textur ist das egal, aber wenn ich die Textur bake, dann
würde sie auf den unterschiedlich großen Flächen unterschiedlich skaliert sein.
 
TilesMo. 18 Okt. 2021, 07:22 Uhr
Habt ihr euch schon Udim angeschaut? Ist halt noch sehr rudimentär in Blender integriert. Da kannst du sowas über mehrere Texturen bzw. Udim Tiles verteilen.
 
SleepyMo. 18 Okt. 2021, 07:55 Uhr
In Blender hatte ich die Wände mit einer prozeduralen Textur versehen.
Die muss ich erst mal in eine Normal-Map baken. Und da habe ich halt das
Problem, weil die Wandelemente einzeln sind, sind sie auch verschieden groß.
Als prozedurale Textur ist das egal, aber wenn ich die Textur bake, dann
würde sie auf den unterschiedlich großen Flächen unterschiedlich skaliert sein.


So funktioniert der Workflow auch nicht.
Alles was sich außerhalb vom UV Space befindet, wird wiederholt. Bakst du ein Mesh wo sich UVs außerhalb des UV Spaces befinden, so werden die über alles gebaken.
Das ist als wenn du ein Bild mit einem Drucker druckst, und das selbe Blatt mehrmals verwendest. Irgend wann ist das komplette Blatt Papier schwarz.

Das ist übrigens ein Grund warum in vielen Spielen gar keine Normals verwendet werden. In Star Citizen zb gibt es keine Tileable Texturen mit einer Normal.

Es gibt mehre Möglichkeiten für das was du vorhast.

1.Für jedes Mesh eine Textur verwenden. Dann kannst du für jedes Mesh eine Normal baken.
Das ist nicht sonderlich performant aber es ist eine Möglichkeit.

2.Du verwendest Trimsheets.
Bei Trimsheets werden Texturbereiche wie beispielsweise eine Backsteinwand auf in eine Textur gebaken. Diese Textur kann aber auch andere Textur Informationen beinhalten. Beispielsweise ein Fussboden.
In deinem Fall würdest du deine UV so anpassen das der entsprechende Bereich aus dem Trimsheet für dein Mesh genutzt wird.
Somit kannst du diese Textur für viele unterschiedliche Meshes nutzen.

So können zb Trimsheets aussehen: https://flippednormals.com/downloads/industrial-trimsheet-vol-1/

3. Ist die Möglichkeit die beispielsweise auch bei Star Citizen und vielen anderen Spielen zum Einsatz kommt. Die sog. Pom Decals.

Bei Pom Decals werden für die Meshes ganz normale tileable Texturen verwendet. Diese Wiederholen sich einfach nur. Durch bestimmte Techniken werden auf die Meshes Decal aufgebracht. Diese Decals liegen wie Aufkleber vor den eigentlichen Meshes.
Das heißt: Du hast ein Basismehr und du hast ein Trimsheet zb eine Kaputte Kante.
Diese Kante wird auf die Kante eines Cubes geklebt.
Das macht das ganze äußerst performant.

https://www.artstation.com/blogs/minimacman/gwY2/high-detail-pom-decals-inside-ue4-brief-reference-guide

Hier ein Beispiel wie man Pom Decals erstellt:
https://www.youtube.com/watch?v=5-pDKn1jVgk&t=1587s
 
TilesMo. 18 Okt. 2021, 09:41 Uhr
Danke für den Einblick in die POM's. Die kannte ich noch gar nicht. Beziehungsweise die Technik an sich einfach Texturen per Shader zu mischen oder Decals zu verwenden ist ja schon seit vielen Jahren im Einsatz. Aber das mit den POM's und das sich das zu einem eigenen Workflow und eigener Technik entwickelt hat ist an mir vorbei gegangen. Bin wohl einfach schon zu lang raus ^^
 
WigandMo. 18 Okt. 2021, 13:51 Uhr
Danke Sleepy für die umfangreiche Info.
Da wird für mich noch einiges an Umdenken vor mir liegen,
bis ich etwas Ordentliches in Unreal erstellt habe.
 
GastMo. 18 Okt. 2021, 15:35 Uhr
Danke Sleepy fürs teilen, kannte ich so auch noch nicht.

Noch eine Anmerkung zu Normal Maps in Bezug auf UE5: Das runter baken kannst du dir sparen, der Polycount spielt in der 5er keine Rolle mehr und du kannst die Map mit z.B. Megascans oder Highpolys zuknallen wie du lustig bist. Du kannst auch dein SDS applien und in UE5 knallen, interessiert nicht mehr. smile

Damit spart man sich heute die Retopo, aber ein neues Problem taucht auch, wie will man 100k+ Faces sauber entfalten, da ist sehr Performance lastig derzeit noch, also sollte man die UVs früh planen und anlegen.

LG Mahlstrom
 
SleepyMo. 18 Okt. 2021, 18:58 Uhr
Danke Sleepy fürs teilen, kannte ich so auch noch nicht.

Noch eine Anmerkung zu Normal Maps in Bezug auf UE5: Das runter baken kannst du dir sparen, der Polycount spielt in der 5er keine Rolle mehr und du kannst die Map mit z.B. Megascans oder Highpolys zuknallen wie du lustig bist. Du kannst auch dein SDS applien und in UE5 knallen, interessiert nicht mehr. smile

Damit spart man sich heute die Retopo, aber ein neues Problem taucht auch, wie will man 100k+ Faces sauber entfalten, da ist sehr Performance lastig derzeit noch, also sollte man die UVs früh planen und anlegen.

LG Mahlstrom


Also so würde ich dass nicht unterschreiben.

Die Unreal hat kein Problem mehr mit einem sehr hohen Polycount, dass weiß ich auch aus eigener Erfahrung.

Aber dennoch gibt es viele Gründe den Polycount zu reduzieren,

1. Meshes mit hohem Polycount sind richtig beschissen zu texturieren. Schonmal ein mehre Millionen großes Mesh in Substance Importiert? Auch die UVs für ein so großes Mesh zu machen macht keinen Spaß.
2.Nicht alle Spiele werden für Highend Rechner entwickelt Es gibt auch Office PCs, Tablets oder Handys.
3.Normals faken nicht nur 3D Geometrie, sie dienen auch als Grundlage für andere Maps. Oder wie willst du ohne Normalmap und ein Lowpoly eine Ambient Occlusion Baken ?
4.Meshes mit hohem Polycount sind auch als Datei Riesig. Wer hat den Lust sich ein Spiel zu kaufen und mehre Terrabyte große Dateien runter laden.
6.Es können (noch) keine beweglichen Objekte wie beispielsweise Charakter und alles was sich bewegt mit einem so hohen Polycount genutzt werden. Hier muss auf alte Techniken zurück gegriffen werden. Auch können keine Transparenten Materials für Nanite genutzt werden.
7.Lumen, so heißt die Beleuchtungssoftware der UE5 kann kein Raytraceing auch Reflektionen und und Spiegelde Oberflächen sind mit Lumen nicht möglich.

Kleiner Funfact: Unreal kann nicht mit so großen Meshes umgehen weil Epic Games die Engine gut programmiert hat sondern weil eine ganz bestimmte Technologie in der Unreal steckt die bis vor ein paar jahren noch belächelt wurde.
Wer mal in die Vergangenheit reisen möchte kann sich dieses Video von 2011 reinziehen: https://www.youtube.com/watch?v=00gAbgBu8R4



Wer also glaubt man könnte einfach Meshes aus Zbrush in die UE5 droppen, der irrt sich.

Aber wer weiß vielleicht in ein paar jahren smile
Es bleibt spannend.
 
 

 


 
 
© 3D-Ring - deutsche 3D Software Community, Archiv 2001 - 2006