Obiekt ma pozycję i wektor prędkości. Zwykle tylko pozycja służy do sprawdzenia, czy dwa obiekty zderzają się, jest to problematyczne w przypadku bardzo szybko poruszających się obiektów, ponieważ może się zdarzyć, że obiekt porusza się tak szybko, że znajduje się przed pierwszym obiektem w pierwszej kontroli kolizji, a za nim …
Widzę pytania, które pojawiają się dość często, które dotyczą tego podstawowego problemu, ale wszystkie są uwikłane w szczegóły danej funkcji lub narzędzia. Oto próba stworzenia kanonicznej odpowiedzi, do której możemy skierować użytkowników, kiedy to się pojawi - z dużą ilością animowanych przykładów! :) Powiedzmy, że tworzymy aparat z perspektywy pierwszej …
Pracuję nad grą, która wymaga od graczy narysowania linii od punktu A (x1, y1) do drugiego punktu B (x2, y2) na ekranie urządzenia z Androidem. Chcę dowiedzieć się, jak dobrze ten rysunek pasuje do linii prostej. Na przykład wynik 90% oznaczałby, że rysunek prawie idealnie pasuje do linii. Jeśli gracze …
W mojej grze mam obiekty, które poruszają się szybciej o 45 stopni niż o 90 stopni. Każdy obiekt ma Pozycja punktu (x, y) Kierunek Vector2D (x, y) Int prędkość A podczas aktualizacji robię to, że nowa pozycja jest obliczana jako: position.x += direction.x * speed position.y += direction.y * speed …
Próbuję stworzyć quad-kulę na podstawie artykułu , który pokazuje takie wyniki: Mogę poprawnie wygenerować kostkę: Ale kiedy przekonwertuję wszystkie punkty zgodnie z tym wzorem (ze strony, do której prowadzi link powyżej): x = x * sqrtf(1.0 - (y*y/2.0) - (z*z/2.0) + (y*y*z*z/3.0)); y = y * sqrtf(1.0 - (z*z/2.0) - …
Mam prostokąt 2D z pozycją x, y, wysokością i szerokością oraz w pobliżu losowo ustawionego punktu. Czy istnieje sposób, aby sprawdzić, czy ten punkt może kolidować z prostokątem, jeśli znajduje się bliżej niż pewna odległość? Wyobraź sobie, że niewidoczny promień poza tym punktem koliduje ze wspomnianym prostokątem. Mam z tym …
Próbuję zrozumieć arytmetykę wektorową (a konkretnie jej użycie w silniku Unity). Nie jestem w stanie dowiedzieć się, jak wektor może mieć długość (wielkość), mimo że reprezentuje tylko punkt (położenie i kierunek)? Czy to oznacza, że wielkość jest po prostu odległością od punktu początkowego (0, 0, 0)? A może coś mi …
Prawdopodobnie największą zaletą kafelkowania mapy opartej na heksie w porównaniu z kwadratem jest to, że środek każdego heksa ma taką samą odległość do wszystkich sąsiednich heksów. Czy istnieje podobny kształt, który układa płytki w ten sposób w 3D, oraz silnik obsługujący taki model?
Mam mapę opartą na kwadratach. Dozwolony jest tylko ruch poziomy i pionowy (bez przekątnych). Koszt ruchu wynosi zawsze 1. Wdrażam algorytm A * na tej mapie, używając odległości Manhattan jako heurystyki odległości. Czy to heurystyka jest spójna? Czy mogę uniknąć sprawdzania g(node)węzłów znajdujących się w zestawie ZAMKNIĘTE? Edycja: Przez konsekwentne …
Czy ktoś mógłby wyjaśnić, w jaki sposób możliwe byłoby utworzenie kuli wierzchołków, wskaźników i współrzędnych tekstury? Zaskakujący jest brak dokumentacji, jak to zrobić i to jest coś, czego jestem zainteresowany. Próbowałem tego, co oczywiste, google, przeglądanie na gamedev.net itp. Jednak nic nie obejmuje generacji punktów kulistych, indeksowania ich i teksturowania.
Powiedzmy, że mam linię zdefiniowaną przez dwa punkty Ai Boba w formie (x, y, z). Punkty te reprezentują linię w przestrzeni 3D. Mam również punkt Pzdefiniowany w tym samym formacie, który nie znajduje się na linii. Jak obliczyć rzut tego punktu na linię? Wiem, jak to zrobić w 2D, ale …
Powiedzmy, że mamy postrzępiony kształt: I dwa stworzenia poruszające się po obrysie. Następnie całkowicie wygładzamy kształt, wyciągając rogi. Otrzymujemy to: Teraz widać, że Orange porusza się w kierunku CW, a zielony w kierunku przeciwnym. Jak mogę określić, w którym kierunku się poruszają, bez wygładzania kształtu? Nowy wygląd
Mam rzut perspektywiczny. Gdy użytkownik kliknie ekran, chcę obliczyć promień między płaszczyzną bliską i daleką, która wystaje z punktu myszy, aby móc wykonać kod przecięcia promienia z moim światem. Korzystam z własnych klas macierzy oraz klas wektorowych i ray i wszystkie działają zgodnie z oczekiwaniami. Jednak kiedy próbuję przekonwertować promień …
Mam obiekt pokoju zdefiniowany przez kolekcję zapętlonych segmentów linii, dla których muszę obliczyć powierzchnię. Klasy można opisać następująco (w pseudokodzie): class Point { float x; float y; ... float distanceFrom(Point p); } class Segment { Point start; Point end; ... float length(); } class Room { List<Segment> walls; ... float …
Uczę się korzystać ze znormalizowanych wektorów w moich grach. Nauczyłem się, że aby poznać kąt między dwoma wektorami, mogę użyć iloczynu. Daje mi to wartość od -1 do 1, gdzie 1 oznacza, że wektory są równoległe i skierowane w tym samym kierunku (kąt wynosi 180 stopni). -1 oznacza, że są …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.