gryzon Napisano 29 Marzec 2014 Napisano 29 Marzec 2014 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.
rice Napisano 29 Marzec 2014 Napisano 29 Marzec 2014 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.
diabelt Napisano 29 Marzec 2014 Napisano 29 Marzec 2014 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.
gryzon Napisano 29 Marzec 2014 Autor Napisano 29 Marzec 2014 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?
diabelt Napisano 29 Marzec 2014 Napisano 29 Marzec 2014 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.
gryzon Napisano 29 Marzec 2014 Autor Napisano 29 Marzec 2014 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
rice Napisano 29 Marzec 2014 Napisano 29 Marzec 2014 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.
diabelt Napisano 29 Marzec 2014 Napisano 29 Marzec 2014 (edytowane) 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 2014 przez diabelt
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się