跳到正文
网页珍奇柜Web Curio

8 位音效生成器

jsfxr,Chris McCormick (port of DrPetter's sfxr),2015 年

正在布展…

原作直展:这是 Chris McCormick (port of DrPetter's sfxr) 的原始作品,按 Unlicense(公有领域) 许可证收录(版本 b7b6aa2)。原作页面原样展出,未作任何修改。点左侧的按钮随机生成一段游戏音效。 许可证全文 · 收录说明

它是怎么做的

  1. 第 1 步每个音效是一组约 20 个参数:波形、包络、滑音、颤音、相位器、滤波等
  2. 第 2 步“预设”按钮在合理范围内随机化这组参数
  3. 第 3 步合成器逐样本生成 PCM,再封装成 WAV 数据 URI 播放和导出
  4. 第 4 步参数可以序列化成短字符串,方便在游戏代码里重现

复刻配方

一段技术配方,可以直接交给 AI 编程助手,也可以自己照着写。想指定技术栈、位置和性能预算,就把它加入实现方案。

Represent a sound as a small parameter object: wave shape (square, saw, sine, noise), attack, sustain and decay times, start frequency with slide and delta slide, vibrato, arpeggio, duty sweep, a phaser and low and high pass filters. Write a per-sample synthesis loop that advances these values and outputs PCM into a Float32Array, then play it with an AudioBuffer or encode a WAV for download. Category buttons call randomisers that sample parameters within hand-tuned ranges, and a mutate button jitters the current set slightly.

档案

交互

能不能拿来用

原作以 Unlicense 许可开源:可以阅读源码学习,按许可证条款使用;在自己的项目里引用时保留原作者署名。

性能开销

视觉强度

实现难度

尺度为策展判断(1 到 5),用于比较和推荐。

核实记录:Opened https://sfxr.me (200, title 'jsfxr - 8 bit sound maker and online sfx generator'); repo chr15m/jsfxr exists, licence Unlicense via GitHub API.