von Emi
Wenn Sie das Modell in 3DCoat import , wird die normal map im Ansichtsfenster-Renderer manchmal nicht richtig angezeigt. Aber es beginnt mit der Art und Weise, wie Sie Ihr Modell mit einer anderen Software exportieren.
Die Normalkarte könnte die Schattierungsprobleme ein wenig beheben, da die Normalkarten von der Software gelesen werden, und das Problem könnte dadurch etwas weniger auffällig werden, aber das Problem besteht immer noch. Sie müssen einige der Regeln anwenden, die zur Lösung des eigentlichen Problems beitragen, um die Arbeit und das Leben durch das Erstellen besserer Normalkarten zu erleichtern.
Ohne die übliche Anwendung dieser Regeln waren die meisten Normalen durchschnittlich und nur wenige waren schwer, was seltsam anzusehen war. Aber das ist eindeutig der Hauptgrund für die Probleme: Wie werden die Glättungsgruppen für Ihr Modell exportiert und wie werden sie in anderer Software gelesen?
Erstens können die Boxen keine weichen oder durchschnittlichen Kanten haben, sie haben einen 90°-Winkel, und egal, was Sie tun, sie werden immer dieses Beleuchtungsproblem haben, wenn sie nicht auf harte Kanten eingestellt sind. In der Vergangenheit, bevor fortgeschrittenere Backprogramme wie Marmoset es einfacher zu machen schienen, musste man immer einen Käfig erstellen, und der Käfig war derjenige mit den durchschnittlichen Scheitelpunktnormalen, also wurde der Käfig verwendet, um den Durchschnitt zu erstellen. Suchen’ des High-Poly, ohne Fehler beim Backen zu verursachen, da die Box harte Kanten ähneln würde. Natürlich hat Marmoset jetzt das Kontrollkästchen „Glatter Käfig“, das dasselbe tut, und jetzt brauchen Sie keinen Käfig mehr, es sei denn, Sie brauchen wirklich einen Käfig.
Hier gibt es also zwei „Regeln“, die auch miteinander verknüpft sind:
1. Wenn Sie Modelle mit 90°-Winkeln erstellen, sollten diese immer hart sein. Natürlich können Sie auch ein wenig abschrägen und so die 90°-Winkelkanten vermeiden. Dies folgt nicht nur der Form des hochauflösenden Modells, sondern Sie können auch die weichen Kanten der Box nutzen und dafür sorgen, dass sie schöner und mit weniger Problemen aussieht, abgerundet und hübscher und so weiter.
2. Harte Kanten (die eigentlich 90°-Winkel haben sollten) sollten immer auf dem UV geteilt werden, um ebenfalls Probleme zu vermeiden. Sie bemerken es vielleicht nicht wirklich an Ihrem Modell, aber es ist da und es hat damit zu tun, wie das Pixel treffen sich im 90°-Winkel und wie Pixel möglicherweise gemischt werden, sind sie einfach unterschiedlich, sodass nicht genügend Platz vorhanden ist, wie es durch eine Auffüllung möglich wäre, um die kleinen Probleme zu beheben, die auftreten könnten. Ja, es hängt von der Auflösung und den UVs und all dem ab, und das macht es vielleicht auffälliger als andere, aber ja, in einem Fall wie diesem, bei dem Sie Boxen erstellen, müssten Sie alle 90°-Kanten teilen, und ja, das bedeutet 6 Kastenseiten = 6 Inseln, um Probleme zu vermeiden.
Ich spreche über 3DCoat und wie es mit Voreinstellungen und all dem funktioniert. Was ich darüber verstehe, ist, dass Sie durch die Verwendung von Voreinstellungen wie Blender oder Unity tatsächlich eine vordefinierte Datei verwenden, die nicht nur festlegt, wie sie mit der Normal-Map umgeht, sondern auch, ob sie grün umgedreht wird oder nicht. Aber auch Tangent Space, die Triangulation und wie sie die Normalen exportiert und einige andere Optionen. Wenn Sie die Option „Unbekannt“ verwenden, können Sie diejenigen in den Einstellungen verwenden, die Sie festgelegt haben.
Wenn Sie zu C:Program Files 3DCoat-VXXXToolsPresetsExtTools gehen, sehen Sie die XML-Dateien und wie sich Unity von Blender unterscheidet, da die Blender Voreinstellung MikkTSpace verwendet, während unity auf LengyelAreaAngleWeightedSpace eingestellt ist. Das ist der einzige Unterschied. aber anscheinend genug, damit Sie es sehen können, weil sie unterschiedlich interpretiert werden. Technisch gesehen sollten sie kaum Auswirkungen haben und nur die Art und Weise, wie die normal map gelesen wird, wenn es sich um „DirectX“ oder „OpenGL“ handelt, aber die Ursache des Schattierungsproblems liegt nicht in der normal map, sondern im Modell, und das wird auch der Fall sein Sei immer das Vorbild.
Abgesehen von den UVs Regeln sind die dadurch verursachten Probleme minimal. Wenn Sie sich dessen bewusst sind, haben Sie die Wahl, etwas UV Platz zu sparen und die Kanten und das Problem, das auftreten könnte, zu ignorieren, anstatt sie richtig auszuführen, da Sie zu nahe herangehen müssten um die Probleme zu bemerken. Manchmal gibt es eine große Lücke zwischen den Rändern, ist mir schon passiert.
Wenn Sie keine Boxen als durchschnittliche Scheitelpunktnormalen oder weiche Boxen haben können, müssen sie wie Boxen mit harten Kanten aussehen, da es sich um 90°-Winkelkanten handelt. Wenn Sie weiche Kanten verwenden möchten, müssen Sie eine Abschrägung erstellen.
Boxershorts sollten zu 100 % harte Kanten haben, Zylinder sollten oben und unten hart und die Seiten weich sein.
Für Low-Poly-Modelle schlage ich vor, Abschrägungen anzufertigen. In vielen Fällen macht eine kleine Abschrägung einen großen Unterschied, insbesondere heute, wo es keine Entschuldigung mehr gibt, für so etwas eine Box ohne Abschrägung zu haben.
3DCoat Voreinstellungen sind nur kleine Variationen, die Sie sogar manuell auswählen können, indem Sie unbekannt verwenden. Sie benötigen die Voreinstellungen nicht, sie dienen nur dazu, 3DCoat bei der Interpretation der normal map und des Modells zu helfen, aber ich vertraue den Voreinstellungen nie, denn wie Sie sagen, Unity Voreinstellungen sollten es tun auf MikkTSpace eingestellt sein. Aber mein Punkt ist, dass es nicht nur um OpenGL vs. DirectX normal map geht.
Wenn ich also 3DCoat verwende, was normalerweise zum Malen dient, funktioniert alles gut, aber das liegt daran, dass ich sicherstelle, dass auch alles auf meinem Low-Poly gut ist, ich meine, um gute Normalkarten zu erstellen und sie überall dort funktionieren zu lassen, wo man ein gutes Low braucht Poly, das alle von Ihnen erstellten High-Poly-Details einfangen kann. Es gibt keine Zauberei, es funktioniert einfach, weil ich mich um alles kümmere, wie die Glättungsgruppen und UVs und so weiter.
Was ich meine ist, dass ein Modell mit 90°-Kanten automatisch auf harte Kante eingestellt werden sollte, es gibt keinen anderen Weg und das war’s. Es spielt keine Rolle, ob der Würfel wie in diesem Fall 6 Seiten oder 1000 Unterteilungen in Breite, Höhe und Tiefe hat. Wenn Sie den 90°-Winkel einer Box nicht als harte Kante festlegen, wird es immer die seltsame Schattierung an den Kanten aufweisen, die 90° betragen, aber auf weich oder was auch immer eingestellt sind.
Wenn Sie eine einzelne Glättungsgruppe auf den gesamten Satz von Objekten anwenden, ist das falsch, da Sie keine weichen Kanten an Boxen erstellen können, insbesondere wenn es sich bei den Objekten nur um Würfel mit sechs Flächen handelt.
Sie können so etwas nicht „glätten“, insbesondere wenn Sie eine einfache Box mit 6 Polygonen haben. Wenn Sie eine Box verwenden möchten, stellen Sie alle Seiten auf „Harte Kanten“ ein. Oder die andere Möglichkeit besteht darin, eine Abschrägung an den Kanten hinzuzufügen, um den 90°-Winkel hart zu machen, und ihn dann auf weich einzustellen. Das Baking der normal map , um das Problem zu verbergen, ist keine Lösung. Es sieht vielleicht etwas besser aus, aber der Schattierungsfehler ist immer noch im Modell vorhanden. Sogar die Zylinder sollten weiche Kanten an den Seiten haben und an der Ober- und Unterseite sollten sie auf harte Kanten eingestellt sein, es sei denn, Sie fügen eine Abschrägung hinzu.
Die Frage ist also: Möchten Sie immer noch alles als eine einzige Glättungsgruppe behalten? Wenn Sie nicht richtig daran arbeiten und Dinge einstellen, die harte Kanten hart und weiche Kanten weich sein sollen, oder an jedem 90°-Winkel Abschrägungen hinzufügen, wird Ihr Problem durch nichts behoben, und Sie müssen das Problem einfach mit der normal map verbergen und so tun, als gäbe es kein Problem existiert.
Ich hoffe, ich habe die Probleme hier anständig erklärt, damit es Ihnen bei Ihren zukünftigen normal map helfen kann.
Viel Glück und einen schönen Tag!