Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

Taka mała zabawka, komentowania nie ma wiele. Wyświetlanie hipersześcianu z użyciem GM8 (bez żadnych bajerów).

 

http://jakim.pl/files/hypcube.zip (1.82MB)

 

hypcube.png

 

Kod rzutowania (bez perspektywy) znajduje się w skrypcie transform i korzysta jedynie z funkcji trygonometrycznych i podstawowych operacji algebraicznych. Napisane na potrzeby referatu pt. "Widzieć czwarty wymiar".

Opublikowano

Jakim ty jesteś bardzo dobry z matematyki. Więc czy mógłbyś napisać jakiś zestaw skryptów obsługujących obrót XYZW. Za pomocą kwaternionów i funkcji transformujących modele d3d_transform?

 

To by mi pomogło z walką z gimbal lockiem podczas obracania obiektów w przestrzeni 3D.

Opublikowano

Nie za bardzo korzystałem z d3d_transform, ale mam gdzieś spisane macierze obrotów (jest ich sześć) oraz skrypt mnożenia macierzy (z użyciem ds_grid). Nie wiem, na ile będzie Ci to pomocne.

Opublikowano

Działa dla innych czterowymiarowych obiektów, czy tylko dla hipersześcianu? + czy da się cieniować taki obiekt?

No i wydaje mi się, że ta kostka jest rzutowana na 2D, bo nawet 3D na komputerze jest rzutowane na 2D.

Opublikowano

Amaterasu: Można przeprogramować na wyższe wymiary, tyle że będzie więcej obliczeń. Zauważ, że rzutem (cieniem) w czterowymiarowej przestrzeni jest trójwymiarowy obiekt, więc taki cień może być mało interesujący z "ludzkiego" punktu widzenia. I tak, masz rację, kostka jest najpierw rzutowana z 4D na 3D, a potem dzięki skryptom GM na 2D.

 

HuderLord: Użyj zatem zwykłych macierzy (np. jako ds_grid). Na razie za bardzo nie wiem, co chcesz osiągnąć, więc nie mogę doradzić zbytnio.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...