Ten artykuł został stworzony dla starszych wersji GameMakera i może nie być aktualny.

Zmiany w GM 8.1

Wtorek, 12 Kwietnia 2011, 22:12
Czas czytania 2 minuty, 54 sekundy
Zgodne z GM: gm8
Co nowego w GM 8.1
Artykuł zawiera listę znanych zmian, pełna lista pojawi się po wydaniu publicznej wersji programu!
Artykuł uwzględnia zmiany do wersji 8.1.59

Edytor plansz
Zmiana prawego klawisza myszy - otwiera menu, zamiast kasować, do kasowania trzeba przytrzymać Ctrl.
Usuwanie już rozmieszczonych obiektów z planszy jest domyślnie wyłączone - można je więc nakładać na siebie.
Zoom w room editorze. Poza guzikami w edytorze, rolka myszy przybliża i oddala, wciśnięcie środkowego klawisza pozwala przesuwać planszę.
Można ustawić w opcjach defaultowe tło dla room editora, gdy wyłączymy rysowanie tła.
Gdy używamy przeźroczystego tła, widoczna jest szachownica jak w edytorze grafik.
Dodatkowa opcja w menu (PPM), pozwalająca edytować obiekt.

Edytor grafik
Zoom za pomocą rolki w myszce, przesuwanie za pomocą środkowego przycisku.

Edytor ścieżek
Przesuwanie za pomocą środkowego przycisku myszki.

Edytor kodu
Przyspieszono kolorowanie dłuższych skryptów (działa płynnie do 1000 linii).
Można wyszukiwać dowolny tekst występujący w kodzie w Skryptach/Obiektach/Planszach/Liniach czasu/Wyzwalaczach.
Można włączać wyłączać podpowiadanie kodu przyciskiem na górze edytora.
ESC zamyka aktualne podpowiedzi.
Można zmienić kolor tła.
Dodanie /// w pierwszej linii Execute Code w obiektach powoduje wyświetlanie komentarza w miejesce nazwy tego klocka.

Przekazywanie argumentów
Od wersji 8.1.59 zmieniono obsługę argumentów skryptach. Jeśli w skrypcie mojSkrypt() pojawia się zmienna argumentX, do skryptu mojSkrypt() nalezy podać X+1 argumentów. Np. dla argument2, trzeba podać trzy argumenty. Argumenty są więc teraz OBOWIĄZKOWE.
Aby uzyskać argument opcjonalny, nalezy używać tablicy argument[Y]. Warunek jest jeden - Y nie może być większy/równy niż zmienna argument_count, która przetrzymuje liczbę przekazanych argumentów:
kodif argument_count > 4 { // jest co najmniej 5 argumentów
// mozna teraz zrobić coś z argument[4];, czyli piątym argumentem
}
Przypominam, że tablice numerowane są od zera, zatem ostatnim argumentem opcjonalnym nie generującym błędu GM jest argument[argument_count-1];

Inne
Zmiana nazw zasobów jest teraz pod klawiszem F2. Ctrl+R wyszukuje zasoby, Ctrl+F działa tylko w edytorze kodu i pozwala na wyszukiwanie.
GM 8.1 zapisuje pliki jako GM81 a nie GMK.
Dodana funkcja draw_self() - wykonuje kod draw_sprite_ext(sprite_index,image_index,x,y,image_xscale,image_yscale,image_blend,image_angle,image_alpha);
Zmienne os_type i os_device dla osób chcących wydać grę na innych platformach niż PC.
BuforZ w 24 bitach.
Sprzętowe T&L dla szybszego generowania grafiki.
Dodano d3d_light_define_ambient(kolor) aby ustawić ogólny kolor otoczenia.
Dodano dot_product(x1,y1, x2,y2), dot_product_3d(x1,y1,z1, x2,y2,z2), point_distance_3d(x1,y1,z1, x2,y2,z2).
Poprawiono rendering czcionek.

Kodowanie
GM 8.1 został napisany w najnowszej wersji Delphi, zatem kodowany jest w UTF, co powoduje pewne problemy. O ile można już korzystać z prawego Alta do wpisywania polskich znaków diaktrycznych (ą, ę) i działało to w wersji do 8.1.53 to niestety źle generowane były czcionki - powyżej tej wersji czcionki już generują się dobrze, ale kodowane w edytorze się zmieniło i tych znaków nie uzyskamy... niestety ten bug prawdopodobnie zostanie naprawiony w kolejnych wersjach, 8.1.59 jeszcze tej poprawki nie uwzględniał.
Tekst jest poprawnie pobierany przez get_string(), oraz poprawnie wyświetlany dla gier przekonwertowanych z GM8.0.
Komentarze (łącznie 13):
K
Kofel (Pią., 15 Kwi. 11, 15:47)
#1

Użycie UTF powoduje problemy? Pierwsze słyszę. To chyba programiści używający Unicode w YoYo są niepełnosprawni.

gnysek (Pią., 15 Kwi. 11, 16:33)
#2

Tak, bo nowe delphi uzywa UTF, a GM nie. I tu się robi konflikt. Zauważ, ze np. czcionki nadal używają 256 znaków, czyli jakby ASCII.

Muuuuczek567 (Pią., 15 Kwi. 11, 16:52)
#3

Do czego służy dot_product? Jak działa? I jaką wartość zwraca?

HuderLord (Pią., 15 Kwi. 11, 17:14)
#4

do wektorów

Muuuuczek567 (Pią., 15 Kwi. 11, 20:30)
#5

Dzięki, naprawdę mi pomogłeś :/
Co trzeba podać w argumentach? Nie mam bladego pojęcia o działaniach na wektorach.

Dawidds (Pią., 15 Kwi. 11, 20:42)
#6

Wpisz sobie dot product w google albo na wiki a nie się pytasz na forum o programowaniu w Game Makerze.

HuderLord (Pią., 15 Kwi. 11, 20:44)
#7

To jest iloczyn skalarny 2 wektorów. Podajesz x y i z 2 obu wektorów. Funkcja wymnoży x1 z x2, y1 z y2, z1 z z2 i to wszystko razem do siebie doda. Np: dot_product(1,2,3,4) = 1*3 + 2*4 = 11

Muuuuczek567 (Pią., 15 Kwi. 11, 20:54)
#8

No to w tym będę musiał się podszkolić. Nie wiem, czy w gimnazjum jest iloczyn skalarny w podstawie programowej, a coś czuję, że raczej nie.

gnysek (Pią., 15 Kwi. 11, 21:33)
#9

No, nawet na studiach to pewnie dopiero na matmie jest, bo ja tego nie kojarzę, albo tylko na wykładach było.

TheMarcQ (Pią., 15 Kwi. 11, 21:39)
#10

"Zmienne os_type i os_device dla osób chcących wydać grę na innych platformach niż PC" Jak to ma dzialac?

Jaklub (Pią., 15 Kwi. 11, 21:50)
#11

np. dla minisów sony zablokujesz multi, bo sony jest gupie!1

HuderLord (Pią., 15 Kwi. 11, 21:54)
#12

U mnie na 1 semestrze studiów to było.

HuderLord (Pią., 15 Kwi. 11, 22:52)
#13

A nie sorry, sprawdziłem w GM tą funkcję nie zwróciła 11 tylko 0.98, tamta funkcja to iloczyn skalarny geometryczny czyli zwraca cosinus kąta między tymi wektorami. To w takim razie dot_product(1,2,3,4) = tiny.pl/hd8bb

Najnowsze wersje GameMakera:

Stabilna
2024.2.0.132 • 2024.2.0.163
wydana 43 dni temu
LTS
2022.0.2.51 • 2022.0.2.49
wydana 182 dni temu
Beta
2024.400.0.532 • 2024.400.0.551
wydana 14 dni temu
= IDE, = Runtime
Użytkownicy online
1 użytkownik aktywny:
gości: 1,
(~ostatnie 15 minut)
Discord
48 użytkowników online na discordzie:
Kysiu, s..., Alice, DungeonFairy🧚, Nitro Slav, Carl-bot, p..., Dominator2v, Grela, Wielki Druid, TinyFish, Add92, 21Lancz, Kowu, OdrzuconyKrakers, Filyps, fervi, Radek Ignatów, Kalor, r..., antek, LadyLush, lethian, VanhGND, HappyOrange, MKP (GEM), Arrekin, MagnusArias, Domeen0, Dyno, 🆅🅸🆃🅾74🅼, Deusald, Korodzik, 𝕳𝖚𝖌𝖔 𝕲𝖔𝖓𝖝𝖆𝖑𝖊𝖝, LeD, Ulti, 🧁Cupcake🧁, bagno, Mtax, g..., l..., Alkapivo, moeglich, Nikas, Krzysiek1250, Shockah, Kandif, exigo
Shoutbox
gnysek (20:44, 11.04.24)
Niektórzy dlatego wybierają GMEdit. Ale ja liczę na Code Editor 2, tylko na razie zbyt zbugowany jest.
Tymon (16:11, 11.04.24)
Stitch dla mnie osobiście jest lepszy bo nie musze kopać się z interfejsem GMa i mogę tylko pisać kod.
Tymon (16:05, 11.04.24)
Yes. Obecny nie jest taki zły, jak zainstalowałem najnowszą stabilną to w porównaniu z tym czego używałem... 10 lat temu...? Wszystko wydaje się lepsze.
gnysek (22:48, 10.04.24)
bscotch/stitch ? Ja czekam na fixy do nowego edytora, bo wszystko wydaje się dziś lepsze od tego obecnego :D
Tymon (19:54, 10.04.24)
Hm, Stitch okazuje się całkiem dobrą alternatywą dla wbudowanego edytora
Wojo (22:16, 08.04.24)
siemano huder myślałem, że zniknąłeś całkiem z gmclanu bo na discordzie cie nie ma :D
I am Lord (00:37, 05.04.24)
O dzięki :D
gnysek (09:58, 02.04.24)
Znalazłem na podstawie jego postów: youtube.com/@Jakim_
I am Lord (20:16, 01.04.24)
Ktoś ogarnia jakie konto miał Jakim na YT?
gnysek (16:07, 29.03.24)
Nowy Edytor kodu jednak po świętach
Starsze wpisy znajdziesz w Archiwum.
Ankieta
Ile zarobiłeś do tej pory na grach stworzonych w GM?