Dokładne tworzenie budynku w unity


#1

Chcę zrobić jakiś budynek w unity.
Chcę aby zrobiony budynek wyglądał ładnie. Mam kilka problemów z tym związanych:

-Skalowanie: Czy da radę ustawić skalowanie tak aby nie skalowało od środka obiektu, a każdą krawędź osobno.
-Dokładność: Chciałbym mieć dokładny budynek, więc chciałbym aby wszystko do siebie przylegało, czy można ustawić jakieś siatki, rzuty, podzielony ekran dla każdego widoku (z góry i z boków)?
-Teksturowanie: Załóżmy że mam budynek zrobiony z boxów, czy mogę każdą stronę tego boxa teksturować oddzielnie?

Czy coś robię źle, czy unity się do tego nadaje? Czy powinienem to zrobić w innym programie?


#2

Cześć, nie znam za dobrze Unity, bo osobiście preferuje UE4, ale jeśli dobrze rozumiem to chcesz wykorzystać podstawowe bryły dostępne w silniku, do zrobienia budynku. I takie podejście mogło by być dobre, gdybyś chciał wstępnie zaprojektować level albo by zrobić coś bardzo prostego i podstawowego. Ale z tego co pisałeś chcesz by był dokładny, więc wnioskuje też, że powinien być choć trochę realistyczny. Generalnie by to zrobić poprawnie i zachować jak największą kontrolę nad materiał, teksturami i modelami, powinieneś sobie odpowiedzieć na fundamentalne pytanie; Jak ten budynek będzie widziany przez gracza/odbiorce/użytkownika?

Widok z góry lub dalej od kamery - Możesz budynek wymodelować w wybranym programie graficznym. Dzięki temu będziesz mieć kontrole nad każdym indywidualnym poligonem co pozwoli ci na dużą dokładność. Dodatkowo będziesz mógł podzielić taki model na oddzielne materiały i przygotować poprawne UV, gdybyś chciał to jakoś lepiej teksturować.
Tu masz przykład takich modeli: https://magazine.artstation.com/2017/02/model-game-environment/

Duże zbliżenia na budynek lub widok z pierwszej osoby - W takim wypadku wymodelowanie budynku lub budynków może i prawdopodobnie będzie zbyt czasochłonne. Dodatkowo dochodzi problem skali i texel density samej tekstury (gdybyś chciał dawać na to jakieś lepsze tekstury). W takim wypadku, budynki tworzy się za pomocą “klocków”, czyli wcześniej przygotowanych pojedynczych elementów. Na przykład, tworzysz w programie graficznym ścianę, ścianę z oknem, ścianę z dziurą na drzwi i podłogę. Każdy z tych elementów ma 2mx2m. Zabierasz te elementy do unity i z nich budujesz twoją strukturę. Możesz też “złożyć” ją w programie graficznym i wyeksportować jako OBJ lub FBX. Takie podejście pozwala ci na dużą elastyczność i oszczędza dużo pracy. Ale z drugiej strony najlepiej będzie jak zaplanujesz i określisz dokładnie wcześniej jakich elementów strukturalnych potrzebujesz. Do tego ta metoda wymaga trochę innego wykonania tekstur i innego podejścia do szczegółów, takich jak farba, naklejki, uszkodzenia itp.
I przykład: https://polycount.com/discussion/144838/ue4-modular-building-set-breakdown/p1

Oczywiście wyżej wymienione przeze mnie metody nie są ostateczne i jedyne, są też opisane pobieżnie, Już nie mówiąc o tym, że dotyczą raczej renderownia w czasie rzeczywistym. Modele do renderowania offline będziesz mógł przygotować odrobinę inaczej. Mam nadzieje, że pomogłem i nie namotałem za bardzo. W razie czego pisz, z chęcią pomogę bardziej. Gdybyś potrzebował, to mam też więcej zapisanych linków i poradników.