Odpowiedź 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
[OMSI 1 & 2] Boundingbox - obwiednia
Autor Wiadomość

strefa-omsi.pl
Administratorzy
Liczba postów: 1,377
Dołączył: 12-2012
Podziękowań: 371
Post: #1
Boundingbox - obwiednia
Tym razem bardzo krótkie wyjaśnienie kwestii dotyczącej obwiedni pojazdu (ang. "boundingbox").

Otóż obwiednia jest niezbędna do odpowiednich wyliczeń dla danych geometrycznych pojazdu, a przede wszystkim - symulacji kolizji. Tworzy ona niejako prostopadłościan wokół modelu, którego ściany stanowią "granice" wykrywania kolizji.

Deklarację obwiedni można znaleźć pod słowem kluczowym:
Kod:
[boundingbox]
znajdującym się w pliku .bus lub .ovh pojazdu.

Aby odpowiednio ustawić obwiednię musimy znać przede wszystkim:
- szerokość pojazdu bez lusterek - podawaną w metrach
- długość pojazdu - także podawaną w metrach
- wysokość pojazdu - w tej samej jednostce jak wyżej

Znając powyższe, możemy zabierać się za wklepywanie odpowiednich wartości pod wcześniej wymienione słowo kluczowe. Powinny się tam znaleźć odpowiednio dane o:
- szerokości pojazdu
- długości pojazdu
- wysokości pojazdu
- przesunięciu punktu centralnego obwiedni od punktu środkowego pojazdu (niem. Nullpunkt, czyli punkt 0,0,0 w pliku 3D pojazdu) po osi X (a więc tej od szerokości) w metrach
- przesunięciu punktu centralnego obwiedni od punktu środkowego pojazdu po osi Y (od długości) w metrach
- przesunięciu punktu centralnego obwiedni od punktu środkowego pojazdu po osi Z (od wysokości) w metrach

Jeśli ktoś nadal nie rozumie trzech ostatnich myślników - wyjaśniam. Obwiednia jest tworzona wokół pewnego punktu, którą przetłumaczyłem sobie jako "punkt centralny obwiedni". Skoro operujemy w 3D, mamy trzy współrzędne tego punktu: X, Y i Z. Od niego "rozwijane" są odległości podawane wcześniej. Czyli ustawiając szerokość w pierwszym myślniku na 2 metry a w czwartym myślniku przesunięcie 0 - mamy taką sytuację:
   
Kolizja po tej osi zostanie wykryta, gdy jakiś obiekt znajdzie się w pasie między współrzędnymi -1 a 1 na osi X biorąc pod uwagę wartości z programu 3D.

Jeśli natomiast w czwartym myślniku podamy przesunięcie -0.5:
   
Tutaj kolizja po tej osi zostanie wykryta, gdy jakiś obiekt znajdzie się w pasie między współrzędnymi -1,5 a 0,5 na osi X biorąc pod uwagę wartości z programu 3D.

Adekwatna sytuacja ma się dla pozostałych osi.

Przy ustawieniu trzech ostatnich myślników na 0 - punkt centralny obwiedni = punktowi 0,0,0 w układzie współrzędnych w programie 3D.
O ile przestawianie punktu centralnego dla szerokości akurat większego sensu zazwyczaj nie ma, o tyle, żeby uwzględnić wystający przedni zderzak, zwykle wartość przesunięcia dla długości (piąty myślnik) nieco odbiega od wartości 0. Pewnikiem jest, że w 99% przypadków wymagane jest ustawienie odpowiedniego przesunięcia po osi Z, czyli dla wysokości, żeby obwiednia nie wtapiała się niepotrzebnie w ziemię oraz żeby niski autobus zmieścił się w np. tunelu bądź pod innymi obiektami.

Gotowy wpis obwiedni wygląda na przykład tak:
Kod:
[boundingbox]
2.5
11.46
3.76
0
-0.01
2.29

Niepoprawne ustawienie wartości może skutkować dziwnymi i śmiesznymi kolizjami podczas jazdy. Często winę za tzw "niewidzialne ściany" zrzuca się na twórców map, tymczasem nie wszystkie pojazdy mają odpowiednio ustawioną obwiednię i przez to wywoływane są nierealistyczne kolizje z elementami scenerii.

Poradnik został napisany wyłącznie dla Forum http://strefa-omsi.pl i nie może być rozpowszechniany we fragmentach lub w całości na innych stronach bez zezwolenia głównego Autora.


♪ "Nie pytaj mnie, wiem tyle co i ty" ♪

Zanim cokolwiek napiszesz, przeczytaj koniecznie REGULAMIN
Jeśli masz problem techniczny, zapoznaj się z ZASADAMI DZIAŁÓW TECHNICZNYCH
Jeśli chcesz podzielić się dodatkiem, zapoznaj się z REGULAMINEM DZIAŁU POBIERALNIA

(Ten post był ostatnio modyfikowany: 22.02.2015 13:45 przez skawek.)
07.08.2013 23:53
Szukaj postów Cytat
 Podziękowania za post: sebag23
Odpowiedź 




Użytkownicy przeglądający ten wątek: 1 gości

Forum Strefa-OMSI.pl

Tematyczne Forum dotyczące najpopularniejszego symulatora autobusu - OMSI. Zapraszamy do rejestracji i aktywnego udziału w Społeczności.

Strona wykorzystuje pliki cookies. Korzystanie z witryny oznacza zgodę na ich zapis lub odczyt wg ustawień przeglądarki.

Współpracujemy z:

Polecamy także: