[UNITY] Unoszenie na wodzie (problem!?) 5338 5

O temacie

Autor Ridic530

Zaczęty 7.08.2012 roku

Wyświetleń 5338

Odpowiedzi 5

Ridic530

Ridic530

Użytkownicy
posty73
Propsy3
  • Użytkownicy
Znalazłem pewien skrypt związany z wodą: http://forum.unity3d.com/threads/72974-Buoyancy-script "Requires a collider and rigidbody components." Więc dodałem do FPController rightbody a do wody collider'a

Sytuacja a) dodaję skrypt do wody:
YYY woda lata(zmianiają się wszystkie liczby w transform)
Sytuacja b) dodaję skrypt do FPC
Woda nie reaguje chyba że na nią wskoczę to wywala mnie w kosmos(dosłownie)
Chciałbym się dowiedzieć jak tego skryptu użyć?
Więc proszę o pomoc!?
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Przecież wystarczy przeczytać skrypt żeby z grubsza wiedzieć jak działa.
Nic nie robisz z wodą. Skrypt podłączasz do obiektu który ma pływać, jak nie ma ridgidbody lub collidera to sam je dołącza. W funkcji GetWaterLevel ustaw sobie poziom wody, docelowo jeśli chcesz mieć różne zbiorniki z różnym poziomem, będziesz musiał napisać mechanizm który będzie wykrywał dla każdego oddzielny (można zrobić to łatwo np umieszczając na środku zbiornika obiekt będący odpowiednikiem Gothicowego triggera OnTouch, sprawdzającego własny poziom i przekazującego go dalej).

Ridic530

Ridic530

Użytkownicy
posty73
Propsy3
  • Użytkownicy
Działa dzięki!!!
Tylko jest jeden problem z FPC bo gdy on znajdzie się w strefie wody wyrzuca(wy****dala) go w powietrze
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Wpisz tam liczbę która stanowi współrzędną Y położenia obiektu wody. Niestety nie jestem w stanie doradzić ci nic więcej, musiałbyś samemu obserwować parametry w skrypcie w runtime i znaleźć przyczynę. Czy MeshCollider obiektu który ustawiłeś ma odpowiedni model?

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

[UNITY] Unoszenie na wodzie (problem!?)
#4 2012-08-07, 21:49(Ostatnia zmiana: 2012-08-07, 22:02)
Eeee... aha. Mogłeś napisać nowego posta zamiast edytować. Cóż, musisz znaleźć co takiego to powoduje, nie jestem raczej w stanie bezpośrednio ci pomóc. Prawdopodobnie te dwa skrypty korzystają z różnych zmiennych na określenie siły działającej na obiekt w pionie (z punktu widzenia realnej fizyki: wypadkowej siły grawitacji i sił sprężystości podłoża, a w przypadku ciała zanurzonego w wodzie także siły wyporu). Musiałbyś ujednolicić wykorzystywaną przez nie jednostkę i zastosować w ich miejsce wspólną zmienną. Przykro mi, Unity to silnik, nie jest raczej dla osób które chcą korzystać z gotowych skryptów nie rozumiejąc ich i nie pisząc samemu.

@down: Musiałem zedytować posta, bo najpierw w swoim napisałeś że bez względu na to co wpisujesz nadal nie działa, potem "dzięki, działa", a potem znowu że działa ale masz inny problem. "Zamykam" napisałem po twojej pierwszej edycji, ale przed drugą. Następnym razem nie nadpisuj totalnie zawartości starego posta, tylko albo dodawaj coś na dole, albo pisz nowego...

@down: kurwa, znowu to robisz. Teraz skasowałeś zawartość posta i zmieniłeś na ".". No bez jaj. Jak dalej tak będziesz robił, albo przestanę ci odpisywać, albo zabiorę możliwość edytowania. Korzystaj z edycji do dopisywania czegoś albo poprawiania błędów, nie totalnego wywalania zawartości postów w trakcie dyskusji :facepalm:

@down: o, teraz skasowałeś kropkę i napisałeś w jej miejsce innego posta.

Ridic530

Ridic530

Użytkownicy
posty73
Propsy3
  • Użytkownicy
Wiem że daleko nie zajadę na gotowcach to prawda... Ale chciałem sprawdzić czy to rzeczywiście działa no i jak widać tak.
 Ja na razie zrobiłem dialog z animacjami a teraz "studjuję" dokumentację Unity
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry