Przesunięcie w dół wyimaginowanej siatki 4D na ekran


11

Jako ćwiczenie mentalne próbuję wyobrazić sobie rzutowanie dowolnej siatki 4D na ekran (2D).

Zgaduję, że pojedynczy trójkąt 4D nadal składałby się tylko z 3 punktów, jednak każdy z tych 3 punktów byłby zdefiniowany przez kolumnę o 4 wymiarach.

Czy bardziej sensowne byłoby zdefiniowanie macierzy projekcji do mapowania przestrzeni 4D na przestrzeń 3D, a następnie zlecenie OpenGL wykonania własnych danych z tych danych na przestrzeń 2D?

A może najlepiej byłoby po prostu bezpośrednio rzutować z 4 na 2?

Wielkie dzięki.


Ciekawe, czy jest jakiś kontekst rozwoju gry?
— AttackingHobo

na razie jest to tylko eksploracja, ale ostatecznie tak.
— bitcruncher,

Dopóki nie dodasz jakiegoś kontekstu tworzenia gier, będę głosować za zamknięciem za to, że jestem poza tematem.
— AttackingHobo

Na marginesie, homogeniczne współrzędne, którymi zajmują się interfejsy API grafiki, są specjalnym rodzajem przestrzeni 4D, w której wszystkie punkty na linii przechodzącej przez początek są traktowane w 3D jako ten sam punkt. To znaczy, <kx, ky, kz, k> to ten sam punkt <x, y, z> dla wszystkich k.
— Lars Viklund,

4 osie obrotu? Żartujesz, prawda?
— podprz.

Odpowiedzi:


7

Wielowymiarowe uogólnienie trójkąta to N-Simplex , oto wideo z projekcji takiego obiektu. Oto kolejne interesujące wideo hipersześcianu 4D.

Ta strona wiki jest dobrym punktem wyjścia, jeśli chcesz dowiedzieć się więcej o czwartym wymiarze i jak wizualizować takie obiekty. Łączy także stronę wiki z listą gier 4D .

W odniesieniu do pytania dotyczącego projekcji: w tym artykule wyjaśniono matematykę ortograficznych i perspektywicznych matryc projekcyjnych dla wyższych wymiarów. Kolejnym świetnym referatem jest czteroprzestrzenna wizualizacja obiektów 4D autorstwa Stevena Richarda Hollascha. W szczególności akapit „4.1: Omówienie wysokiego poziomu projekcji 4D do 2D” szczegółowo odpowiada na twoje pytanie dotyczące projekcji i zawiera kod źródłowy.

Wreszcie tutaj jest renderer N-wymiarowej przy użyciu OpenGL przychodzi z pełnym kodem źródłowym.


Nie jestem pewien, dlaczego traktowałbyś taki trójkąt. Tak jak siatka 3D zawiera trójkąt (w przeciwieństwie do czworościanów), siatka 4D może zawierać kształty 2D, takie jak trójkąt.
— Mikael Öhman,

@Mikael, właśnie z powodu mentalnego ćwiczenia pytania, bardziej interesujące byłoby zastosowanie uogólnienia 4D trójkąta 2D, „obrót takiego obiektu wygląda niesamowicie. Jednak masz rację, można użyć prostego trójkąta w przestrzeni 4D.
— Maik Semder,

Dzięki za bardzo dokładną odpowiedź. W rzeczywistości najbardziej fascynująca była sama liczba gier / projektów od początku lat 90.
— bitcruncher,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.