Skocz do zawartości

Pytanko


Marzec

Rekomendowane odpowiedzi

Nie kasować tematu ze względu na tytuł ;) Mam takie to otóż grube pytanie. A mianowicie rzecz biorąc:

Mam sobie kulkę w 3d i mam na niej teksturę.

Czy ma ktoś algorytm/skrypt/pomysł na to, żeby zaznaczyć punkt na teksturce (x,y) - podać go skryptowi, a potem skrypt przetworzy to na punkt w 3d (x,y,z), który będzie leżał idealnie na ellipsoidzie i na miejscu w teksturze, który został podany.

 

OK. przyznaje się :D Zrobiłem sobie planetkę :P i chcę po prostu, żeby dało się latać wokół niej statkiem i wylądować w pożądanym mieście :P

 

Kto chce bannerka w creditsach? :D Zapewniam, że nie pożałujecie ;) Będzie płacz i zgrzytanie zębów jak wyjdzie moja gra a was tam nie będzie :D ;) ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Tak sie sklada ze tworze cos takiego (FOX) i najprosciej to zrobic obliczajac odleglosc od punktu i kat nachylenia alpha oraz beta do planety. Wada jest to ze nie zawsze bedzie tam gdzie chcesz

Trudniej i dokladniej jest wyliczac pozycje z na podstawie pozycji x i y wzgledem trojkata planety nad/pod ktorym jest punkt.

Odnośnik do komentarza
Udostępnij na innych stronach

Wiem o czym rozmawiasz ;)

drawujesz ellipsoid - planetę

i drawujesz ellipsoid mniejszy - miasto

potem miasto bierzesz w add_rotation_z, add_rotation_x i add translation, żeby ustalić jak mówisz kąty nachylenia alpha i beta?

 

Mi ta opcja nie odpowiada bo ja tych miast będę miał kilkadziesiąt :P

Odnośnik do komentarza
Udostępnij na innych stronach

chodzi o to bys na podstawie pozycji xyz gracza i xyz planety wyliczyl odleglosc gracza od planety i nachylenie (alpha i beta) gracza wzgledem planety. jako zmienne pozycji (standardowo w 3d: x,y,z) dajesz niestandardowe alpha, beta, length. Tak jak w normalnym 3d ruszasz sie zmieniajac pozycje xy tak w tym przypadku ruszasz sie zmieniajac alpha i beta wzgledem planety, a zas za wysokosc (standard: z) uzywasz length do planety. Potem musisz przeksztalcic alpha, beta i length na x, y i z gracza. Rozumiesz, czy wyjasnic jasniej? :)

Odnośnik do komentarza
Udostępnij na innych stronach

jako zmienne pozycji (standardowo w 3d: x,y,z) dajesz niestandardowe alpha, beta, length.

 

resztę raczej rozumiem, ale tutaj chodzi o pozycję "miasta"? Myślę, że jakbyś napisał to w GML to bym bardziej zakapił :P Polska język być trudna. Hmm.. i czy ten punkt nie będzie wtedy zmieniał swojego położenia względem tekstury? :mellow:

Odnośnik do komentarza
Udostępnij na innych stronach

Ok, postaram sie dac jutro przyklad (przy sobie gm nie mam)

Odnośnik do komentarza
Udostępnij na innych stronach

Dało by się coś sklecić? :P

 

Myślałem też o tym, żeby położyć punkt na samej górze po środku planety (czyli niejako na biegunie północnym) i ustawić środek obrotu w środku planety (Planeta to idealna kula). Współrzędna Y punktu na teksturze przydałaby się do obliczenia kąta obrotu w osi Y (co będzie przemieszczać punkt w górę i dół), a współrzędna X punktu na teksturze będzie pomagała obliczyć obrót wokół osi Z :) (co będzie przemieszczać punkt w prawo i lewo) :)

 

Tylko nie wiem jaki wzrór (działanie) zastosować. Przeanalizuj bo chyba jestem bliski dojścia do celu :) i z twoją pomocą może uda się to zrobić

Odnośnik do komentarza
Udostępnij na innych stronach

Już sobie poradziłem :)

Znaczy, całkiem lepiej jest zrobić płaską powierzchnię z teksturą planety, kamerę ustawić przed tą powierzchnią i poruszać kamerą w prawo i lewo. Dzięki temu jest estetyczniej, mamy wrażenie, że planeta się obraca i co najważniejsze - można zrobić, że obrót się "zapętla", bo nie widać końców podłogi, gdy kamera stoi w taki sposób. Efekt zobaczycie przy moim trailerze za kilka miesięcy :P Ominęły was creditsy :D

Odnośnik do komentarza
Udostępnij na innych stronach

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ę...