2026-08-14·5 min read
Game & Audio

Zero-G Inertia & Procedural Audio: Merancang Game Arcade Void Miner di Browser

#Game Dev#Canvas 2D#Web Audio API#TypeScript#Physics

Ketika merancang game Void Miner untuk zona Arcade di portofolio ini, tujuannya bukan sekadar game tembak-menembak biasa, melainkan menghadirkan kontrol pesawat luar angkasa dengan fisika inersia (momentum, thrust, dan drag vakum).

Pesawat tempur dirancang dengan moncong aerodinamis jarum, sayap delta bergaris, dan meriam laser ganda di ujung sayap yang menembakkan berkas plasma kembar secara akurat.

Untuk audio, daripada membebani bundle web dengan file MP3 yang besar, seluruh suara disintesis secara real-time dengan Web Audio API—menghasilkan respons instan 0ms latency dan nuansa retro arcade 8-bit otentik.

KODE TEKNIS (TYPESCRIPT)
PRODUKSI READY
// Procedural Web Audio API Laser Synthesizer
playLaser() {
  const ctx = this.getAudioContext()
  const osc = ctx.createOscillator()
  const gain = ctx.createGain()
  
  osc.type = 'sawtooth'
  osc.frequency.setValueAtTime(880, ctx.currentTime)
  osc.frequency.exponentialRampToValueAtTime(110, ctx.currentTime + 0.12)
  
  gain.gain.setValueAtTime(0.2, ctx.currentTime)
  gain.gain.exponentialRampToValueAtTime(0.01, ctx.currentTime + 0.12)
  
  osc.connect(gain).connect(ctx.destination)
  osc.start()
  osc.stop(ctx.currentTime + 0.12)
}
CATATAN TEKNIS:Seluruh efek suara pesawat, tembakan laser, ledakan shrapnel, dan kristal kuantum dibuat 100% secara prosedural via oscillator native tanpa mengunduh file audio eksternal.
🚀

Rizky Mardhani

Computer Engineering · FILKOM Universitas Brawijaya