Update
This commit is contained in:
parent
2a3b06eb67
commit
3abdc93103
17 changed files with 160 additions and 24 deletions
|
@ -40,7 +40,7 @@ Now we can just start experimenting and invent new music by fiddling with the fo
|
|||
|
||||
General tips/tricks and observations are these:
|
||||
|
||||
- Outputting the variable `i` creates a periodical saw-shaped beat, **multiplication/division decreases/increases the speed, addition/substraction shifts the phase backward/forward**.
|
||||
- Outputting the variable `i` creates a periodical saw-shaped beat, **multiplication/division decreases/increases the speed, addition/subtraction shifts the phase backward/forward**.
|
||||
- Squaring (and other powers) create a **wah-wah effect**.
|
||||
- Crazier patterns can be achieved by **using the variable in places of numerical constants**, e.g. `i << ((i / 512) % 8)` (shifting by a value that depends on the variable).
|
||||
- Modulo (`%`) increases the frequency and **decreases volume** (limits the wave peak).
|
||||
|
@ -65,4 +65,4 @@ The following more complex examples come from the [LRS](lrs.md) game [Anarch](an
|
|||
|
||||
- distortion guitar rhythmical beat: `~((((i >> ((i >> 2) % 32)) | (i >> ((i >> 5) % 32))) & 0x12) << 1) | (i >> 11)`
|
||||
- electronic/techno: `((0x47 >> ((i >> 9) % 32)) & (i >> (i % 32))) | (0x57 >> ((i >> 7) % 32)) | (0x06 >> ((i >> ((((i * 11) >> 14) & 0x0e) % 32)) % 32))`
|
||||
- main theme, uses an extra variable: `(((i) & 65536) ? (a & (((i * 2) >> 16) & 0x09)) : ~a)`, where `uint32_t a = ((i >> 7) | (i >> 9) | (~i << 1) | i)`
|
||||
- main theme, uses an extra variable: `(((i) & 65536) ? (a & (((i * 2) >> 16) & 0x09)) : ~a)`, where `uint32_t a = ((i >> 7) | (i >> 9) | (~i << 1) | i)`
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue