XNA - odrobina fizyki (wartości układu współrzędnych oraz trochę o BoundingSphere)

0

Witam;
Mam problem związany z układem współrzędnych w XNA, a dokładnie mówiąc o jego wartościach. Chodzi o to, że jak słyszałem, każde wartości w bibliotekach do gier są odpowiednikami prawdziwych wartości. A w moim przypadku przesuwam model np. o 0.5 jednostki w gore (oś Y), robie to za pomocą napisanej funkcji do obsługi klawiatury (przytrzymanie przycisku „strzałka w górę”), i wywołuje ja w Update(). I oczywiście jak długo przytrzymuje przycisk tak długo model przesuwa się o dana wartość w górę. Lecz moim problemem jest to iż nie mogę napisać iż przesuwam model o 0.5 jednostki w górę, lecz model przesuwa się z dana prędkością (np. 0.5 metra/centymetra na sekundę). Nie wiem właśnie na podstawie jakich wartości przedstawiane są jednostki (odległości) w XNA. Lub ewentualnie jak przeskalować dane przesunięcie aby przedstawić ten ruch w jednostkach fizycznych (o to tak w zasadzie chodzi).
Co do drugiej części tytułu posta... jest w zasadzie związany z wcześniejszym wywodem. Jak za pomocą wielkości fizycznych można przedstawić wielkość promienia BoundingSphere? Jest to w centymetrach, metrach czy może milimetrach… Bo podobnie jak z prędkością musze wielkość sfery podać w konkretnych wartościach fizycznych (np. sfera ma promień o wartości 2 cm. zamiast sfera o wartości 1.5).
Proszę pomóżcie, nie muszą to być konkretne odzwierciedlenia prawdziwych wartości, ale aby opierały się na czymś i nie były wzięte z powietrza.

1

co do jednostek to są porostu jednostki
wydaje mi się ze możesz przyjmować je dowolni w zależności od wielkości świata

1

Wszystkie jednostki są w pikselach. Bo to jest natywna i zrozumiała dla komputera wartość, niezależna od wydajności układów graficznych czy preferencji wyświetlania(np. rozdzielczość).
Jeśli na potrzeby fizyki potrzebujesz wartości rzeczywistych musisz już na etapie projektu ustalić pewne stałe. Np. główny bohater ma 1,85m wzrostu. Ponieważ w grze reprezentuje go sprite/model o wysokości 2000 pikseli to 1m =2000/1,85 = 1081px.
Ważne są oczywiście rzeczywiste wielkości użyte w grze, a nie wielkość na etapie rysowania/modelowania bo przecież po zaimportowaniu najczęściej i tak są skalowane.

0

Wszystkie jednostki są w pikselach. Bo to jest natywna i zrozumiała dla komputera wartość

w grafice 2D - tak. w 3D - przestaje mieć sens.

0

może i tak jednak mniej więcej powiedział co i jak...

1 użytkowników online, w tym zalogowanych: 0, gości: 1