[Beginner-Intermediate] Instance lebih lanjut
2 posters
Halaman 1 dari 1
[Beginner-Intermediate] Instance lebih lanjut
DISCUSSION MOVED TO NEW FORUM:
http://gmindo.web.id/forum/showthread.php?tid=116
Halo semua,
Merupakan lanjutan dari penjelasan sebelumnya tentang object dan instance, kali ini mari kita bahas apa sebenarnya instance dan apa saja yang terkait di dalamnya.
Instance hasil penurunan suatu object mempunyai dua bagian utama:
1. Instance Properties
2. Instance Functions
Properties:
Sederhananya, properties adalah kumpulan nilai2 yang menjelaskan berbagai kondisi dari instance tersebut. Nilai-nilai tersebut disimpan dalam variabel2 yang sudah menyatu dengan instance tersebut, sehingga disebut sebagai built-in variables. Apa saja? Ada beberapa kategori
General variabels:
-id
-solid
-visible
-persistent
-depth
-alarm
-object_index
Silakan lihat lihat penjelasan masing2 variabel di help file . Yang jelas, karena instance memiliki id yang unik maka nilai2 variabel suatu instance akan berbeda satu sama lainnya walaupun diturunkan dari object yang sama. Jadi kalau misalnya kita buat object bola kemudian kita buat instance nya beberapa buah, maka masing-masing dapat kita set variabelnya berbeda2 untuk masing2nya, misalnya depth nya berbeda2, atau ada yang visible ada yang tidak.
Kategori lain untuk instance variable:
Sprite variables:
-sprite_index
-sprite_width
-sprite_height
-sprite_xoffset
-sprite_yoffset
-image_alpha
-image_angle
-image_blend
-image_index
-image_number
-image_speed
-image_xscale
-image_yscale
Mask variables:
-mask_index
-bbox_bottom
-bbox_left
-bbox_right
-bbox_top
Banyak? benar sekali, dan masih ada lagi beberapa kategori:
Movement variables (seperti x,y,xprevious,yprevious, xstart, ystart, direction, gravity, dst)
Path variables
Timelines variables
Physics variables
Tanpa physics pun, terdapat lebih dari 40 built-in variables dari satu instance dengan nilai yang berbeda2 dan berubah2 di setiap step dari game dan harus selalu diupdate oleh gamemaker. Nah contoh sekarang dari objek bola dan kita buat 100 instance dari object tersebut maka akan terdapat 4000 variabel unik yang harus diupdate di setiap stepnya. Katakan 30 step sama dengan 1 detik, maka dalam 1 detik terdapat 100x40x30=12,000 variabel update per detik.
Walaupun komputer sekarang udah canggih2 dan cepat2, namun ada baiknya juga bahwa kita cukup selektif dalam membuat instance dan membatasi jumlah pemakaiannya. Hanya objek yang sangat perlu saja yang perlu dibuatkan instance nya, dan usahakan pemanfaatan yang maksimal seperti penggunaan path, timeline dll.
Komen dan saran silahkan
http://gmindo.web.id/forum/showthread.php?tid=116
Halo semua,
Merupakan lanjutan dari penjelasan sebelumnya tentang object dan instance, kali ini mari kita bahas apa sebenarnya instance dan apa saja yang terkait di dalamnya.
Instance hasil penurunan suatu object mempunyai dua bagian utama:
1. Instance Properties
2. Instance Functions
Properties:
Sederhananya, properties adalah kumpulan nilai2 yang menjelaskan berbagai kondisi dari instance tersebut. Nilai-nilai tersebut disimpan dalam variabel2 yang sudah menyatu dengan instance tersebut, sehingga disebut sebagai built-in variables. Apa saja? Ada beberapa kategori
General variabels:
-id
-solid
-visible
-persistent
-depth
-alarm
-object_index
Silakan lihat lihat penjelasan masing2 variabel di help file . Yang jelas, karena instance memiliki id yang unik maka nilai2 variabel suatu instance akan berbeda satu sama lainnya walaupun diturunkan dari object yang sama. Jadi kalau misalnya kita buat object bola kemudian kita buat instance nya beberapa buah, maka masing-masing dapat kita set variabelnya berbeda2 untuk masing2nya, misalnya depth nya berbeda2, atau ada yang visible ada yang tidak.
Kategori lain untuk instance variable:
Sprite variables:
-sprite_index
-sprite_width
-sprite_height
-sprite_xoffset
-sprite_yoffset
-image_alpha
-image_angle
-image_blend
-image_index
-image_number
-image_speed
-image_xscale
-image_yscale
Mask variables:
-mask_index
-bbox_bottom
-bbox_left
-bbox_right
-bbox_top
Banyak? benar sekali, dan masih ada lagi beberapa kategori:
Movement variables (seperti x,y,xprevious,yprevious, xstart, ystart, direction, gravity, dst)
Path variables
Timelines variables
Physics variables
Tanpa physics pun, terdapat lebih dari 40 built-in variables dari satu instance dengan nilai yang berbeda2 dan berubah2 di setiap step dari game dan harus selalu diupdate oleh gamemaker. Nah contoh sekarang dari objek bola dan kita buat 100 instance dari object tersebut maka akan terdapat 4000 variabel unik yang harus diupdate di setiap stepnya. Katakan 30 step sama dengan 1 detik, maka dalam 1 detik terdapat 100x40x30=12,000 variabel update per detik.
Walaupun komputer sekarang udah canggih2 dan cepat2, namun ada baiknya juga bahwa kita cukup selektif dalam membuat instance dan membatasi jumlah pemakaiannya. Hanya objek yang sangat perlu saja yang perlu dibuatkan instance nya, dan usahakan pemanfaatan yang maksimal seperti penggunaan path, timeline dll.
Komen dan saran silahkan
Terakhir diubah oleh zebrakelabu tanggal Fri 16 May 2014, 22:32, total 1 kali diubah
Re: [Beginner-Intermediate] Instance lebih lanjut
mnurut saya sih gpp kalo bnyk object (kalo masih beginner), tpi kalo udah pro sbaik ny di persedikit jumlah object nya. untuk Tombol misalnya, pke 1 object bisa bikin ratusan hingga ribuan tombol kalo mau
kasih sedikit contoh:
misal dlm 1 room ada 100 obj_bola. trus bola yg kita klik ksih kode ini global.obj=id
maka akan return id bola yg di klik.
terus, kalo kita kasih kode ini, global.obj.visible=false, maka bola yg kita klik tadi jdi invisible
btw nice share om
kasih sedikit contoh:
misal dlm 1 room ada 100 obj_bola. trus bola yg kita klik ksih kode ini global.obj=id
maka akan return id bola yg di klik.
terus, kalo kita kasih kode ini, global.obj.visible=false, maka bola yg kita klik tadi jdi invisible
btw nice share om
Re: [Beginner-Intermediate] Instance lebih lanjut
iya jadi kalau diset invisible maka objek tersebut tidak digambar. memang pekerjaan gambar draw event termasuk berat jadi dengan di set invisible maka otomatis pekerjaan game menjadi lebih ringan. tapi variable lain tetap terupdate.
Similar topics
» [Beginner-Intermediate] file_find()
» [Beginner-Intermediate] String
» [Beginner-Intermediate] Random number
» [Beginner - Intermediate] Script + Argument
» [Beginner-Intermediate] Object dan instance
» [Beginner-Intermediate] String
» [Beginner-Intermediate] Random number
» [Beginner - Intermediate] Script + Argument
» [Beginner-Intermediate] Object dan instance
Halaman 1 dari 1
Permissions in this forum:
Anda tidak dapat menjawab topik