Points oraz Vectors
Wartości te można interpretować na różne sposoby. Jednym z jego zastosowań jest reprezentowanie punktu (lub pozycji) w przestrzeni 3D. Na przykład każdy aktor ma zmienną o nazwie „Lokalizacja”, która jest typu „Wektor”. Ta zmienna zachowuje współrzędne świata aktora.
Aby to zilustrować, mamy krzesło i stół na poniższym obrazku, które są dwoma aktorami:
Ten obraz przedstawia pozycję krzesła:
W uproszczony sposób możemy przedstawić tę pozycję następująco: (100, 0, 20).
Pozycja tabeli to (400, 0, 20):
Teraz wyobraź sobie, że musimy poprowadzić robota, aby podszedł od krzesła do stołu. Potrzebuje dwóch informacji, kierunku, w którym powinien się poruszać i odległości. Wymagane stwierdzenie to coś takiego:
„ Przesuń 300 cm w prawo . ”
Zarówno kierunek, jak i odległość można zebrać w jeden wektor, który można przedstawić w taki sam sposób, jak położenie jest reprezentowane za pomocą wartości X, Y i Z.
Zakładając w tym przykładzie, że ruch w prawo odbywa się wzdłuż osi X. Powyższy wektor wyglądałby następująco: (300, 0, 0) .
Jeśli przyjmiemy pozycję krzesła i dodamy do wektora, który reprezentuje ten ruch, otrzymamy pozycję stołu. Aby dodać punkt z wektorem, po prostu dodaj każdy z jego elementów:
table_position = chair_position + vector_movementtable_position = (100, 0, 20) + (300, 0, 0)table_position = (100 + 300, 0 + 0, 20 + 0)table_position = (400, 0, 20)
Więc jeśli mamy punkt początkowy i punkt docelowy i chcemy poznać wektor ruchu, po prostu pobierz punkt docelowy i odejmij punkt początkowy.
Na przykład, jeśli chcemy poznać wektor, który prowadzi od punktu początkowego (50, 30, 45) do punktu docelowego (120, 80, 110), po prostu oblicz:
vector_movement = destination_point – origin_pointvector_movement = (120, 80, 110) – (50, 30, 45)vector_movement = (120 – 50, 80 – 30, 110 – 45) vector_movement = (70, 50, 65)
Teraz, gdy widzieliśmy przykład, zobaczymy bardziej formalną definicję wektora.
„ Wektor to obiekt geometryczny, który ma wielkość (lub długość) i kierunek. Wektor jest zwykle reprezentowany przez strzałkę o określonym kierunku ”.
Wektory są szeroko stosowane w programowaniu gier. Mogą być używane do wskazywania kierunków i reprezentowania prędkości, przyspieszenia i siły działającej na obiekt.
W następnym artykule przyjrzymy się różnym operacjom, które można wykonać na wektorach.
Źródło:https://romeroblueprints.blogspot.com/2015/09/points-and-vectors.html