Skocz do zawartości

TO_mek

Użytkownicy
  • Postów

    346
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    1

Treść opublikowana przez TO_mek

  1. Pod warunkiem, że nie wklepie tego w HTML5/Studio(Beta) bo tam to już nie zadziała :) Ale pewnie startuje jak wszyscy z jakiejś ósemki lite.
  2. Odświeżam wątek po to by potwierdzić. Jednak problem był z JS. Tutaj jest rozwiązanie. Wyedytuję też posta wyżej aby tam też już było prawidłowo.
  3. Witam! Czy ktoś może zauważył problemy z HTML5 i polskimi fontami? Wiem, ze swego czasu były jakies problemy (chyba gdzieś w newsach było w komentarzach) ale myślałem, że dawno rozwiązane. Otóż mam taki problem. Wybrany font to zwykły Arial - brak PL znaków, ARIAL CE wcale nie ma tekstów. Jeden i drugi font ustawiony na pełen zestaw znaków. Kodowanie na stronie UTF-8, testowany język "en" oraz "pl". Te same objawy zarówno dla exe oraz dla HTML5. Także wersja Studio Beta ma te same problemy. Zrodło powstało w GM 8.0. EDIT: Kurcze na GM 8.1 tez nie ma tych pl znaków. Ktoś wie co jest grane? PS. Wszystkie GMy w najnowszych wersjach. EDIT2: Już wiem o co chodzi. Fonty muszą mieć ustawione zamiast DEFAULT_CHARSET na EASTEUROPE_CHARSET. Przy takim ustawieniu prawie wszystko działa. Prawie bo teksty zawierające PL znaki wpisywane w kodzie w GM8.0 po przekonwertowaniu do GM HTML zostały poobcinane z pl znakow i tak zostało, więc wszedzie w kodzie musiałem je ręcznie zmienić (na szczęście było tego niewiele).
  4. Tak zrobilem ale wydaje mi sie, ze generowanie terenu z wypelnieniem jest duzo bardziej splaszczone. Przykladowy plik LMB - rysuje bez wypełnienia, RMB z wypełnieniem. Od czego to zależy? PS. Musiałem użyć pr_trianglefan aby mieć jakiekolwiek wypełnienie. EDIT: Nie wiem z czego to wynika ale jak podzieliłem rysowanie terenu na mniejsze kawałki to teraz rysowanie jest prawidlowe. Moze ilość składowych vertexów jest w jakiś sposób ograniczona. Podmieniam przykład gdzie dodatkowo pod MMB (środkowym przyciskiem myszy) jest generowanie prawidłowe.
  5. Witam! Jak wypełnić kolorem zamknięte kształty typu wielokaty? Czyli rysuję sobie vertexsami zamknięty wielokąt i chcę go zalać kolorem. Coś co ma każdy najprostszy program typu paint czy nawet edytor wbudowany w gm (rysuje kilka ponakładancyh na siebie prostokątów, kółek i zalewam kolorem powstałe kawałeczki).
  6. Standardowe funkcje m.in. grawitacji i kolizji są b. uproszczone i mają niewiele wspólnego z rzeczywistym zachowaniem. Może przesadzam bo jak najbardziej da się symulować zachowanie np. lotu pocisku czyli gry typu schorch (wormsy) ale już interakcja 2 różnych elementów jest mało rzeczywista. Można próbować stworzyć takie przechylanie się klocków ale to dalej nie będzie wygłądało realistycznie. Są silniki obsługujące fizykę a ostanio nawet pojawiły się nowe funkcje w GM HTML i Studio (w 8.1 nie). Przykład użycia np. pod tym linkiem.
  7. A jak to się ma do częstotliwości ekranu lcd (60Hz)? Część efektu rozmazywania (smużenia) to wina odświerzania monitorw LCD i tu ustawienia room speed niewiele pomoże. Lepiej to wygląda na plazmach (ale kto podpina kompa do plazmy :) ) a najlepiej na CRT (ma ktoś jeszcze? :) )
  8. Kijowość polega na tym, że GM w miarę ok działa z plikami *.wav gdzie działa volume itp. (chociaż is_sound_playing już nie zawsze) Co do mp3 to zapomnij jeśli chcesz używać kilku jednocześnie lub sterować głośnością bez dll.
  9. Załadowane obrazy są przechowywane już jako bmp. Jak dobrze pamiętam to kiedyś w starszych wersjach GM (coś koło 4,5) było chyba inaczej ale mogę sie mylić. A może chodziło o to, że sprajty ładowane są obecne w całości do RAMu a kiedyś było, że dopiero w momencie użycia.
  10. Z bugów jakie zauważyłem to ten z przecinkiem który uniemożliwia odczyt projektów zapisanych w pliku ( w sumie jak można wydać betę z TAKIM bugiem) oraz niedziałające keyboard_key_press (takze nie dziala w HTML5) - oba juz zgłoszone przez inne osoby. Ale w ramach testu zaciągnąłem kumpla z duzo lepszym tabletem który potrafi się "dogadać" po kablu usb z kompem i u niego chodzi gierka ok. PS. Chce ktoś tanio kupić praktycznie nowy tablet Manta MID04 - wszystko na nim w miarę ok działa (filmy YT HD, nawet niektóre gry) ale do testowania GMa STUDIO się jak widać nie nadaje.
  11. Ok. Mid04 jest kiepski ale bez przesady. Coś musi być nie tak jeśli coś co pod HTML5 w przeglądarce na tym moim sprzęcie odpala choć ma raptem 5-10fps to to samo kompilowane pod androida musi działać szybciej albo przynajmniej tak samo. A tu zwykły room z tapetą i nie potrafi jej wyświetlić prawidłowo? Coś nie tak. Gnysek czy to Studio beta umożliwia robienie apk (czy jak je tam zwał) takie by wgrać na tablet/telefon osobno bez posiadania studio czy trzeba za każdym razem przeprowadzać kompilację?
  12. Dzięki. Niestety mój kiepski sprzęt Manta MID04 nie komunikuje się z pc poprzez usb. Nie do końca kumam o co chodzi z tym dropboxem - precież to zwykły "dysk netowy" więc równie dobrze mógłbym skopiować plik apk wygenerowany przez studio poprzez wifi, lan czy pena, cały problem polega na tym w ktorym momencie generowany jest plik apk (bo te z tmp nie pasują). Znalazłem jeszcze w FAQu coś takiego i tu o dziwo na ekranie mojego nędznego tableta pojawił się ekran z logo YOYO na raptem 2 sek. po czym pojawił się biały ekran z pionowymi czarnymi kreskami na całej szerokości u góry ekranu (dosłownie na wysokoś mają ok 1/10 ekranu). Na karcie sd pojawił się także katalog z ... tym samym plikiem zip który wcześniej kopiowałem (/sdcard/GMstudio/GameAssets.zip). Więc moje pytanie - jak uruchamiać tego zipa z poziomu androida? PS. Zrobiłem nowy projekt w którym zrobiłem ekran wielkości mojego ekranu tableta (800x480), na ekranie ustawiłem kolor na pomarańczwy, nałożyłem tło z przezroczystością (plik png 170x170). Odpaliłem i poszło na tablecie ale: - pokazało się pomarańczowe tło, - pojawiły się białe kwadraty w miejscach gdzie powinna być grafika tła Jednym słowem w tej pierwszej dostępnej becie to kompilacja pod androida to na razie jakaś totalna ściema. Jednak w dalszym ciagu moje pytanie jest aktualne - jak tego zipa uruchomić chociażby po to aby zobaczyć jak u kolegi to zadziała który ma o niebo lepszego tableta.
  13. Ok java, android sdk zainstalowane. Po kompilacji tworzy mi pliki: - nginx.conf - mime.types - GameAssets.zip a w nim katalog assets z plikiem game.droid Po przekopiowaniu na tablet z androidem, pliki nie sa widziane jako wykonywalne, jedynie zip sie otwiera ale zawartosc tez nie jest dla androida wykonywalna. Przegrywalem tez rozpakowany plik game.droid a takze zmienialem nazwe tego pliku na game.droid.apk ale nic to nie daje. Co robie źle?
  14. Nie wiem czy dobry dział, ale poproszę o krótki poradnik co muszę zrobić aby móc coś wypuścić z GM Studio Beta pod Androida. Wiem, że beta dostępna jest raptem od kilkudziesięciu godzin i to tylko dla posiadaczy HTML5 ale przypuszcza, że Gnysek już dawno Studio testuje więc może napisze kilka słów co jest potrzebne.
  15. Działa. Jako exe w windzie bez problemu, gorzej w HTML5. Bez webgl wcale z webgl jakos dziwnie - odpala sie z odkrytym tlem i maluje na czarno. To wina surface? Myslalem ze html5 ma obsluge surface.
  16. Witam! Jak podejść do takiego tematu? Jako tło lub jako obiekt wczytuję jakiś obrazek i chcę aby na początku był niewidoczny, zakryty jakimś kolorem. Odkrywanie polegałoby na użyciu narzędzia typu spraj który działałby tak, że w miejscu malowania ukryty obraz powoli by się odsłaniał. Czyli taka odwrotność działania spraja (zamiast coś zamalować to czyścimy).
  17. W GM HTML5 możesz zrobić zamiast exe wersje przeglądarkową która na Macu powinna działać bez problemu. Konwersja z GM8.0 na HTML5 może trwać minutkę albo dużo więcej pracy bo wszystko zależy czego w Twojej grze używasz. Niestety HTML5 musisz kupić (99$) bo nie ma wersji lite.
  18. Co do kompatybilności przeglądarek to: Safari 5.x wcale mi nie odpala gry (nawet paska ładowania) mimo, że ponoć ma obsługę HTML5 Opera 11.52, Chrome 15.08xx i FireFox 8.xx - działają ok więc wydają się być najbardziej kompatybilne IE 8.0 nie wspiera HTML5 (czyli win XP) IE 9.0 niby wszystko działa ALE mam problem z działaniem funkcji AJAX a konkretnie "powrotem do programu". Przykładowo funkcja send_post (patrz EDIT nr 1 we wcześniejszym poście) wywołuje plik PHP który obsługuje zapis HS na dysku serwera po czym w innych przeglądarkach wykonują się kolejne komendy jakie są zawarte w kodzie gry, natomiast IE wykonuje "skok" do PHP i już nie powraca do wykonywania dalszej części kodu. Gra działa dalej z pominięciem kawałka kodu jaki zawiera. Przykładowo (pseudo kod): Step: GML if zycie <0 then { skrypt_koniec_gry() kolejnych linii IE nie wykonuje } skrypt_koniec_gry GML show_message("Game Over"); send_post(zapis.php, zmienne_do_zapisu); show_message("TEJ i każdej następnej linijki już IE nie wyświetli"); Czyli występuje jakiś problem z tym, że na IE GM nie otrzymuje informacji, że komenda send_post się wykonała i następuje oczekiwanie. Inne obiekty (np. przyciski) w dalszym ciągu działają normalnie, niestety nawet te które w dalszej części kodu są niszczone. Może sama składnia JS funkcji send_post jest nieprawidłowa i powoduje problemy na IE?
  19. Wiem, że odpisuję sam sobie ale może warto by się zastanowić nad rozszerzeniem forum o HTML5 bądź utworzenie przyklejonego wątku dotyczącego HTML5 bo zanim dokonam pełnej konwersji tej mojej minigierki to pewnie jeszcze z 10 EDITÓW się pojawi :) Być może część błędów wynika z niepełnej implementacji HTML5 w danej przeglądarce (sprawdzam na win XP, na FireFox 8.0)
  20. Zapewniam Cię, że oprócz mnie to znajdzie się jeszcze kilka osób które jednak kupiły GM 8.1 a nawet najnowszą HTML5.
  21. Dzięki. Spróbuj to znaleźć z poziomu forum :). Przy okazji jak szukać frazy? Np. "RM HTML" bo ani apostrofy ani cudzysłowy nie pomogły. Swoją drogą nie wpadłem na to by zaprzęgnąć wujka googla do wyszukiwania po gmclanie. EDIT: Niestety wszystkie powyższe są na DLL-kach więc mało przydatne pod HTML5 (o czym nie wspominałem wcześniej) ale znalazłem rozwiązanie (opis w tym wątku)
  22. Ktoś znalazł ten przykład Rammusa z GMsock lub RM HTTP?
  23. Znalazłem tylko coś takiego do odczytu danych oraz jeszcze coś takiego. Miałeś któreś z tych rozwiązań na myśli czy jeszcze coś innego? EDIT 1: Co do zapisu danych to poradziłem sobie poprzez JS. Podam jak bo pewnie się jeszcze przyda. Po pierwsze należy wiedzieć jak dodawać rozszerzenia do GMa - bazowałem na opisie "How to add a Javascript extension" dostępnego pod tym linkiem. Następnie należy utworzyć swój własny plik z JS (tym razem bazą był artykulik "Using POST method in XMLHTTPRequest(Ajax)" z tej strony). function send_get(url, params) { var http = new XMLHttpRequest(); http.open("GET", url+"?"+params, true); http.onreadystatechange = function() {//Call a function when the state changes. if(http.readyState == 4 && http.status == 200) { alert(http.responseText); } } http.send(null); return http.responseText; } function send_post(url, params) { var http = new XMLHttpRequest(); http.open("POST", url, true); //Send the proper header information along with the request http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); http.setRequestHeader("Content-length", params.length); http.setRequestHeader("Connection", "close"); http.onreadystatechange = function() {//Call a function when the state changes. if(http.readyState == 4 && http.status == 200) { alert(http.responseText); } } http.send(params); return http.responseText; } Jednak funkcja send_post w takiej formie źle działała na IE9. Poniżej prawidłowa wersja (zmieniony koniec oraz linijka http.open("POST", url, false);): function send_post(url, params) { var http = new XMLHttpRequest(); http.open("POST", url, false); http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); http.setRequestHeader("Content-length", params.length); http.setRequestHeader("Connection", "close"); http.send(params); if(http.readyState == 4 && http.status == 200) { return http.responseText; } else { return "Error"; } } I w sumie to już wszystko. Użycie to wywołanie funkcji z poziomu GMa GML send_get("plik.php",params); send_post("plik.php",params); gdzie parametry podać należy w formie GML params = "lorem=ipsum&name=binny"; //to wysylac w wywolaniu funkcji</span> Pamiętać należy, że do testowania trzeba wysłać całość na serwer bo przez file:///..... nie będzie działać. Oczywiście plik.php już musi obsłużyć zapis do pliku co jest już banalne i nie dotyczy bezpośrednio GMa. EDIT 2: Drugi problem był z ds_grid_write i ds_grid_read. Nie mam pojęcia w jakim celu ale ktośtam w yoyo wymyślił, że od wersji html5 zmienia się format danych jakie generuje funkcja write. W związku z tym wszystkie programy używające danych zapisywanych w ten sposób są niekompatybilne gdyż funkcja ds_grid_read nie potrafi odczytać danych wygenerowanych w starszych wersjach GM. Akurat ja w taki sposób przechowuję zarówno pliki z zapisami highscore jak również własne save. Podsumowując, to same funkcje się nie zmieniły ale generują zupełnie inny ciąg znaków (dla odmiany całkowicie czytelny a nie jak wcześniej ciąg nieczytelny dla laika). EDIT 3: Trzeci problem jaki napotykam to wskaźnik kursora myszy. Gdy zmieniłem go na window_set_cursor( cr_handpoint ); a następnie na cr_default to zamiast standardowej strzałki kursora uzyskiwałem kursor w kształcie pierwszego sprajta zdefiniowanego w resources. Pomogła zamiana cr_default na cr_arrow. EDIT 4: Kolejny problem to brak obsługi zdarzenia "NO MORE LIVES". Korzystając z wbudowanej zmiennej lives można było do tej pory używać eventu no more lives. Obecnie mi to nie działa i musiałem wstawić w miejscu tracenia życia warunek w stylu "jeśli życie = 0 to wykonaj to co do tej pory było w no more lives". EDIT 5: Należy uważać na kolejność wyświetlania obiektów. Do tej pory dla defaultowego depth=0, GM brał kolejność wyświetlania wg tego w jakiej kolejności się definiowało obiekty w resources (albo jakoś podobnie). Teraz działa to trochę inaczej i akurat u mnie pewne sprajty pokazały się nie tak jak powinny (w złej kolejności) więc koniecznie należy używać depth. EDIT 6: Nie działa u mnie przekierowanie do innej strony www. Testowałem an 2 sposoby: GML splash_set_main(false);//czyli w osobnym oknie splash_set_fullscreen(true);//pelny ekran splash_show_web('http://retrospect.com.pl',-1); oraz GML execute_shell("http://retrospect.com.pl",0); W obu przypadkach nic się nie dzieje. Na razie nie szukałem jeszcze rozwiązania bo trochę dziś już późno. ROZWIAZANIE: Działa funkcja JS - można dodać do tego co w edicie nr 1 GML function open_window(url, winName, attString){ window.open(url, winName, attString); } Najprostsze wywołanie: GML open_window('http://retrospect.com.pl','','') Więcej o pozostałych argumentach można przeczytać tu ROZWIĄZANIE DRUGIE: Jest jednak wbudowana funkcja. W obecnym helpie GMHTML5 nie ma jej na spisie (indeks) ale jak się da poprzez wyszukaj to się pokazuje. GML YoYo_OpenURL( url, target, options ); EDIT 7: Kolejny bug to działanie ds_grid_set_grid_region(index, source, x1, y1, x2, y2, xpos, ypos). Mając grida z poniższa zawartością: GML //grid "przyklad" A 1 B 2 C 3 D 4 E 5 po wykonaniu ds_grid_set_grid_region(przyklad, przyklad, 1, 0, 4, 1, 2, 0) na samym sobie (co jest opisane w dokumentacji jako jak najbardziej dozwolone) powinniśmy otrzymać taki grid: GML //grid "przyklad" A 1 B 2 B 2 C 3 D 4 a otrzymujemy taki: GML //grid "przyklad" A 1 B 2 B 2 B 2 B 2 Wniosek jest taki, że to polecenie zamiast pobrać od razu cały obszar grida do skopiowania i następnie całość wkleić na docelową pozycję działa tak, że pobiera po jednej linii i i kopiuje w docelowe miejsce, następnie sięga po kolejną linię itd. aż do końca z tym, że jak robi to na samej sobie to w efekcie powiela wciąż pierwszą linię (bo krok wcześniej nadpisana została informacja źródłowa). Łatwiej to zauważyć przy większej tabelce i przy kopiowaniu nie o 1 linię w dół a o więcej. Aby to ominąć należy na chwilę obecną użyć grida pomocniczego.
  24. A jakaś alternatywa na zapis danych do pliku? Generalnie html5=gry online a raczej nie widziałem jeszcze gry online bez HS.
×
×
  • Dodaj nową pozycję...