Antworten auf deine Fragen:
Neues Thema erstellen

[R10] - Erste Normalmapping Versuche

Eragon1337

Anders...

AW: Erste Normalmapping Versuche

Stimmt nich so ganz. Bin mir nich sicher wie weit das führt, konnte noch nix ausprobiern. Aber solange das UV-Mesh gleich ist kann mans einfach backen und dann aufs LowPloly werfen. Aber ich glaub kaum das es so einfach und gut is wie bei ZBrush. Ansonsten muss mans halt mit BodyPaint etwas rumfummeln. Einfach is nie etwas, wär ja auch langweilig ;)

so long
Eragon
 

KBB

Mod 3D | Blaubaer

Teammitglied
AW: Erste Normalmapping Versuche

Trifft das nicht auf jede s/w map zu? Bzw. was meinst du konkret damit, würd mich über n paar Infos freun =)
Es geht dabei vor allem darum, die oft entstehende Verwirrung aufzudröseln. Festzustellen, dass es verschiedene Typen von Texturen gibt, die wiederum in mehreren verschiedenen Zusammenhängen genutzt werden können: Texturen mit einem Vektor Y, idR. s/w Maps, für Bump oder Displacement; Texturen mit 3 Vektoren Y/X/Z, RGB Maps, für Normal oder Displacement.
Und verschieden arbeitende Kanäle: Normale + Relief auf der einen, Displacement auf der anderen Seite.
Das ist vielen 3D Usern alles andere als klar.

Aufgrund der o.g. Verwirrung, die u.a. der Bezeichnung "Normalmap" zu verdanken ist, ist es bei dem Thema wichtig, die Texturarten und ihre Nutzung in den Kanälen zu erklären.
Wie Du anscheinend schon herausgefunden hast, ist eine Vektormap, die nur den Y-Vektor nutzt (wie man sie aus einer Textur oder andern Map gewinnen kann!), zwar hübsch bunt. Aber zu nicht mehr in der Lage als eine gewöhnliche s/w Reliefmap. Und genau da ensteht die Verwirrung: generelle Nutzung von Vektormaps verbessert im Normalenkanal im Vergleich zu einer alten Bumpmap erstmal garnix. Wenn ich eine Bumpmap nehme, kann ich da eine Vektormap draus machen - das ist aber genausowenig Qualitätsgewinn wie wenn ich mit einer Kamera mit HD Auflösung einen alten Röhren-TV abfilme: garkeiner.

Vektormaps im Normalenkanal oder Bumpmaps haben aber auch Gemeinsamkeiten, wenn die Vektormap durch sich überlappende Geometrie gewonnen ist: die Technik der Interpolation ("Weichrechnung") von Licht bei gleichzeitiger Nicht-Änderung der Geometrie.
Ebenso haben s/w-Maps und RGB-Maps (also 1- und 3-Vektormaps) neben den Unterschieden auch Gemeinsamkeiten bei der Nutzung im Displacementkanal: beide ändern die Geometrie, Vektormaps dabei aufgrund ihrer Natur etwas komplexer. So sie nicht einfach aus einer Höhenmap oder einem Foto errechnet wurden.

Du siehst, es macht durchaus Sinn, andere Begriffe als "Normalmap", "Bumpmap" oder Displacementmap" zu nutzen. Die gibt es faktisch nicht, es gibt nur die Kanäle in Cinema, die jeweils etwas anderes tun, und das pro genutzter Y- oder Y/X/Z-Vektormap leicht unterschiedlich, wenn man Normale+Relief einerseits und Displacement andererseits vergleicht.


Dazu hab ich schon Bilder erstellt und feststellen können das Relief eine falsche Glanzlichtberechnung im vergleich zu Normal bzw. Displacemt an den Tag legt...
Das sieht mir eher danach aus, dass bei der Normalmap hier ein Vektor vertauscht ist. Ändere dazu die Parmeter im Kanal, Du kannst ja alle 3 Farben/Vektoren in Cinema umdrehen.

Wenn Du mit 9. in den Gamebereich gehst, dann ist es sinnvoll, auch auf die Technik von Parallax Mapping/Steep Parallax Mapping und der Displacement-bezogenen "Tessellation" einzugehen.
Vertex-, Pixel- und Geometry Shader nicht zu vergessen
Ich versteh kein Wort wenn ich ehrlich bin...
Oh, das sind gamespezifische Begriffe des Themas.
- "Tessellation" zeigt die Möglichkeit von Micro-Displacement (unser SPD) in Echtzeit. Hier werden Polygone passend unterteilt und dann die Vertices verschoben. halt wie bei unserem Displacement, nur in Echtzeit. Tessellation meint eigentlich nur die Unterteilung und ist seit DirectX 11 bisher nur auf ATI 5000er Karten zu finden. Ich habe Dir Screenshots aus dem Unigine-Benchmark dazu gemacht:





- Parallax Mapping verschiebt die schon gerenderten Pixel. Also weder Displacement (Geometrie) noch Bump/Normal-Berechnung (nur Licht und Schatten). Steep Parallax tut das mit gleichzeitiger Verdeckung:


Das Bild ist aus dem Text hier:

- Vector Shader arbeiten von der Wirkung her wie Cinemas normales Displacement, verschiebt also die Geometrie (die Vertices) aufgrund einer Map/Berechnung.


dazu wollte ich nur ganz kurz nebenbei auf den Geschichtlichen Hintergrund eingehen und das Fallout Beispiel mit einbrigen...
Dann das richtig :)


@kraid Wie kommst Du da drauf??
 

Eragon1337

Anders...

AW: Erste Normalmapping Versuche

Es geht dabei vor allem darum, die oft entstehende Verwirrung aufzudröseln. Festzustellen, dass es verschiedene Typen von Texturen gibt, die wiederum in mehreren verschiedenen Zusammenhängen genutzt werden können: Texturen mit einem Vektor Y, idR. s/w Maps, für Bump oder Displacement; Texturen mit 3 Vektoren Y/X/Z, RGB Maps, für Normal oder Displacement.
Und verschieden arbeitende Kanäle: Normale + Relief auf der einen, Displacement auf der anderen Seite.
Das ist vielen 3D Usern alles andere als klar.

Achso das meintest du. Ok, ja das kann ich nachfühlen. Gute Idee da mal ein bisschen Klarheit reinzubringen. Generell herrscht beim Thema Normalmaps (oder Vektormaps, oder RGB Maps;) ) eine riesige Unwissenheit. Da es ein solch umfangreiches Thema ist scheint es auf manche einfach abschreckend zu wirken und sie beschäftigen sich nicht damit. Das will ich ändern :)

Wenn ich eine Bumpmap nehme, kann ich da eine Vektormap draus machen - das ist aber genausowenig Qualitätsgewinn wie wenn ich mit einer Kamera mit HD Auflösung einen alten Röhren-TV abfilme: garkeiner.

Guter Vergleich :lol: und dazu noch vollkommen richtig. Man kann aus jeder S/W Textur über den Relief oder Displacementkanal eine Vektormap erstellen... kommt aber aufs selbe raus.

Zu den Game Infos, hört sich sehr Interessant an =)
Wenn du das gerne mit drinne haben möchtest, könntest du zu dem ganzen gern einen kleinen Text verfassen. Ich würde mich sehr freuen das mit einbringen zu können. Dann wäre da auch wieder mehr Klarheit bei, wie die Gamedesigner es schaffen so viele Bilder pro Sekunde zu rendern ;)

So long
Eragon
 

kraid

reMember

AW: Erste Normalmapping Versuche

Ok, die Möglichkeit highpoly und lowpoly mesh zumindest mit annähernd gleicher UV map zu nutzen hab ich jetzt mal außer Acht gelassen.
Ist auch sehr unpraktikabel wenn man entsprechend hoch aufgelöste meshes zum normalmap backen benutzt, diese dann auch noch an die Lowpoly UV map anzupassen.

Zudem ist die resultierende Normalmap eine world-space und keine tangent-space normalmap, was zumindest für meine Zwecke (gamemodding) wenig von nutzen ist.

@KBB: weil ich schon ettliches probiert habe.
Wenn du allerdings einen halbwegs praktikablen Weg kennst, wie man innerhalb von C4D mit nem Highpoly und nem Lowpoly mesh gute Normalmaps machen kann, ich bin für jeden Tip dankbar.
 

KBB

Mod 3D | Blaubaer

Teammitglied
AW: Erste Normalmapping Versuche

Ok, die Möglichkeit highpoly und lowpoly mesh zumindest mit annähernd gleicher UV map zu nutzen hab ich jetzt mal außer Acht gelassen.
Ist auch sehr unpraktikabel wenn man entsprechend hoch aufgelöste meshes zum normalmap backen benutzt, diese dann auch noch an die Lowpoly UV map anzupassen.
"Praktikabel" ist etwas anderes als "machbar". Ich nutze Cinema so gut wie nie, um Vektormaps zu erstellen ;)

Zudem ist die resultierende Normalmap eine world-space und keine tangent-space normalmap
Wenn Du das Objekt-Backen meinst: das ist wohl eine local-Space Map.
Laut Manual erstellt das Textur-Backen auch tangentiale RGB-Maps.
Hast Du schonmal eine RGB Map in PS um 120° gedreht (Farbe, nicht Position..)?

Wenn du allerdings einen halbwegs praktikablen Weg kennst, wie man innerhalb von C4D mit nem Highpoly und nem Lowpoly mesh gute Normalmaps machen kann, ich bin für jeden Tip dankbar.
Wenn Du mir ein Beispiel schickst, kann ich Dir evtl. einen Workflow dazu zeigen.
 

Eragon1337

Anders...

AW: Erste Normalmapping Versuche

Zudem ist die resultierende Normalmap eine world-space und keine tangent-space normalmap, was zumindest für meine Zwecke (gamemodding) wenig von nutzen ist.

Entweder in PS um 120° drehen oder einfach mal den BackenTag auswählen. Dort kannst du dann entweder gleich die tangetiale Berechnung nehmen, oder falls das nicht funktioniert... (klappt manchmal einfach nich, weiß auch nich warum) die Y-Achse umkehren. Gibts n kleines Kästchen für ;)

So long
Eragon
 

rilo1

Man lernt nie aus...

AW: Erste Normalmapping Versuche

@Eragon: aus deinen oben geposteten 3 Bildern (Bump, Normal, Displ.) kann ich leider nicht viel erkennen. Vielleicht ist das Bsp.Bild auch zu komplex um die Unterschiede prägnant zu zeigen. Eine einfache Map mit wenigen Ecken und Kanten wäre hier besser zum Vergleich meine ich.

@KBB: Das mit den Geometrieüberschneidungen und Normalmaps bzw. deren Vorteile in diesem Fall leuchtet mir nicht ein. Auch eine Normalmap kann doch keine echten geometrischen Überschneidungen darstellen! Schließlich wird ja die Normalmap auch nur senkrecht auf die Ausgangsgeometrie gemappt, sie kann daher nur Winkelabweichungen mit berücksichtigen, aber keine Überschneidungen. Lasse mich aber gern eines besseren belehren :)

Der Vorteil einer Normalmap gegenüber einer Bump map ist aus meiner bisherigen Sicht der, dass die Winel der "Ausbeulungen" in Y-Richtung berücksichtigt werden können, also "schräg" wachsende Berge, aber eben keine Überschneidungen.
 

KBB

Mod 3D | Blaubaer

Teammitglied
AW: Erste Normalmapping Versuche

@KBB: Das mit den Geometrieüberschneidungen und Normalmaps bzw. deren Vorteile in diesem Fall leuchtet mir nicht ein. Auch eine Normalmap kann doch keine echten geometrischen Überschneidungen darstellen!

Nein, für eine echte Überschneidung brauchst Du auch echte Geometrie. Aber eine gefakte Überschneidung geht: ein Loch, das auf der einen Seite schräge ins Innere führt, wird von der anderen Seite kaum noch wahrgenommen.

Dafür sind die Vektoren ja da. Kann aber sein, dass C4D das nicht schafft. Am besten würde man die Beispiele wieder im Disp-Kanal sehen, aber da greift Cinema offensichtlich nicht so ganz richtig.
Wenn ich wieder auf den Beinen bin, poste ich mal Beispiele dazu, auch mit reinem Normalmapping. Kann aber nicht versprechen, dass die dann alle aus Cinema sind.

Interessant wäre in dem Fall besagtes Steep Parallax Mapping, was zwar nicht in Cinema geht, aber zeigt, was man mit RGB-Maps so alles ohne Disp. faken kann. Dort werden aufgrund von Normalmaps schon gerenderte Pixel in Echtzeit verschoben, aber keine Geometrie. Kommt der Normalen-Technik schon recht nahe.
 

kraid

reMember

AW: Erste Normalmapping Versuche

Ok, dann isses halt ne Object-space Normalmap.

Ich selber benutze hauptsächlich xNormal, das ist zwar auch nicht perfekt, aber schonmal deutlich besser vom Arbeitsaufwand, da man hier nur für ein mesh das UV-editing machen muss.
 

VaultAvenger

Lerne noch!

AW: Erste Normalmapping Versuche

Hallo Eragon und alle Anderen,
ich habe mal die Maps aus meinem Fallout Beispiel herausgesucht. Zur Erklärung Folgendes: Die Fallout Engine benutzt .dds Dateien, d.h. es werden jweils die Diffuse und die Normal Maps mit einem Alpha Kanal versehen. Bei der Diffuse/Color Map regelt der Alpha Kanal wie von PS gewohnt die Transparenz und bei der Normal Map dient der Alpha Kanal quasi als Reflection oder Specular. Beides wird dann später im Nif Format auf das Mesh gemappt. Insoweit ist die Vorgehensweise zu Cinema schon unterschiedlich. Der Effekt ist aber der Selbe.
Ich habe nochmal 2 Bilder mit dem Editor gemacht. Man kann deutlich den Unterschied sehen. Die linke Wand des Kamins hat InGame Texturen und die Rückwand hat eine von mir neu erstellte Normal Map...





Für Alle, die sich die Maps ansehen wollen hier der Link zum rar mit allen 3 Maps dieser Wand Textur:



Mit diesen Maps habe ich nun mal in Cinema eine Ebene versehen und einige Proberenderings gemacht. Hoffentlich waren die einzelnen Einstellungen in Ordnung, aber man sieht schon ziemliche Unterschiede.

Dieses Bild ist nur mit der Diffuse Map, also nur das reine Bild im Farbkanal:



Dieses Bild hat nur das Graustufenbild im Reliefkanal:



Dieses Bild ist mit dem Graustufenbild im Displacementkanal bei 100% und 5cm Tiefe gerendert:



So und dieses Bild hat nun die Normal Map im Normale Kanal:



Ich hoffe es verdeutlicht die Unterschiede ein weinig. Man kann sicher mit allen Einstellungen noch einiges verändern, aber die Grundzüge kommen schon gut zur Geltung. Es hat mich aber gewundert, daß der Displacement Versuch keine bessere Geometrie hervorgebracht hat. Aber vielleicht habe ich da nur die falschen Einstellungen.
Also soweit erstmal von meiner Seite, bin gespannt auf weitere Postings...
 

Eragon1337

Anders...

AW: Erste Normalmapping Versuche

Wow, sehr gute Arbeit =)
Zu dem Displacement: Scheint einfach zu wenig unterteilungen zu haben... Das is ja immer der Knackpunkt bei Displacement, es macht zwar schöne geometrien (jedoch nur rauf/runter) benötig dafür jedoch sau viele Unterteilungen... Für fein Strukturen dürfen es auch gerne mal auf einer Ebene 80 Unterteilungen bei 6fachem SubPolyDisplacement sein... das geht auf die Renderzeit ;)
 

VaultAvenger

Lerne noch!

AW: Erste Normalmapping Versuche

Habe noch schnell ne neue Displacement Map gemacht. Diesmal mit 80 Unterteilungen bei 6fachem SubPolyDisplacement und die Renderzeit springt von ein paar Sekunden auf 3,5 Minuten... Und das Ergebnis ist auch nicht grade überwältigend, aber seht selbst
 

Eragon1337

Anders...

AW: Erste Normalmapping Versuche

Jetzt siehts etwas übersteuert aus, viel zu Hoch die Geometrie... aber bei Ebenen mit nur kleinen Unebenheiten wie diesen ist eine Displacementmap eh eher ungeeignet. Die Höhen sind so fein, das man den Unterschied eh nich sehen würde, erst wenn man fast komplett von der Seite draufguckt...
 

kraid

reMember

AW: Erste Normalmapping Versuche

^^Trotzdem interessant.
Da das open Source ist, braucht jetzt nur noch jemand auf die Idee kommen das ganze in C4D zu integrieren und einen Weg zu finden das ganze auf ein UV editiertes mesh zu backen, dann bin ich absolut happy.

Ist auf jeden Fall ein guter Ansatz.
Falls ich das richtig verstanden habe wird aber statt einer Textur für jedes Face eine eigene Textur mit bis zu 2048x2048 texeln erstellt.
Dürfte also echt große ptex filoes zur Folge haben.
 

KBB

Mod 3D | Blaubaer

Teammitglied
AW: Erste Normalmapping Versuche

Da das open Source ist, braucht jetzt nur noch jemand auf die Idee kommen das ganze in C4D zu integrieren und einen Weg zu finden das ganze auf ein UV editiertes mesh zu backen, dann bin ich absolut happy.

Anscheinend ist schon jemand auf die Idee gekommen, das in 3D-Coat (sowas wie ZBrush oder Mudbox, mit weiteren Funktionen) => einzubauen.

Hm.. vielleicht gehört das hier in einen eigenen Thread. Sorry fürs Threadnapping Eragon.
 

Eragon1337

Anders...

AW: Erste Normalmapping Versuche

Hm.. vielleicht gehört das hier in einen eigenen Thread. Sorry fürs Threadnapping Eragon.

Och, finde schon das des was damit zu tun hat...
Das scheint dann die Zukunft zu sein ;)
Hatte die Tage eh kaum Zeit was zu machen, hoffe mal das ich heute die ersten Textfetzten fertig bekomme ;)
 

KBB

Mod 3D | Blaubaer

Teammitglied
AW: Erste Normalmapping Versuche

Ist ja kein Cinema-bezogenes Thema.. aber wenns Dich für das Script interessiert, poste ich weiter fröhlich das Thema berührende Infos ;)
 

Eragon1337

Anders...

AW: Erste Normalmapping Versuche

Lass ma lieber, ich hab so schon kaum Zeit um alles durchzulesen ;)
Soweit bin ich, was das Thema angeht, ausreichend informiert =)
Danke für das Angebot
 
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

Zurzeit aktive Besucher

Keine Mitglieder online.

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben