Telset.id – Grow Now! Games, seorang developer solo, baru saja merilis build browser yang bisa dimainkan dari kota cyberpunk ASCII yang bisa dijelajahi. Build ini berjalan di atas engine Rust WebAssembly berukuran 283KB yang memberi makan renderer WebGL, sebuah pencapaian teknis yang menarik perhatian para penggemar game dan pengembang.
Build tersebut tayang pekan ini bersamaan dengan video YouTube kedua berjudul ASCII City Update: Interiors, Elevation & Skyscrapers. Video ini merupakan kelanjutan dari video orisinal yang telah ditonton lebih dari satu juta kali dan menerima 9.000 komentar, menunjukkan antusiasme besar komunitas terhadap proyek ini.
Keunggulan utama dari proyek ini adalah kemampuannya menghadirkan pengalaman berjalan-jalan di kota cyberpunk tanpa menggunakan engine game konvensional. Sebelumnya, Grow Now! Games mendeskripsikan demo orisinalnya kepada PC Gamer sebagai proyek tanpa “Unity, tanpa Unreal, tanpa model 3D, tekstur, atau shader.” Pendekatan ini membuktikan bahwa kreativitas dan optimasi kode dapat menghasilkan pengalaman visual yang unik.
Detail Teknis Engine ASCII City
Halaman web memuat file bernama ascii-city-engine_bg-DqjAhqbp.wasm, sebuah modul berukuran 283KB yang mereservasi 1.152KB memori linear saat startup. Modul ini melaporkan versi engine 0.1.0 ketika diinstansiasi di luar browser. Ekspor yang tersedia termasuk initialise_native_game, step_native_game, dan generate_native_local_map.
Jalur debug yang tertinggal di dalam binary mengungkap modul sumber Rust di balik panggilan tersebut: city.rs, world.rs, population.rs, interiors.rs, dan rendering.rs. Generasi dunia berjalan di Rust, yang kemudian menyerahkan array byte berformat base64 ke JavaScript yang mencakup tinggi bangunan, jenis tile, permukaan, hue, saturasi, gaya jendela, flag menyala, dan ID denah lantai.

Renderer meminta konteks WebGL dan mengompilasi pasangan vertex dan fragment shader, di mana tahap fragment terdiri dari satu pencarian texture2D. Karakter digambar sekali ke dalam atlas canvas dengan fillText, di-cache per kombinasi karakter-dan-warna, diunggah ke GPU dengan satu panggilan texImage2D, lalu digambar sebagai quad bertekstur dengan enam vertex per kuad.
Sel atlas berukuran 11 piksel tingginya dengan lebar advance monospace ditambah dua. Setiap sel yang terlihat masuk ke satu unggahan buffer, dan satu panggilan drawArrays per frame. Dua fallback berada di bawahnya: jalur Canvas 2D drawImage ketika WebGL tidak tersedia, dan jalur fillText per sel yang dapat diakses melalui parameter URL ?direct.
Sesi desktop merender 180 kolom dengan 80 baris, atau 14.400 sel karakter, dalam Consolas 10px pada sembilan piksel per baris. Perangkat sentuh turun ke 48 baris dan antara 96 hingga 168 kolom, sementara engine Rust menggunakan profil terpisah 160 kali 112. Vertex buffer melakukan prealokasi 2.76MB dan berlipat ganda ketika frame melebihi kapasitasnya.
Baca Juga:
Proyek ini merupakan bagian dari tren game indie yang mengeksplorasi batas-batas teknis. Sebelumnya, ada game Backrooms first-person untuk Sega 32X 1994 yang berjalan di engine raycasting yang ditulis dari awal dalam C dan assembly SH-2. Ada juga tribute multiplayer Doom yang mengimplementasikan raycasting dan proyeksi sprite sebagai tumpukan tampilan SQL, mencapai sekitar 30 FPS pada resolusi 128 x 64.
Thunder Lizard, sebuah roguelike ASCII, juga telah melihat grid karakternya digambar ulang oleh model gambar menjadi visual gerakan penuh pada sekitar 10 FPS. Inovasi-inovasi ini menunjukkan bahwa pengembang terus menemukan cara baru untuk memanfaatkan teknologi yang ada.
Kehadiran build yang bisa dimainkan ini membuka akses bagi siapa saja yang ingin mencoba langsung pengalaman berjalan di kota cyberpunk ASCII tanpa perlu menginstal perangkat lunak tambahan. Cukup buka browser, dan dunia ASCII tersebut siap dijelajahi.
Bagi pengembang dan penggemar teknologi, proyek ini menjadi contoh menarik bagaimana WebAssembly dan WebGL dapat dikombinasikan untuk menciptakan pengalaman interaktif yang ringan namun kaya fitur. Dengan ukuran file yang kecil dan optimasi yang cermat, pendekatan teknis semacam ini bisa menjadi inspirasi untuk proyek-proyek serupa di masa depan.
Grow Now! Games terus mengembangkan proyek ini dengan pembaruan yang menambahkan interior, elevasi, dan pencakar langit. Dengan basis penggemar yang sudah besar, bukan tidak mungkin kota ASCII ini akan terus berkembang menjadi pengalaman yang lebih lengkap. Namun, semua itu bergantung pada arah pengembangan yang diambil oleh developer di masa mendatang.





Komentar
Belum ada komentar.