Wah, sudah hampir satu tahun persis blog ini saya tinggalkan. Alasan pertamanya sederhana: life interferes
Alasan kedua atas kemalasan saya di blog ini, adalah saya sedang jenuh mempelajari desain bahasa dan teknik kompilasi (kapan-kapan balik, it’s my deepest passion), pindah mempelajari bagaimana memproduksi film animasi sendiri. Resolusi 2010 saya, harus sudah memproduksi setidaknya satu film pendek animasi. Software yang saya gunakan adalah Blender 3D, dan waktu dan kapasitas otak yang tersisa setelah mempelajari animasi dan sketsa (untuk storyboarding dan desain karakter), saya gunakan untuk memprogram perangkat-perangkat tambahan untuk Blender agar memudahkan proses menjadi One-Man Pixar
Menggambar dan animasi ternyata susah, dan pikiran saya kadang kelayapan kembali ke pemrograman. Satu bidang yang menjembatani keduanya adalah pemrograman grafis, dan selama 1 tahun terakhir di waktu luang saya mengakrabkan diri dengan bahasa-bahasa pemrograman grafis PostScript, Processing, dan yang terakhir: ActionScript. Di antara ketiganya saya paling menyukai ActionScript, karena lebih manusiawi dari PostScript dan lebih mudah diajak eksperimen ketimbang Processing (sayangnya berbasis Java dan sulit menguji program lewat command-line).
Meski tersedia IDE semacam Flex Builder atau Flash Develop, dalam menciptakan lingkungan pemrograman ActionScript yang nyaman, saya kembali bergantung pada GNU Emacs tercinta, dan menambahkan paket/file berikut:
- Adobe Flex [URL] dan/atau SWFTools [URL]. Diperlukan untuk mengkompilasi file
.askode sumber program menjadi file Flash.swf. Kompiler SWFToolsas3compileadalah yang waktu kompilasinya paling cepat dan berukuran paling kecil di antara kedua pilihan ini, namun kompiler Adobe Flexmxmlclebih ketat memberlakukan sintaks ActionScript, ditambah bonus komponen-komponen Flex yang memudahkan kita sewaktu-waktu menciptakan Rich Internet Application. - Adobe Flash Player – Debugger Version [URL]. Diperlukan untuk menguji file Flash yang dihasilkan. Versi player Flash ini memudahkan debugging program-program ActionScript, termasuk mencetak perintah tracing ke
stdout. - Emacs ActionScript mode [URL]. Di antara berbagai versi yang ditawarkan, saya paling sreg dengan buatan John Connors (HTML, jangan langsung "Save As…"), turunan dialek Java dari
cc-mode. - Dokumentasi ActionScript + Adobe Flex [URL]. Tersedia satu file arsip berisi seluruh dokumentasi offline ActionScript dan Adobe Flex dalam format HTML dengan ukuran total cukup besar, 100MB++, yang kemudian saya ubah menjadi file
.chmHTML Help berukuran 17MB.
Terakhir, saya tambahkan aturan khusus ActionScript berikut ke dalam Makefile generik (daftar Makefile yang digunakan GNU Make bila tidak ditemukan makefile per-proyek, ditentukan dalam env-variable MAKEFILES):
# Actionscript SWFWIDTH = 640 SWFHEIGHT = 480 FLASHPRJ = flashplayer_10_sa_debug.exe AS3COMPILE = as3compile --width $(SWFWIDTH) --height $(SWFHEIGHT) MXMLC = mxmlc -default-background-color=0x7f7f7f \ -default-size=$(SWFWIDTH),$(SWFHEIGHT) %_st.swf: %.as $(AS3COMPILE) $^ -o $@ --width 800 --height 600 %.swf: %.as $(MXMLC) $^ -o $@ %_test: %.swf $(FLASHPRJ) $^ %.html:: %.swf @echo '<object width="$(SWFWIDTH)" height="$(SWFHEIGHT)">' \ '<param name="movie" value="$^">' \ '<embed src="$^" width="$(SWFWIDTH)"'\ ' height="$(SWFHEIGHT)">' \ '</embed></object>' > $@
… sehingga untuk menguji file XYZ.as saya hanya perlu menjalankan perintah make XYZ_test (yang dalam Emacs saya petakan ke satu tombol dengan fungsi Emacs-Lisp).
Kesan saya tentang ActionScript sejauh ini positif. Sekadar membuat program ActionScript untuk credit-roll film sangatlah mudah (dan jauh lebih cepat di-render ketimbang jika membuatnya sebagai scene 3D dalam Blender), mungkin saya akan mengusulkannya untuk Seruling Project-nya Blender Indonesia di mana saya turut terlibat (jelas open source, jelas punya keunggulan, tinggal presentasinya seperti apa…).
Ditulis oleh Adhi Hargo