przez Emi
Czasami, gdy import model do 3DCoat, normal map w rendererze rzutni nie wyświetla się poprawnie. Ale zaczyna się od sposobu, w jaki eksportujesz swój model do dowolnego innego oprogramowania.
Zwykła mapa może nieco rozwiązać problemy z cieniowaniem i sposobem odczytywania normalnych map przez oprogramowanie, co może sprawić, że problem będzie mniej zauważalny, ale problem nadal występuje. Musisz zastosować pewne zasady, które pomogłyby rozwiązać prawdziwy problem, aby ułatwić pracę i życie, piecząc lepsze normalne mapy.
Bez stosowania tych zasad większość normalnych była przeciętna, a niewielu było trudnych, co było dziwne. Ale to zdecydowanie jest główna przyczyna problemów, sposób eksportowania grup wygładzających dla twojego modelu i sposób ich odczytywania w innym oprogramowaniu.
Po pierwsze, pudełka nie mogą mieć miękkich ani średnich krawędzi, mają kąty 90° i niezależnie od tego, co zrobisz, zawsze będą pojawiały się problemy z oświetleniem, jeśli nie są ustawione na twarde krawędzie. W przeszłości, zanim bardziej zaawansowane programy do pieczenia, takie jak Marmoset, ułatwiały to, zawsze trzeba było tworzyć klatkę, a klatka miała średnie normalne wierzchołki, więc klatka była używana do robienia średniej. wyszukiwanie” high-poly, bez powodowania błędów podczas pieczenia, ponieważ pudełko przypominałoby twarde krawędzie. Oczywiście teraz Marmoset ma pole wyboru „gładka klatka”, które robi to samo i teraz nie potrzebujesz klatki, chyba że naprawdę potrzebujesz klatki.
Istnieją więc tutaj dwie „zasady”, które również są ze sobą powiązane:
1. Kiedy robisz modele pod kątem 90°, zawsze powinny być twarde. Oczywiście można również wykonać niewielkie ukosowanie i uniknąć krawędzi pod kątem 90°. nie tylko będzie to ściśle odzwierciedlało kształt modelu w wysokiej rozdzielczości, ale także możesz użyć miękkich krawędzi pudełka, aby wyglądało ładniej i mniej problemów, a także było zaokrąglone i ładniejsze i tak dalej.
2. Twarde krawędzie (które w zasadzie powinny mieć kąt 90°) powinny być zawsze dzielone w świetle UV , aby uniknąć problemów. Możesz tego nie zauważyć na swoim modelu, ale tak jest i ma to związek ze sposobem, w jaki piksele spotykają się pod kątem 90° i pokazują, jak piksele mogą się zmieszać, a są po prostu inne, więc nie ma wystarczającej ilości miejsca, jak w przypadku wypełnienia, aby naprawić drobne problemy, które mogą się zdarzyć. Tak, to zależy od rozdzielczości, promieni UVs i tak dalej, i to może sprawić, że będzie bardziej zauważalne niż inne, ale tak, w takim przypadku, jak ten, gdy robisz pudełka, musiałbyś podzielić wszystkie te krawędzie pod kątem 90° i tak, oznacza to 6 boków pudełka = 6 wysp, aby uniknąć problemów.
Mówimy o 3DCoat i jego działaniu z ustawieniami wstępnymi i tak dalej. Rozumiem, że używając ustawień wstępnych, takich jak Blender lub Unity, w rzeczywistości używasz predefiniowanego pliku nie tylko z tym, jak będzie traktował mapę Normal, ale czy zostanie ona odwrócona na zielono, czy nie. Ale także przestrzeń styczna, triangulacja i sposób eksportu normalnych oraz kilka innych opcji. Jeśli skorzystasz z opcji Nieznane, będziesz mógł skorzystać z tych, które ustawiłeś w preferencjach.
Jeśli pójdziesz do C:Program Files 3DCoat-VXXXToolsPresetsExtTools, zobaczysz pliki XML i to, czym Unity różni się od Blender, ponieważ ustawienie wstępne Blender używa MikkTSpace, podczas gdy unity jest ustawione na LengyelAreaAngleWeightedSpace. To jest jedyna różnica. ale najwyraźniej wystarczy, abyś to zobaczył, ponieważ są one różnie interpretowane. Technicznie rzecz biorąc, nie powinny one mieć większego wpływu na nic, a jedynie na sposób, w jaki odczytuje normal map , jeśli jest to „DirectX” lub „OpenGL”, ale źródłem problemu z cieniowaniem nie jest normal map, ale model i tak będzie zawsze bądź wzorem.
Pomijając zasady UVs , problemy, które powoduje, są minimalne, jeśli jesteś tego świadomy, to twój wybór, oszczędzając trochę przestrzeni UV i ignorując krawędzie i problem, który może się zdarzyć, zamiast robić to poprawnie, ponieważ musiałbyś podejść zbyt blisko aby zauważyć problemy. czasami zdarzało mi się, że między krawędziami jest duża szczelina.
Jeśli nie możesz mieć pudełek o przeciętnych wierzchołkach normalnych lub miękkich, muszą one wyglądać jak pudełka o twardych krawędziach, ponieważ mają krawędzie pod kątem 90°. Jeśli chcesz użyć miękkich krawędzi, musisz utworzyć fazę.
Boksery powinny mieć w 100% twarde krawędzie, Cylindry powinny być twarde na górze i na dole, a boki miękkie.
W przypadku modeli o niskiej zawartości poliestru sugeruję wykonanie skosów, nawet niewielki skos będzie miał duże znaczenie w wielu przypadkach, szczególnie dzisiaj, gdy nie ma wymówki, aby mieć pudełko bez skosu w przypadku czegoś takiego.
Presety 3DCoat to tylko małe odmiany, które można nawet wybrać ręcznie, używając nieznanego. Nie potrzebujesz presetów, mają one tylko pomóc 3DCoat w interpretacji normal map i modelu, ale nigdy nie ufam presetom, ponieważ tak jak mówisz, presety Unity powinny ustaw na MikkTSpace. Ale chodzi mi o to, że nie chodzi tylko o normal map OpenGL i DirectX.
Tak więc, kiedy używam 3DCoat , który zwykle służy do malowania, wszystko działa dobrze, ale dzieje się tak dlatego, że upewniam się, że wszystko na moim niskim poli jest również dobre, to znaczy, aby tworzyć dobre normalne mapy i sprawić, by działały wszędzie tam, gdzie potrzebujesz dobrego niskiego poziomu poli, które może uchwycić dowolne szczegóły high-poly, które wykonałeś. Nie ma w tym żadnej magii, to po prostu działa, bo dbam o wszystko, np. o grupy wygładzające, UVs i tak dalej.
Chodzi mi o to, że model z krawędziami 90° powinien automatycznie ustawić się na twardą krawędź, nie ma innego wyjścia i tyle. nie ma znaczenia, czy sześcian ma 6 boków, jak w tym przypadku, czy 1000 podziałów: szerokość, wysokość i głębokość. Jeśli nie ustawisz kąta 90° pudełka jako twardej krawędzi, zawsze będzie ono miało dziwne cieniowanie na krawędziach, które mają 90°, ale są ustawione na miękkie lub cokolwiek innego.
Jeśli stosujesz pojedynczą grupę wygładzającą do całego zestawu obiektów… to jest złe, ponieważ nie możesz uzyskać miękkich krawędzi Pudełek, szczególnie jeśli są to tylko sześciany z 6 ścianami.
Nie możesz „wygładzić” czegoś takiego, szczególnie jeśli masz proste pudełko z 6 wielokątami, jeśli chcesz użyć pudełka, ustaw wszystkie boki na Twarde krawędzie. Jedynym rozwiązaniem jest dodanie skosu wokół krawędzi, aby załamać kąt 90°, a następnie ustawić go na miękki. Baking normal map w celu ukrycia problemu nie jest rozwiązaniem, może wyglądać trochę lepiej, ale na modelu nadal występuje błąd cieniowania. Nawet cylindry powinny mieć miękkie krawędzie po bokach, a na górnej i dolnej powierzchni powinny być ustawione na twarde krawędzie, chyba że dodasz skos.
Pytanie brzmi: czy nadal chcesz zachować wszystko jako jedną grupę wygładzającą? chyba że odpowiednio nad tym popracujesz i ustawisz twarde krawędzie, twarde i miękkie krawędzie, miękkie lub dodasz skosy pod każdym kątem 90°, wtedy nic nie rozwiąże problemu i musisz po prostu ukryć problem za pomocą normal map i udawać, że nie ma problemu istnieje.
Mam nadzieję, że przyzwoicie wyjaśniłem, na czym polegają problemy, co może ci pomóc w przyszłym normal map .
Powodzenia i miłego dnia!