Ich habe mit Blender ein einfaches strukturiertes Würfelmodell erstellt, um das Modellieren zu üben, und es dann in Unity importiert. Nachdem ich etwas Licht gemacht habe, sieht es ziemlich hässlich aus. Das Licht einer Reihe strukturierter Würfel ist nicht kontinuierlich:
Was noch seltsamer ist, das Licht auf den Blöcken, aus denen der Boden besteht, ist kontinuierlich. Was mache ich falsch?
So sieht es ohne Texturen aus:
Wenn ich nicht wüsste, dass dies perfekte Würfel sind, würde ich sagen, dass die Oberfläche eine leichte Krümmung aufweist. Ich habe auch versucht, die Textur aufzuhellen, aber es hat auch nicht geholfen:
Ich habe das Modell einfach aus Blender exportiert und keine Normalen oder ähnliches eingerichtet. Allerdings habe ich auch mit dem Bodenziegelmodell nichts Besonderes gemacht.
Überprüfte die Normalen und sie scheinen in die richtige Richtung zu zeigen.
Auch sehe ich den Unterschied zwischen den beiden Modellen nicht wirklich. Im Texturfenster habe ich auch die Projektion auf flach gesetzt:
Ich habe die verschiedenen Bedienfelder in Blender überprüft und die einzige normalbezogene Option im Bedienfeld "Objektdaten" ist "Automatisch glätten". Sie ist standardmäßig deaktiviert:
Antworten:
Aus dem Bild ohne Textur bin ich mir ziemlich sicher, dass das Problem darin besteht, dass Ihre Würfelmodelle unangemessene Normalen haben. Sie müssen Blender mitteilen, dass Ihre Würfelkanten scharf und nicht glatt sein sollen. Was Sie jetzt haben, sind Würfel, die sich wie sechsseitige Annäherungen von Kugeln verhalten.
Ich kenne Blender nicht, daher kann ich Ihnen nicht genau sagen, wie Sie dies erreichen sollen, aber es könnte als "flach" anstelle von "glatten" Gesichtern oder Normalen bezeichnet werden, oder es könnte eine Möglichkeit geben, eine bestimmte Kante zu "brechen". Ihr Bodenfliesenmodell scheint korrekte Normalen zu haben, also sollten Sie vielleicht sehen, was daran anders ist.
quelle
Ein paar Vorschläge, wo das Problem liegen könnte:
a) Haben Sie überprüft, ob alle Gesichtsnormalen des Netzes in die richtige Richtung zeigen? Es ist ganz einfach, dies in Blender zu tun.
b) Haben Sie das richtige UV-Mapping angewendet? Unity exportiert alle Texturdaten basierend darauf, wie Sie die Dinge in Blender eingerichtet haben. Schauen Sie sich das Texturbedienfeld in Blender an, insbesondere das 'Mapping'-Bedienfeld unter Texturen (idealerweise sollte es auf UV eingestellt sein.
(PS: Wie lauten die Richtlinien hier für Anhänge oder das Posten von Links zu Projektdateien, z. B. ein Dropbox- oder Google Drive-Link in der Frage? Dies sollte so einfach zu beheben sein, wenn ich nur alle Dateien sehen könnte.)
quelle