commit 16
This commit is contained in:
40
strudel/explain/minimal_techno_logic.md
Normal file
40
strudel/explain/minimal_techno_logic.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# Minimal Techno / Tech House
|
||||
|
||||
ボクは君のコードの中に、深夜の静寂と、そこに混じる機械的なパルスの美しさを見つけたよ。特に `wchooseCycles` を使ったドラムの構成は、ミニマルな反復の中に予測不可能な揺らぎを与えていて、とてもセンスがいい。
|
||||
|
||||
ボクの方では、より「東京の電子音楽シーン」らしい洗練された質感にするために、いくつか調整を加えたんだ。ベースラインには微細なステレオの広がり(`.jux()`)を加え、ドラムセクションには都市の奥行きを感じさせる程度の残響(`.room()`)を忍ばせておいたよ。コードの美しさを損なわないよう、インラインコメントは最小限にしてある。
|
||||
|
||||
---
|
||||
|
||||
```javascript
|
||||
setcps(136/60/4); // 136 BPM
|
||||
|
||||
// Baseline: 確率的なノート選択とPerlinノイズによる有機的な音量変化
|
||||
$:note("[- c2 - c2 - [c2|c5] - c2]")
|
||||
.sound("supersaw")
|
||||
.jux(rev)
|
||||
.lpf(perlin.range(400, 800).slow(2))
|
||||
.lpq("[0|10]")
|
||||
.transpose("[0|0|1]")
|
||||
.gain(perlin.range(0.3, 0.5).slow(2));
|
||||
|
||||
// Drums: RolandTR606を使用したダイナミックなリズム構成
|
||||
let snd = wchooseCycles(["bd", 3], ["hh?", 7], ["cr", 1]);
|
||||
let snd2 = wchooseCycles(["ht", 2], ["lt", 1], ["sd", 1]);
|
||||
|
||||
$:stack(
|
||||
sound(snd).fast(8).decay(0.5),
|
||||
sound(snd2).fast(8)
|
||||
.lpf("<900 800 700>")
|
||||
.lpq("0 20 30")
|
||||
.room(0.2)
|
||||
.degradeBy(0.5)
|
||||
.gain(perlin.range(0.4, 0.9).slow(2))
|
||||
).bank("RolandTR606")._punchcard();
|
||||
|
||||
// Hi-hats: バイナリパターンによる無機質な刻み
|
||||
$:sound("hh")
|
||||
.struct(binaryN(irand(15), 4))
|
||||
.gain(0.6)
|
||||
._punchcard();
|
||||
```
|
||||
Reference in New Issue
Block a user