shot sounds sounds like toy #150

Closed
opened 2026-08-29 12:00:04 +00:00 by metaheavens · 1 comment
Owner
No description provided.
Author
Owner

Done in 9cf032c. Both fair, and the synthesis is rewritten rather than tuned, because the shape was the problem.

The shot was a bare descending sine - which is the sound every toy ray gun has ever made. The ship death was one band of filtered noise with a sine under it: thin, and over before the eye had finished with the explosion.

What the rewrite adds, and why each part is there:

  • Layers, not a waveform. A bang is a crack, then a body, then a tail, and they have different lengths. One envelope over one source cannot be any of those. The explosions now run three clocks: the crack is done in a fifth of the length, the roar runs most of it, and sparse debris keeps falling afterwards so there is an aftermath rather than a stop.
  • A sub. Below about 80Hz is where "big" lives; without it an explosion is a hiss however loud you play it. Measured: 74% of a ship death's energy and 86% of a structure's now sits under 200Hz, against almost none before.
  • Saturation. Soft-clipping folds in harmonics, so a sound reads as loud rather than merely being loud - and stops the peak normalisation flattening everything into the same quiet mush.
  • Detuned partials on the shot. Three of them at deliberately wrong ratios beat against each other and read as a mechanism; the single sine was the whole of the toy problem. A noise transient and a sub thump underneath give it something to hit with.

Lengths went up with the weight: ship death 0.85s -> 1.45s, structure 1.6s -> 2.3s, both audible to the end rather than gone in the first third.

All of it is still audio/make_sfx.py, so if any of these is now too much it is a number and a re-run. And the CC0 packs listed on #146 remain a drop-in if you would rather have recorded sounds - Sfx.gd does not care which.

Done in `9cf032c`. Both fair, and the synthesis is rewritten rather than tuned, because the *shape* was the problem. The shot was a bare descending sine - which is the sound every toy ray gun has ever made. The ship death was one band of filtered noise with a sine under it: thin, and over before the eye had finished with the explosion. What the rewrite adds, and why each part is there: - **Layers, not a waveform.** A bang is a crack, then a body, then a tail, and they have different lengths. One envelope over one source cannot be any of those. The explosions now run three clocks: the crack is done in a fifth of the length, the roar runs most of it, and sparse debris keeps falling afterwards so there is an aftermath rather than a stop. - **A sub.** Below about 80Hz is where "big" lives; without it an explosion is a hiss however loud you play it. Measured: **74%** of a ship death's energy and **86%** of a structure's now sits under 200Hz, against almost none before. - **Saturation.** Soft-clipping folds in harmonics, so a sound reads as loud rather than merely being loud - and stops the peak normalisation flattening everything into the same quiet mush. - **Detuned partials on the shot.** Three of them at deliberately wrong ratios beat against each other and read as a mechanism; the single sine was the whole of the toy problem. A noise transient and a sub thump underneath give it something to hit with. Lengths went up with the weight: ship death 0.85s -> 1.45s, structure 1.6s -> 2.3s, both audible to the end rather than gone in the first third. All of it is still `audio/make_sfx.py`, so if any of these is now too much it is a number and a re-run. And the CC0 packs listed on #146 remain a drop-in if you would rather have recorded sounds - `Sfx.gd` does not care which.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
metaheavens/spaceship#150
No description provided.