Video: LGR - The 1997 DVD-ROM Upgrade Experience 2024
Anda dapat mempelajari bagaimana mempertahankan rasio aspek yang tepat untuk permainan Anda tanpa efek kotak surat muncul. Anda melakukan ini dengan memanipulasi permukaan aplikasi. Ukuran awal permukaan aplikasi didasarkan pada ukuran Ruang (jika Tampilan tidak aktif) atau port View (jika Tampilan aktif).
Dengan menskalakan permukaan aplikasi agar sesuai dengan jendela pemutar atau ukuran layar sebaik mungkin, GameMaker menyesuaikan rasio aspek yang sesuai saat pemain mengubah ukuran jendela atau memicu mode layar penuh. Prosedur berikut menunjukkan bagaimana menskalakan permainan Anda agar sesuai untuk permainan desktop. Anda juga dapat memperbarui kode untuk perangkat seluler.
Prosedur berikut menggunakan tutorial Application_Surface_Scaling.
Untuk mengupdate objek Controller agar penskalaan sesuai, ikuti langkah-langkah ini:
-
Dengan tutorial terbuka, dari pohon Resource, klik untuk membuka folder Objects, kemudian klik dua kali obj_Control.
Properti Objek muncul.
-
Pilih Tambah Event → Buat.
Acara Buat muncul di bagian Acara.
-
Dari tab Control, drag dan drop sebuah Execute Code Action.
Jendela kode akan muncul.
-
Pada jendela kode ketik kode berikut:
application_surface_draw_enable (false); min_width = view_wview [0]; min_height = view_hview [0]; scr_Resize ();
Kode ini memberitahu GameMaker bahwa Objek pengendali akan mengambil alih gambar permukaan aplikasi. Kode juga menetapkan variabel untuk lebar dan tinggi dasar saat pemain mengubah ukuran jendela. Baris terakhir dari kode panggilan Script, yang Anda tulis selanjutnya.
Karena Anda belum menulis Skrip, baris kode terakhir akan muncul sebagai kesalahan di jendela kode, tapi itu akan memperbaiki dirinya sendiri setelah Anda menulis Skrip.
-
Klik tanda centang hijau untuk menyimpan dan menutup jendela kode.
Selanjutnya, Anda perlu menulis naskah yang Anda panggil dalam prosedur terakhir.
-
Dari pohon sumber daya, klik kanan Scripts dan pilih Create Script.
Jendela kode kode muncul.
-
Di kolom Name, ketik scr_Resize.
-
Di jendela kode Script, ketik berikut ini:
cur_width = max (1, window_get_width ()); cur_height = max (1, window_get_height ()); rasio var = cur_width / cur_height; jika cur_width
-
Klik tanda centang hijau untuk menyimpan dan menutup jendela kode Script.
Kode ini mendapatkan ukuran jendela saat ini dan menyimpan nilai tersebut di variabel. Karena jendela bisa diminimalisir, yang akan menghasilkan nilai 0 (dan Anda tidak bisa membaginya dengan 0), Anda menggunakan fungsi maksimal untuk memastikan bahwa variabel selalu memiliki nilai 1 atau lebih.
Variabel kemudian digunakan untuk mendapatkan rasio aspek jendela permainan. Setelah rasio aspek ditentukan, GameMaker dapat menggunakannya untuk menskalakan permainan dengan benar, yang merupakan sisa kode yang diperlukan.