Nasze strony: gmclan.org gameonly.pl ps-plus.pl gameswithgold.pl n-switch.pl hmt.pl
Fastbar
Powrót do strony głównej
Trzymaj pliki na gmclan.org!
Game Maker w pytaniach i odpowiedziach!
Polska dokumentacja
Tabela wyników ligi 24
Pobierz GM
Akademia GMCLANu
Wiadomości
Kategoria: wszystkie :: game maker :: kącik programowania :: inne

Od wersji 2.2 GMS, stringi będą rzutowane na liczby w przypadku działań

Ku zaskoczeniu YYG ogłosiło, że od wersji 2.2.2 dla zarówno standardowych, jak i eksportów YYG, włącza obsługę typowania dynamicznego string->liczba (w drugą stronę o dziwo nie).

www.yoyogames.c...n-version-2-2-2

Na czym to polega? Otóż jeśli napiszemy:
kod:var = 5 + '6';to otrzymamy 11, a nie błąd kompilacji. Każdy string, który jest poprawną liczbą, zostanie przekonwertowany i nie wywali błędu.
Prawidłowe liczby to np. "5", "+"5, "-5", "5.5", "5e", "5cokolwiek" - wszystko, co przekonwertowała by też funkcja "atof" z języka C. Wszystkie znaki inne niż cyfry zostaną odrzucone, o ile udało się już coś skonwertować.

Może to powodować trochę błędów - innych niż do tej pory, na co warto zwrócić uwagę.

Przypominam też, że o ile 5 + "6" to 11, to już "5" + 6 powinno dać nam... błąd.

Wprowadzi to niestety nieco zamieszania i chyba dotychczasowe, mniej elastyczne podejście mimo generowania błędów było lepsze. Z drugiej jednak strony, podobno w niektórych eksporterach to już tak działało, więc teraz zostało "wyrównane".

 

autor: gnysek | data dodania: 11:07, 4.03.2019 | odsłon: 1019
Komentarze
stron: 1

1


av

nowy_user (21:31, 4.03.2019)

Dzięki za info, co prawda sam nie korzystam z GMS2 , ale jest to coś, co warto miec z tyłu głowy. Rozumiem, że ta zmiana to ujednolicenie pewnych standardów , i tu duży plus dla Yoyo, że pracują nad rozwojem GMLa. Byłoby jednak dobrze, gdyby np. w ustawieniach pozostawali opcje wyłączenia konwersji stringów na liczby, choćby do celów debugacyjnych. Już wyobrażam siebie godzinami siedzącego nad jakimś bugiem, po czym dostrzegam, że niechcąco użyłem stringa zamiast liczby... normalnie GM powinien to zgłosić przy kompilacji, ale po nowych zmianach możemy żyć w błogiej nieświadomości.

av

gnysek (10:06, 5.03.2019)

Nie dodadzą takiej opcji, bo wersje YYCompiler zawsze tak działały, więc musieliby nagle dopisać nowy kod, a oni po prostu wszędzie go tak naprawdę uprościli (bo każda wersja, czy YYC czy VM korzysta w pewnym sensie z C++).

av

Konrad-GM (1:24, 6.03.2019)

Nie rozumiem, co do tego ma C++, przecież to statycznie typowany język. Wprowadzają tylko zamieszanie, będzie jak z JS czy PHP, niby spoko, dla laików będzie to "oczywiste", ale gdy się zrobi nieumyślny błąd z dodawaniem stringa do liczby, to będzie go trudno potem znaleźć.

av

gnysek (10:04, 6.03.2019)

No własnie korzystają z "atof", żeby nie waliło errorami.

av

Konrad-GM (13:53, 7.03.2019)

Raczej chodziło mi o fragment "bo wersje YYCompiler zawsze tak działały, więc musieliby nagle dopisać nowy kod" ale już chyba rozumiem, w YYC wprowadzili taką funkcję, ale w VM już nie, co zmusiło ich do ujednolicenia działania obu runtime-ów.

av

gnysek (9:13, 8.03.2019)

Szkoda, ze nie chciało im się w drugą stronę, ale jak rozumiem obecna zmiana powoduje mniej bugów do szukania (tzn. będą to bugi w grach, nie w runnerze). Zrzucili z siebie odpowiedzialność.

av

nowy_user (10:21, 8.03.2019)

Biorąc pod uwagę masową krytykę na forum YoYo w temacie GML consistency, ( widziałem Gnysek, że dorzuciłeś też swoje 3 grosze :-) . ) , obstawiam, że jednak zmiękną i poprawią to w najnowszej aktualizacji.

av

gnysek (1:30, 10.03.2019)

Nie, dla nich to rozwiązanie jest prostsze w utrzymaniu.

stron: 1

1



Dodaj komentarz:
Treść:
Menu
Panel użytkownika
Jesteś niezalogowany!

Nie masz konta? Zarejestruj się
Użytkownicy on-line
4 użytkownik(ów) aktywny(ch) przez ostatnie 15 minut:
gości: 1, userów: 3, ukrytych: 0
gnysek, LolikZabijaka, Adriann
Użytkownicy na czacie discord
Chell (22:47, 20.07.19):
zróbcie o mnie zróbcie o mnie
Chell (22:47, 20.07.19):
ja chciałem zrobić o nikasie i malowaniu cycków, ale i tak nie mam czasu
Adriann (19:06, 20.07.19):
Zbyt hermetyczny temat :p
gnysek (15:29, 20.07.19):
Ktoś w ogóle coś robi ?
I am Lord (22:34, 19.07.19):
No i ja też udzielam zgody swojej
I am Lord (22:33, 19.07.19):
No
Korodzik (10:43, 19.07.19):
Jakby co, to z góry mówię: niniejszym udzielam zgody na użycie mnie w grze robionej na tę turę Ligi
Adriann (16:25, 18.07.19):
Liga od jutra..hmm mam cichą nadzieję że temat będzie można pokierowac w stronę top down shootera bo chętnie bym zrobił... :>
gnysek (21:04, 15.07.19):
Haha, no już chyba trzeci miesiąc a on nie odpowiada.
nowy_user (14:38, 15.07.19):
Nie działał mi dziś rano Gmclan… już się przestraszyłem, że MaxGaming w końcu złożył pozew na Gnyska i zamknęli nam stronę… uff jak dobrze, że już działa
Dester (14:53, 11.07.19):
motion_add to moja nowa ulubiona funkcja. Do wszystkiego się nadaje.
Nikas (23:43, 8.07.19):
Kurde dzięki chłopaki za miłe słowa staram się!
gnysek (22:16, 8.07.19):
Świetne
Chell (16:53, 8.07.19):
muszę przyznać, że te prace są niczego sobie, Nikas
exp (13:52, 8.07.19):
muszę przyznać, że te prace są niczego sobie
nowy_user (11:08, 8.07.19):
Bardzo ładne prace, Nikas
Wojo (19:42, 7.07.19):
Bardzo ładno prace.
Saus (21:16, 5.07.19):
Bardzo ładnie.
Nikas (16:52, 5.07.19):
Chciałem się tylko pochwalić, że zrobiłem sobie stronę internetową: krabonszcz.com
gnysek (13:15, 5.07.19):
o, w końcu ktoś przyuważył. Czyli marketingowo słaba zmiana.
Chell (23:52, 4.07.19):
nareszcie nowy layout strony glownej
gnysek (11:39, 1.07.19):
Ja ostatnio nie mam czasu odpalić. Mam nadzieję w sierpniu nadrobić. I trochę czekam na te zmiany na koniec roku, bo one sporo zmienią i ułatwią (i funkcje i sekwencje).
exp (0:33, 30.06.19):
od jakiegoś czasu przymierzam się do kupienia gms2
exp (0:33, 30.06.19):
o dzięki za info
nowy_user (15:05, 28.06.19):
Na Yoyo letnia promocja -20%, warto zwrócić uwagę zwłaszcza na eksport mobilny, który nie tak dawno kosztował 399$ a teraz 159 $.
gnysek (10:34, 24.06.19):
@Kordzik jakiś filtr był, żeby przyklejony temat pokazywać z danej kategorii i dlatego. Zmieniłem.
Adriann (19:52, 21.06.19):
głuptasek
SimianVirus7 (8:51, 20.06.19):
znaczy w stepie ale przeklejałem to do draw i wtedy się skapnąłem
SimianVirus7 (8:44, 20.06.19):
Ale ze mnie pajac. Ta sprawa z rozjaśnianiem sprite - obiekt był taki ciemny, bo w draw miałem image_blend = c_gray, a ja już w gimpie wszystko poprawiłem ;_;
Konrad-GM (23:09, 19.06.19):
Internet głównie, pisałem jakiś swój silnik w OpenGL + C++ ucząc się z learnopengl.com i tak podstawy shaderów podłapałem
I am Lord (22:41, 19.06.19):
Konrad mistrzu shaderów z jakich źródeł się uczyłeś?
Korodzik (21:35, 19.06.19):
W sumie to czemu od ponad pół roku temat dyzmka o Seidzie wisi na górze forum?
SimianVirus7 (18:53, 19.06.19):
chwilę pokombinowałem ale shadery to nie moja bajka
Konrad-GM (12:40, 19.06.19):
docs.yoyogames....ders/index.html Tutaj masz ładnie to opisane w pierwszych akapitach
Konrad-GM (12:39, 19.06.19):
Trochę pokiełbasiłem z tym mnożeniem, ale ostatecznie coś takiego powinno być - pastebin.com/6jjunh5g Tak, ten parametr zmieniasz przez uniformy właśnie.
SimianVirus7 (12:36, 19.06.19):
Prosto i na temat, to lubie a powiedz mi jeszcze, czy shadery mogę zmieniać dynamicznie, znaczy, że zrobie uniwersalny, a parametry będę zmieniał w kodzie jakiegoś obiektu
Konrad-GM (12:24, 19.06.19):
A i tam dałem mnożenie, zamiast mnożenia możesz dać + to wtedy czarny kolor też powinno Ci się rozjaśnić, sorry
Konrad-GM (12:20, 19.06.19):
Oczywiście nie chcesz mieszać się do wartości kanału Alpha, więc możesz coś takiego zrobić: gl_FragColor = (tutaj standardowy kod) * vec4(vec3(1.0 + uRozjasnienie), 1.0); gdzie uRozjasnienie to uniform float uRozjasnienie;
Konrad-GM (12:15, 19.06.19):
Wiesz co, standardowy shader po stworzeniu nowego, to jak chcesz coś rozjaśnić to jest to niezmiernie proste. We fragment shaderze masz wyjście gl_FragColor to wystarczy, że dodasz mnożenie przez wartość rozjaśnienia
SimianVirus7 (12:13, 19.06.19):
jest to jakaś opcja, ale najpierw musiałbym się ich nauczyć
Konrad-GM (10:33, 19.06.19):
A może shader?
gnysek (10:31, 19.06.19):
chyba nie
SimianVirus7 (9:13, 19.06.19):
czy w gm:s2 można jakoś rozjaśnić sprite'a? w gm:s w zakładce effects było ich multum, a w gm:s2 jest tylko grayscale i blur. Jakiś plugin?
gnysek (23:35, 16.06.19):
Wiem.
Konrad-GM (23:25, 16.06.19):
Przez to emaile trafiają do spamu z miejsca
gnysek (23:11, 16.06.19):
Bo Ranma wciąż mi nie dał dostępu do domeny żebym ja normalnie mógł konfigurować.
Konrad-GM (14:43, 16.06.19):
Dlaczego emaile z gmclan przychodzą po domenie gmclan.ovh i to bez szyfrowania? :o
SimianVirus7 (14:25, 16.06.19):
Zastanawiałem się, dlaczego gra schodzi do 5fpsów przy prawie pustym roomie, a tu się okazało, że mam 50 000 obiektów
gnysek (18:59, 14.06.19):
thx
SimianVirus7 (16:19, 14.06.19):
Właśnie zdałem sobie sprawę, że kupiłem przykład z marketu, którego twórcą jest Gnysek
Ankieta
» Ile powinny trwać tury Ligi 24?
24h
48h
54h (piątek od 18:00)
7 dni
inna długość (podałem w komentarzu ankiety)

GMCLAN to serwis o programie Game Maker i nie tylko.
[ Polityka prywatności ]
Copyright © 2002-2019. GMCLAN.ORG
Wszelkie prawa zastrzeżone. Kopiowanie materiałów bez zgody redakcji zabronione!
© 2002-2017 Ranmus (ranmus.pl), © 2017-2019 {=|=} fable_inside();

[ Czas generowania strony: 0.02121 sekund ] [ Liczba zapytań MySQL: 8 ]