-
Postów
154 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
1
Typ zawartości
Profile
Forum
Wydarzenia
Odpowiedzi opublikowane przez 3r3se7ven
-
-
Robię sobie takie elementy GUI, jak myślicie, jakie elementy są niezbędne i czy lepiej iść w takie stonowane kolory, czy mocno saturowane?
Bardzo mi się to podoba.
Gra o lesie wodorostów?
-
masz rację...źle kombinuje...
oj dobrze by było jakbyś mi podesłał pod game maker studio
dzięki z góry,do tej pory będe kombinował ;)
ciekawa teoria..
robię platformówkę,więc drabina nie musi być skomplikowana..
To nie teoria, to praktyka. W teorii drabina jest prosta jak konstrukcja cepa. Potem dochodzi podły gracz-wielki generator gliczów i równie wredny gameplay i jest kaszan.
Nie wiem jaką robisz grę i jak wymyśliłeś próbkowanie przestrzeni. Dlatego podaję potencjalne zgrzyty na jakie się natkniesz przy różnych podejściach.
Za parę dni chyba będę w Polsce to wykopię coś z kompa pod GMs.
Komplikacja drabiny nie wynika z tego czy to jest platformówka czy nie, tylko z warunków jej działania:
-czy start jest oskryptowany i po szynach na górę; <<tutaj odłączasz graczowi kontrolę i jest spokój, jak jeszcze na gameplayu nic nie grozi graczowi to raczej się uda
-czy jest interrupt i można zawrócić;
-czy gracz sam łazi po drabinie i w jakim zakresie (góra dół, prawo lewo);
-czy może z niej skakać, strzelać, inne akcje;
-czy na drabinie można zginąć;
Jak widzisz pole wejściowych generuje przestrzeń wyjściowych i dlatego specjalne tryby ruchu generują takie problemy.
Każde odklejenie postaci od podłoża to takie właśnie zagadki :)
-
tak mam i triggera,który jest platformą tzw duchem nakładam go na górną część drabiny,no ok wygląda dobrze,nawet wtedy jak wejdę do góry to nie spada po drabinie,ale problem jest wtedy,kiedy pórbuje zejść..naciskam klawisz down no i od razu spada,chyba,że szybko to zatrzymam to swobodnie schodzi z drabiny,ale to nie o to chodzi...on ma normalnie po niej schodzić...a nie w taki sposób;)
W złą stronę kombinujesz. Co jeśli z jakiegokolwiek urojonego powodu bohater nie dostanie zwrotki z końca drabiny? Bo na przykład próbkowanie ma zbyt rozległe? (to się dzieje jak coś ruszy bohatera).
Bohater musi mieć zapis że jest w trybie włażenia po drabinie, a przynajmniej był i właśnie nie jest, i że należy przeprowadzić audyt w sprawie jakiejś podłogi. (na przykład szuka drabiny z której leci).
Takie dane pobierasz ze stanu zachowania boahatera tam montujesz triggery wykluczania i wkluczania w fizykę (podłóg).
Koncepcja tworzenia bloków końcowych wynika z NESowej zajętości przestrzeni na bardzo dużych blokach przy prędkości maksymalnej jednego bloku w jednostce próbkowania zajętości.
Jeśli nie korzystasz z takiej mechaniki to musisz te dane prowadzić ze strony obiektu bohatera. To od bohatera wymagasz ciągłości zdarzeń - drabina - podłoga.
Wyzwalacz końca drabiny ma ręce i nogi w takiej mechanice gdy wejście na drabinę i poruszanie po niej jest oskryptowane bez ingerencji gracza (czyli może rozpoznać początek drabiny i kliknąć że włazi, albo nie kliknąć, a jak kliknie to do końca jedzie po szynach).
Za tydzień powinien mieć dostęp do gms to mogę Ci przysłać działającego gotowca.
O ile pamiętam (kilka lat temu to robiłem), to po rozpoznaniu że drabina była, że dalej się wspina, a drabiny nie ma w promieniu testu szukał sobie podłogi, żeby na nią wleźć i rozpoczynał animację włażenia przez krawędź.
Teraz mam na tapecie 3d gdzie już w sposób sterowalny postać łazi po murze góra dół i wertykalnie po przejściu w tryb climbing i przełącza sterowanie z pród/tył na góra dół. To by mogło być rozwiązanie które by Ci pasowało, jeśli na drabinę można wskoczyć i można z niej zeskoczyć.
Masz rozpiskę ciągłości stanów bohatera? (character finite state of the machine)?
//w jeszcze innym projekcie mam point_distance zbliżenia do drabiny co jest trigerem dla skryptu wyrzucającego ikonę włażenia na drabinie, a dalej po szynach, przy czym długość drabiny nie wynika ze skryptu, to już character dokonaje rozrachunku czy drabina jest, czy starczy włażenia.
Bierz pod uwagę, że wiele takich funkcji po mnożeniu (zazwyczej interupt triger przerywający akcję przed jej zakończeniem, jak wybuch, napaść, pułapka) będzie wymagała podobnego mechanizmu szukania sobie miejsca do posadzenia d przez character i rozpoczęcia jakiejś akcji (choćby i leżenia nieprzytomnym).
Czyli każda akcja będzie zawierać pole konsekwencji legalnych i zabronionych.
//jeśli zależy Ci na ruchu po drabinie góra dół, to warto zrobić pole drabiny działające wyłącznie na animację postaci, a z drabiny robiącą serię półek do wskakiwania, które w trigerze tej animacji będą powiązane ze "skokiem" w górę i w dół o szczebel. To bardzo arcadowe rozwiązanie zeplatformówek strzelanek.
-
Ciężko jest mnie wywrócić z równowagi ale tobie się udało. Gratuluję.
Twoje dwa posty z tego jednego tematu wydaja się zaprzeczać same sobie. Poza tym kolejny raz nie zrozumiałeś problemu i starałeś się, wykorzystując swoją dużą wiedzę którą szanuję, podsunąć rozwiązanie które w zupełny sposób nie pasuje do problemu. I nie przypominam sobie żeby którykolwiek z twoich ostatnich postów na forum w ogóle w jakiś sposób ukierunkowywał w stronę rozwiązania. Za każdym razem odbiegasz od tematu jakby twoim jedynym celem było pochwalenie się wiedzą. Niestety ale kolejne takie posty będą już karane.
Threef jeszcze raz Ci objaśniam... niekoniecznie rozumiesz co czytasz.
Skoro piszę coś o rozwiązaniu problemu to najwidoczniej miałem taki sam i rozwiązałem.
W sposób który wg Ciebie sobie przeczy.
Bo najwidoczniej później z redukcji do last step wyrasta kolejny problem, i kolejny i kolejny i jakoś trzeba to w końcu rozwiązać globalnie.
Gdzieś tu jest zamieszczony przykład mojej starej zrobionej na obiektach i przez to przycinającej gierki o rootach na wielopoziomowej izometrii.
Otóż roboty zajmują pewną przestrzeń i ściany też.
Można skoczyć jednym an drugi, ale można też zamknąć przesuwane rota na robotach w polu zamknięcia.
Najwidoczniej nie utykają mi w ścianach. Choć czasem potrafią wystrzelić z drzwi jak z procy i odbić się od ściany :)
Roboty poruszają się po siatce równoważnej dla mp_grid tylko z wykorzystaniem rozszerzonego greed i skracania do słabego JPS.
Czyli jak czegoś nie rozumiesz - czytaj jeszcze raz.
Do skutku, a jak nie ma skutku - doprecyzuj czego nie rozumiesz.
Najczęstsza przyczyna zapytań u programistów "rozwiązanie problemu wygenerowało problem".
//==============
I nie krępuj się, jak czytam co sądzi o shaderach dentysta z Bergen to otwieram podręcznik do grubszej matmy i staram się dowiedzieć czy ja w ogóle zrozumiem jak to przekopię.
-
Wróćmy do idei tematu.
Jak to jest z shaderami na androidzie? Z tego co wiem na części urządzeń nie działają i gra się krzaczy- są jakieś sposoby żeby to sprawdzić lub temu zapobiec?Są jakieś wyjątki(shadery które wszędzie działają)?Czy jest sposób na zmianę wyglądu całej gry na andku bez shaderów i przerabiania grafik(jakiś filtr obrazu np.sepia)
Oczywiście. Tylko moc obliczeniowa telefonu ma swoje ograniczenia względem przyzwyczajenia do rozmachu z pc.
Shadery (w tym blend mode, taki starszy wujo shadera) pod andkiem mają kompletną funkcjonalność, tylko przestrzeń przygotowana na rezultat nie jest wystarczająca.
Warto przygotować całą mechanikę tworzenia obrazu pod to co chcesz uzyskać na końcu.
GMS ma tu swoje ograniczenia, niektóre bardzo poważne.
Podstawowym jest ustalony na sztywno typ danych, w tym typ danych dla tekstur (spritów, teł, surfaców).
No i o jakimś głębszym world matrix w andku można zapomnieć z przyczyn zrozumiałych.
Przemyśl najpierw co ma być narysowane.
Większość ludzi jedzie obiektami z draw self a później z tego same zgryzoty.
-
Atakujecie problem od jednej strony.
Co jeśli kolejne takie rezultaty nie będą wynikały z ruchu po siatce, a z innych przyczyn mechaniki gry w tym z próby naprawy ruchu po siatce?
Kolejna łata?
-
Tylko że ta dyskusja nie ma najmniejszego sensu i nie jest to miejsce do takich dyskusji. Poza tym, 3r3se7ven wszystkie twoje ostatnie rady na forum nie odnosiły się prawie w żaden sposób do potrzeb użytkowników. Więc następnym razem postaraj się odpowiadać na temat i nie odchodzić od tematów dyskusji.
To jest upomnienie administracji.
Threff - wyskakuj z przeróbką obrazu bez użycia shaderów jak chcesz się wypowiadać na temat meteorytyki dyskusji.
A jak tego nie robiłeś - nie wtrącaj się tym co zrobili.
To jest upomnienie użytkownika.
A jak Ci się nie podobają użytkownicy to od tego masz uprawnienia aby ich stąd wysłać na orbitę.
Zachęcam.
A jak Ci ktoś przyśle zapytanie o napisanie mu w kilka godzin boulder dasha to mu napiszesz. Tak w ramach merytoryki i udzielania się potrzebom użytkowników na forum.
-
Problem polega na tym, że jeśli mamy parę obiektów które poruszają się przez mp_potential_step o tej samej prędkości do tego samego punktu, to jest szansa, że jakby wejdą w siebie i będą idealnie odwzorowywać swoje ruchy. Jak ominąć ten efekt? Żeby np. obiekt po styknięciu się z drugim, poczekał aż tamten sobie pójdzie. Zakładamy, że to ten sam obiekt. Zrobiłem kolizję, ale wtedy oba obiekty stopują zabawę.
Przetestować wszystkie instancje pod kątem x czy nie jest powtórzone korzystając z for.
A jeśli jest to sprawdzić też y.
Pchnąć w losowym kierunku młodszą numerem instancję w kierunku losowym przeciwnym do starszej.
I nie musisz analizować dlaczego tak się stało, w grze to może być rezultat całej masy różnych zdarzeń z kreacją włącznie.
Taki glicz deleter.
-
Chciałbym tę krótką rozmowę podsumować:
- Jak wlejesz do samochodu złe paliwo to nie pojedzie.
- No ale jak nie wlejesz wcale to też nie pojedzie
- No nie pojedzie
- No ale rower pojedzie.
Co nie pojedzie? Ze śwagrem jak popchniesz pojedzie ^^
//=================
To jest porażające, że ludzie myślą iż rozwiązania to tak nagle się pojawiły zaimplementowane z całą architekturą i z niczego nie wynikają.
Ot tak nagle sobie sobie softwearowe shadery wyskakują i pracują na... dobrych chęciach procesora i ramu? No to by się nie nazywały szadery jako oddzielny rodzaj oskryptowania tylko by sobie były częścią kodu.
Pamięta ktoś czasy sprzed shaderów? Jak się do odpalenia shadera podłączało jedną kartę grafiki wyjściem do wejścia drugiej, ta dopiero nakładała wodotryski na macierz i dopiero szło to do monitora?
-
To nie umarło, naprawdę. Tylko wakacje i te sprawy.
Zmieniłem troszku pomysł na grę, dodałem jedną postać (typka z mieczem), dźwięki bez zmiany (najlepiej je wyciszyć w sumie), ale znów się za to biorę. Zrobiłem od nowa sposób spawnowania się stworków, trochę bardziej ogarnięty.
No i trochę screenów
Fajny knur (penetrator loch).
Błędy w mechanice (pixel perfect obecność wroga na bohaterze, zamiast distance).
Nieczytelni wrogowie, żeby się świecili albo co.
Brak info (czym strzelać, jakie klawisze).
Brak helpa (jak wyżej).
Nie działa ESC.
-
Skoro tak twierdzisz, założę, że tak jest.
Ja bym nie wierzył, po prostu spróbuj.
Zamień na przykład wczytany surface na ds_grida, zmanipuluj wedle przeliczenia blur choćby, spróbój też w drugą stronę ff i wyświetl jako pixele, zacznij od rozmiaru 1/10 obrazu bo się będzie cięło jak emo z paczką żyletek.
-
I tak ich bez OGL nie odpalisz
Odpalisz, możesz sobie zrobić shader w kodzie bez użycia shadera. Polecam.
Zobaczysz wtedy jak to powoli idzie bez dXowych bibliotek.
Tak działały sowtwarowe rendery na amisi i pradawanych cadach.
-
GM pod windows używa DX ale shadery są OGL. Taki już jest.
Jak samochód nie stoi na kołach to nei powinien opaść jak mu odkręcę koła.
To że są pisane w OGL nie zmienia kwestii że interpretowane są przez dX.
-
W GM'ie? Od kiedy?
Używają WebGL dla HTML5, GLSL dla Windows, Linux, Androida(i zapewne innych też, ale tego nie wiem) - wszystko jeździ na OpenGL'u.
Odinstaluj dX i sprawdź :)
-
no i o to chodziło mi, że nie ma innego sposobu :)
Już i tak napisałem sam proste kolizje, odbicia ale warto wiedzieć na przyszłość
A w rzeczywistym świecie jak możesz to robić?
Midichlorianami?
-
Zawijaj wiersze.
Ciężko to wyczytać.
Koniec drabiny musi być obsługiwany przez jakieś zachowanie bohatera, które masz pod przyciskiem w dół i musi być trigger, który sam to wywoła.
Na przykład można oskryptować takie zachowanie i jeśli pomiędzy last step a new step jest że drabina była, a nie ma to trzeba poszukać podłogi.
To że bohater spada w dół to sukces. Często pierwsze drabiny wysyłają go na orbitę :)
-
imo silniki fizyczne są po to, żeby ułatwić sobie prace. także dla tych, którzy sami sobie jej nie napiszą.
A spytałem, bo nie znalazłem dobrego sposobu na to i chciałem wiedzieć, czy ktoś jakiś sposób zna.
Impulsami. Właśnie dlatego trzeba rozumieć jak się taki silnik buduje żeby wiedzieć dlaczego działa jak działa.
Kalkulator ułatwia pracę, jeśli jesteś w stanie sprawdzić czy wynik ma coś wspólnego z tym co miało być wynikiem.
Jak nie jesteś to taka proteza za Ciebie nie policzy czy mu nie zadajesz błędnych danych.
-
// Odwracanie wroga od obiektu niewidzialnego
if place_meeting(x+32,y+3,obj_niewidzialny) || place_meeting(x-32,y-3,obj_niewidzialny) && image_xscale = 1
{
image_xscale = -abs(image_xscale);
}
else if place_meeting(x+32,y+3,obj_niewidzialny) || place_meeting(x-32,y-3,obj_niewidzialny) && image_xscale = -1
{
image_xscale = abs(image_xscale);
}
Napisz tekstem co autor miał na myśli jak to pisał.
Coś podejrzewam, że autor pominął nawiasy w syntaxie i ma pętlę co step z tym warunkiem:
place_meeting(x+32,y+3,obj_niewidzialny)
na ten
place_meeting(x+32,y+3,obj_niewidzialny)
co skutkuje przekładaniem wartości zespolonej (image scale)(znak) na przeciwny znak.
-
Ugh, to popatrz znowu na mój pierwszy post. To już wiem, ja chcę sam jakieś uproszczone wektory robić na podstawie 1 kolorowej bitmapy w gmie :/
Jeśli od teraz nie dasz mi kawałku kodu lub matematyki, proszę nie udzielaj się więcej w temacie.
Możesz zrobić w kolizji próbkowania lokalnego pola (tak dużego jak Ci smakuje z tej bitmapy) i z niego uzyskać tangent (styczną) wektora kierunkowego powierzchni kolizji.
A dalej to już po ludzku tak jak z rykoszetem.
Przydatne w poślizgach 3d (heightmap) by określić czy samolotem jeszcze się ślizgasz po lotnisku czy zaryłeś i urwałeś koło na dziurze.
-
To ja się pozytywnie podsumuję:
-
Nie ma najmniejszej różnicy. GM jest silnikiem wysokiego poziomu. Nie ma
żadnejfunkcji która odnosi się do sprzętu. Wszystkie informacje są odczytywane ze stanów systemu operacyjnego.Edit: Moze shadery? Bo nawet bufory są obsługiwane przez system.
Przyniosę ze dwie klawiatury przy których GMS zgłupieje, a winda nie, i ze dwa kontrolery.
Klawiatura fizycznie wysyła sygnał, który BIOS oznacza jako complex (int)(+);
Winda otrzymuje ten (int) jako wartość dla tablicy po tym jak procesor zapyta co słychać w InputDevice (BIOS nie czyta wszystkich wartości, ale wszystkie jakie dostanie zapisuje).
GMS pobiera asynchronicznie dane z klawiatury i ustawia je jako complex(int)(tablica GMS dla last/curent pressed/released).
A dlatego tak dziwnie poneiważ my korzystamy z klawiatury synchronicznie do step event.
I dlatego niektóre przyciski mimo że czytane przez windę nie są czytane przez GMSa bo to nei ejst ta sama tablica.
A shadery lecą przez directX.
Mam silne podejrzenie że bełkotliwie wyjaśniam dlaczego nie należy stosować bezpośredniego odczytu wartości (int) z klawiatury tylko referencję znaku, chodzi o to że jak podłączysz szwedzką czy arabską klawiaturę to się część rzeczy, które działają w windzie wykrzaczy w GMSie.
Ale mam zaświadczenie że mogę być bełkotliwy i nierozumiany ^^
mam pytanko co do wbudowanej fizyki. Czy jest jakiś sposób na poruszanie się obiektu po pathu bądź z wykorzystaniem mp_ bez tworzenia obiektu za którym by podążał?Wbudowana fizyka to podszepty złego tak jak gender, a wpędzanie w to nowych powinno kończyć się na stosie i dołożę do tego swoją pochodnię.
To jedna z tych funkcji, które są przeznaczone dla użytkowników, którzy umieją fizykę zbudować sami i wtedy chcą skorzystać z gotowej.
To jak z mnożeniem - umiesz wielokrotnie dodawać - używasz mnożenia, inaczej to black box z którego wyskakują niezrozumiałe wyniki.
-
W GMSie działa tak samo... Nie wiem jak GMS sobie sam odczytuje, ale vk_left działa zawsze jako w lewo, na każdej klawiaturze..
Brakuje tu Gnyska, bo on by Ci to potłumaczył jak działa od kuchni pewnie ;p Ja nie wiem jak, wiem, że GMS zawsze ma te same ID ;)
Nocturne mi to przetłumaczył jak kilka lat temu chciałem klawisze zmapować kiedy jeszcze z windy w global_key były wczytywane :)
-
ALE MÓWIMY CAŁY CZAS O GAME MAKERZE xDDDDDD
Tak podejrzewałem, że Twoje informację mają się ni jak do GMSa :P
To sprawdź jak to działa na kilku klawiaturach z różnymi sterownikami.
Teraz jest dużo egzotyki.
-
Wychodzi to co na SSie. Wiem ja też często tak robię, ale tym razem taki mini silniczek do debugu mam i mi pokazuje wszystkie ważne dla mnie aktualnie zmienne ;p Zrobiłem jeszcze tak:GMLif(keyboard_check_pressed(38)) i niestety nie działa, czyli jakoś inaczej trzeba :/ Nikt nigdy nie robił key mappingu w gierce w GMie?
@e: Już wiem. Wszystko było ok tylko źle inicjowałem skrypt(jeden if zły) i skrypt w ogóle nie sprawdzał xDD
Przecież klawiatura w GMS jest wirtualna ^^
Jeśli Ci wczytuje poprawne wartości to masz szczęście, mi z kilku klawiatur tylko jenda na ps2 tak robi.
Temat zbiorczy na drobnostki
w Pytania początkujących
Opublikowano
(macierzy) szerokość * wysokość * głębokość + (macierzy) szerokość * wysokość * moduł sprzężenia (zazwyczaj rozmiaru 2 par bitów na które można zadać dagger)
czyli x*y*liczba kolorów + tablica x*y*(dodatnie, ujemne, zerowe, nieprzypisane);
O ile karta graficzna nie kombinuje sobie z optymalizacją to zajmie to ceil do rozmiaru windows display h*w.