Napisano 29 Marzec 201411 l Czy udało wam się wczytać takie grupy wygładzania w blenderze? Próbowałem takie formaty: obj, fbx, dae. Zdaję sobie sprawę że w blenderze chodzi o sharp edges i nadanie dla obiektu Add Modifier/Edge Split wyłączenie opcji Edge Angle i pozostawienie włączonej Sharp Edges. Wchodząc do edycji obiektu (obojętnie któregokolwiek z podanych powyżej formatów) nie było widać sharpedges w trybie edycji. Czy ktoś z was orientuje się jak ludzie obchodzą ten bug? Przeczesałem google i zauważyłem, że od któreś już wersji ten bug występuje. Ludzie mają z tym problem. Spotkałem się niejednokrotnie z opinią, że najlepiej takie obiekty rozcinać fizycznie, bo wtedy masz pewność że to wszędzie zadziała. Sam się posuwałem do takich rozwiązań, ale oczywiście to powoduje że rośnie liczba vertexów. Nie wiem do końca jak się podoba ten pomysł technicznym (gamedev). To pytanie będzie raczej do wyjadacza gameartu: Zastanawia mnie jak się ma wypalanie normalmap na obiekcie który ma hardedges (duplikowane normale na twardych krawędziach) a na obiekcie który ma je zrobione poprzez fizyczne rozcięcie (ciany tworzące hardedges mają własne vertexy). Nie testowałem tego, logika mi podpowiada że będzie to samo.
Napisano 29 Marzec 201411 l Raczej nie wczytasz obiektów z smooth group znanymi chociażby z maxa. Blender z tego co wiem nie obsługuje tego. Rozcięcie fizyczne a smooth group to praktycznie to samo. Co do wypalania to pamietaj żeby każdą "smooth grupę" oddzielić kilkoma pikselami. Taka sama zasada jak w każdym sofcie.
Napisano 29 Marzec 201411 l Liczba vertexów w engine się nie zmieni, tak naprawdę w silniku smooth groups i tak są rozcięte. Problem przy split edges to ustawianie cage a nie vertex count.
Napisano 29 Marzec 201411 l Autor Raczej nie wczytasz obiektów z smooth group znanymi chociażby z maxa. Blender z tego co wiem nie obsługuje tego. Rozcięcie fizyczne a smooth group to praktycznie to samo. Co do wypalania to pamietaj żeby każdą "smooth grupę" oddzielić kilkoma pikselami. Taka sama zasada jak w każdym sofcie. Niby jestem z tematem obyty, ale jednak "niedouczony" jak widać. Tutaj też pojawi się moje kolejne pytanie. Czy brak kilkupixelowych odstępów na UV w miejscach gdzie są granice smooth grupy ma związek z pojawianiem się czarnych lini na krawędziach w renderze w silniku?
Napisano 29 Marzec 201411 l Tak, bo masz ostre przejście w miejscu rozcięcia. Normalne skierowane w różnych kierunkach, przy wypalaniu próbuje zapisać wartości obu normali na tym samym pixelu textury - w efekcie masz błąd na normal mapie. Dlatego każda smooth group powinna być na osobnej UV island. Do tego powinieneś używać averaged cage, zobacz na przykłady na obrazku.Przykład averaged i unaveraged cage masz na screenie w moim poprzednim poście.
Napisano 29 Marzec 201411 l Autor Jeszcze jedno pytanie mam w tym temacie. Mam czasami takie sytuacje, że po wypaleniu i w podglądzie mam jeden rozmazany poligon. Źle mi go wyświetla Blender i Unity a MODO ok. Ale jeśli zrobię mu podział na trójkąty (po odpowiedniej przekątnej tego poly) zaczyna wyglądać ok. Zawsze mnie zastanawiało czy nie bezpieczniej jest przeprowadzić podział na trójkąty przed wypaleniem normalmapy, tak aby mieć pewność że silnik nie zrobi sobie triangulacji w nieco inny sposób i że nie wyjdą pewne takie błędy. Nie spotykam się co prawda z taką praktyką, no ale może tutaj też jestem niedouczony :D
Napisano 29 Marzec 201411 l wiem że w mayi są takie problemy że wygląd normalmapy się różni od tej wypalonej w np xnormalu wlasnie z powodu który opisales. Co do blendera/unity/modo to trudno powiedzieć gdzie jest problem.
Napisano 29 Marzec 201411 l Prawidłowo powinieneś wypalać na ztrianguralizowanym meshu, właśnie dlatego że różne programy mogą różnie trianguralizować. Nie zawsze jednak jest taka możliwość - np. robisz na zlecenie i życzą sobie modele w quadach, wtedy zawsze mogą coś łatwo poprawić czy zmienić w LP. Można też edytować trianguralizacje polygonu, nie wiem jak w modo czy blenderze, w maxie można obracać niewidoczne edge ręcznie kiedy coś nie pasuje. Zamiast tego możesz zmienić problematycznego quada po prostu na 2 triangle. Druga sprawa to synchronizacja tangent z enginem, wypalona normalka może mieć inny tangent base (czy jak to się nazywa;)) niż wymagany przez engine. Edytowane 29 Marzec 201411 l przez diabelt
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto