Autor Wątek: Blender i Unity3D - środek obrotu, i tekstury  (Przeczytany 4666 razy)

Offline Arthes

  • Użytkownik
    • Gromaniak

# Luty 19, 2012, 15:07:30
Witam.
Stworzyłem w Blenderze prościutki model czołgu. Wygląda on tak:

Exportuję go do formatu .dae, importuję do Unity3D, wrzucam na scenę. Wygląda to tak:


Problem 1:
Obiekt czołgu składa się z dwóch elementów: wieżyczki, oraz podstawy. Chcę mieć w grze możliwość obracania wieżyczki. Niby prosta sprawa, lecz gdy w Unity obracam obiekt wieżyczki, powstaje coś takiego:

Rozumiem, że jest coś nie tak ze środkiem obiektu. W jaki sposób mogę zmienić ten środek, by obracanie było normalne?

Problem 2:
Chcę nałożyć teksturkę na czołg o wymiarach 2048x2048 (moro). Przeciągam ją na model, i zamiast teksturki, jest sam kolor:

W jaki sposób to naprawić?

Może i to trochę 'noobskie' problemy, ale jestem początkującym. Bardzo prosiłbym o napisanie krok po kroku, jak rozwiązać dany problem.

Dzięki za pomoc, i pozdro! :)

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Joker

  • Użytkownik

# Luty 19, 2012, 15:17:08
Co do tekstur, dobrze nałożyłeś uvmapy w blenderze ?

Offline wietrzyk

  • Użytkownik

# Luty 19, 2012, 15:21:43
Miałem podobny problem jak eksportowałem model bez materiału,  unity wtedy potrafi zgubić uvkę. Co do wieżyczki, dałbym kość, przyparentował wieżyczkę i obracał ją  za pomocą kości.

Offline sztacheta28

  • Użytkownik
    • Wsparcie dla Unity 3d po polsku

# Luty 19, 2012, 15:30:27
Ad1.
1. Tworzysz pusty GameObject na scenie. Ustawiasz rotację na (0,0,0). Zmieniasz pozycję tak żeby był tam gdzie środek obrotu.
2. W Hierarchy łączysz, pusty GameObject z GameObjectem wieżyczki w relację rodzic-dziecko, tak żeby wieżyczka była dzieckiem pustego GameObjectu (w Hierarchy przeciągasz GameObject wieżyczki na dopiero co utworzony pusty GameObject )
W razie potrzeby zmieniasz położenie GameObjectu wieżyczki tak żeby była odpowiednio ustawiona.
3. Zmieniasz rotację pustego Gameobjectu i w ten sposób wieżyczka obraca się wokół osi tego pustego GameObjectu.

Offline Arthes

  • Użytkownik
    • Gromaniak

# Luty 19, 2012, 15:47:53
Zrobiłem coś takiego, ale niestety nie podziałało... Jak obracam ten pusty GameObject, to nadal wieżyczka się źle obraca.


Aa, no i co to są te 'uvmapy'? Nie robiłem nic takiego. W takim razie jak zrobić je poprawnie?

Offline sztacheta28

  • Użytkownik
    • Wsparcie dla Unity 3d po polsku

# Luty 19, 2012, 16:46:39
Obrót dokonywałeś poprzez zmianę wartości rotacji w Inspecotrze, poprzez skrypt, czy przy pomocy narzędzia do obrotu na scenie?

Druga rzecz to to czy na pewno dobrze dobrałeś środek obrotu(pusty GameObject) i miejsca w którym wieżyczka ma się obracać. Ma być to ten sam punkt.
« Ostatnia zmiana: Luty 19, 2012, 16:49:04 wysłana przez sztacheta28 »

Offline Arthes

  • Użytkownik
    • Gromaniak

# Luty 19, 2012, 16:47:23
Przy pomocy narzędzia do obrotu na scenie.

Offline sztacheta28

  • Użytkownik
    • Wsparcie dla Unity 3d po polsku

# Luty 19, 2012, 16:51:49
Narzędzie do obrotu na scenie nie działa tak samo jak obrót poprzez Inspector, albo skrypt. Inaczej jest obierany w obu przypadkach punkt obrotu. Wybierz pusty GameObject i zmieniaj jego rotację co 10 stopni w jego Inspectorze i sprawdzaj czy obrót wieżyczki jest właściwy.

Offline Arthes

  • Użytkownik
    • Gromaniak

# Luty 19, 2012, 17:01:45
Heh, faktycznie :) Dzięki wielkie.
A co z tymi teksturkami? Jak zrobić te uvki? :D

Offline Joker

  • Użytkownik

# Luty 19, 2012, 17:07:39
http://www.youtube.com/watch?v=N7tp1dH64l4 albo w Google: blender uv mapping tutorial