実践編
実践エクササイズ
ここまで学んだテクニックを使って、実際にビートを作ってみましょう。 各エクササイズは難易度順に並んでいます。
基本のロックビート
最も基本的なビートパターンを作成してください。
課題
- ・BPM: 120
- ・キック: 1拍目と3拍目
- ・スネア: 2拍目と4拍目
- ・ハイハット: 8分音符で刻む
解答を見る
bpm 120
pattern rock {
kick: [x . . . x . . . | x . . . x . . .]
snare: [. . . . x . . . | . . . . x . . .]
hihat: [x . x . x . x . | x . x . x . x .]
}
play rock * 4
試す
シンコペーションを加える
基本のビートにシンコペーション(裏拍のキック)を加えてください。
課題
- ・BPM: 100
- ・キックに裏拍を追加(4番目と7番目の位置)
- ・スウィングを0.1に設定
解答を見る
bpm 100
swing 0.1
pattern syncopated {
kick: [x . . x . . x . | x . . x . . x .]
snare: [. . . . x . . . | . . . . x . . .]
hihat: [x . x . x . x . | x . x . x . x .]
}
play syncopated * 4
試す
ゴーストノートを入れる
スネアにゴーストノートを追加して、グルーヴィーなビートを作ってください。
課題
- ・BPM: 95、スウィング: 0.15
- ・メインスネアは2拍目と4拍目(ベロシティ1.0)
- ・ゴーストノートを3つ以上追加(ベロシティ0.3)
解答を見る
bpm 95
swing 0.15
pattern groovy {
kick: [x . . . x . . . | x . . . x . . .]
snare: [. . x[0.3] . X . x[0.3] . | . x[0.3] . . X . x[0.3] .]
hihat: [x . x . x . x . | x . x . x . x .]
}
play groovy * 4
試す
トラップビートを作る
サブディビジョンを使ったトラップスタイルのビートを作成してください。
課題
- ・BPM: 145
- ・ハーフタイムのスネア(1小節に1回)
- ・ハイハットにサブディビジョン(2分割、3分割を混ぜる)
- ・エフェクト: キックにdistort、ハイハットにhpf
解答を見る
bpm 145
pattern trap {
kick: [x . . . . . . x | . . x . . . x .]
> distort(0.1)
snare: [. . . . . . . . | x . . . . . . .]
> reverb(0.3)
hihat: [{x x} . x . {x x x} . {x x} . | x . {x x} . {x x x} . x .]
> hpf(6000)
}
play trap * 4
試す
ローファイビートを作る
ビットクラッシュとフィルターを使ったローファイスタイルのビートを作成してください。
課題
- ・BPM: 85、スウィング: 0.15
- ・キックにbitcrush(6)とlpf(500)
- ・スネアにbitcrush(5)とreverb
- ・ハイハットにhpfとpan
解答を見る
bpm 85
swing 0.15
pattern lofi_beat {
kick: [x . . . . . x . | . . x . . . . .]
> bitcrush(6) > lpf(500)
snare: [. . . . x . . . | . . . . x . . x[0.5]]
> bitcrush(5) > reverb(0.4, 0.5)
hihat: [x . x . x . x . | x . x . x . x .]
> hpf(4000) > pan(0.3) > gain(0.8)
}
play lofi_beat * 4
試す
オートメーションでビルドアップ
BPMとエフェクトのオートメーションを使って、盛り上がるビルドアップを作成してください。
課題
- ・BPM を 120 から 140 へ 8小節かけて変化
- ・exponential カーブを使用
- ・ハイハットのフィルターを徐々に開く(lpf: 2000 → 8000)
解答を見る
// オートメーションを使ったビルドアップ
bpm 120 -> 140 over 8 bars exponential
pattern buildup {
kick: [x . . . x . . . | x . . . x . . .]
snare: [. . . . x . . . | . . . . x . . .]
hihat: [x . x . x . x . | x . x . x . x .]
> lpf(2000 -> 8000 over 8 bars)
}
play buildup * 8
試す
条件分岐とランダムを使う
repeat, every, random()を使って、動的なビートを作成してください。
課題
- ・メインパターンを8回繰り返す(repeat 8)
- ・2回ごとにフィルを入れる(every 2)
- ・フィルをランダムに2種類から選ぶ(if random() > 0.5)
解答を見る
bpm 128
pattern main {
kick: [x . . . x . . .]
snare: [. . . . x . . .]
hihat: [x . x . x . x .]
}
pattern fill_a {
snare: [x x x x]
}
pattern fill_b {
tom: [x . x . x . x x]
}
// 8回繰り返し、2回ごとにランダムなフィルを挿入
repeat 8 {
play main
every 2 {
if random() > 0.5 {
play fill_a
} else {
play fill_b
}
}
}
試す
フルトラックを構成する
イントロ、メイン、ブレイク、アウトロのある完全なトラックを作成してください。
課題
- ・好きなジャンル(ハウス、ヒップホップなど)を選ぶ
- ・4つ以上のパターンを作成
- ・引き算テクニックを使う(ブレイクでキックを抜くなど)
- ・合計32小節以上の構成
解答例を見る(ハウスの場合)
bpm 124
// イントロ - キックとハイハットのみ
pattern intro {
kick: [x . . . x . . . | x . . . x . . .]
hihat: [. . x . . . x . | . . x . . . x .]
}
// メイン - フル編成
pattern main {
kick: [x . . . x . . . | x . . . x . . .]
clap: [. . . . x . . . | . . . . x . . .]
hihat: [. . x . . . x . | . . x . . . x .]
oh: [. . . . . . . x | . . . . . . . x]
}
// ブレイク - キックを抜いて浮遊感
pattern break_section {
clap: [. . . . x . . . | . . . . x . . .]
> reverb(0.5, 0.7)
hihat: [x . x . x . x . | x . x . x . x .]
> hpf(8000) > reverb(0.3)
}
// ビルドアップ
pattern buildup {
kick: [x . x . x . x . | x x x x x x x x]
clap: [. . . . x . . . | x . x . x x x x]
hihat: [x x x x x x x x | {x x} {x x} {x x} {x x} {x x} {x x} {x x} {x x}]
}
// アウトロ - フェードアウト
pattern outro {
kick: [x . . . x . . . | x . . . . . . .]
hihat: [. . x . . . x . | . . x . . . . .]
> reverb(0.6)
}
// 構成
play intro * 4
play main * 8
play break_section * 4
play buildup * 2
play main * 8
play outro * 4
試す
スキルアップのためのヒント
- 好きな曲のビートを耳コピして再現してみる
- 同じパターンでBPMを変えてみる(印象の違いを確認)
- スウィング量を極端に変えてみる(0.0 vs 0.5)
- エフェクトを1つずつオン/オフして効果を確認
- 毎日1つ新しいビートを作る習慣をつける
ライブコーディング
kickstartには、リアルタイムでコードを書きながら音楽を演奏できる ライブコーディング機能があります。 Sonic PiやTidalCyclesのように、音楽を「演奏」することができます。
Watchモード
ファイルを編集しながら、保存するたびに自動的に新しいパターンが反映されます。 お好みのエディタ(VSCode、Vim、Emacsなど)を使えます。
試してみよう
my-beat.kickファイルを作成- ターミナルで
kickstart watch my-beat.kickを実行 - エディタでファイルを開き、以下のコードを入力して保存:
bpm 120
pattern main { kick: [x . . . x . . .] }
play main * 4 - 音が鳴り始めます!パターンを変更して保存すると、次のループから反映されます
Ctrl+Cで終了
REPLモード
対話的にコードを入力して、すぐに結果を聴けるモードです。 アイデアの素早いスケッチや実験に最適です。
REPLを試す
# REPLモードを起動
kickstart repl
# REPLが起動したら、以下を順番に入力:
kickstart> bpm 120
kickstart> pattern main { kick: [x . . . x . . .] }
kickstart> play main * 4 // ← 再生開始!
# パターンを変更すると、次のループから反映される
kickstart> pattern main { kick: [x . x . x . x .] }
# トラックをミュートする
kickstart> mute kick
# ソロにする(他のトラックをミュート)
kickstart> solo hihat
# 停止
kickstart> stop
# 終了
kickstart> exit 便利なREPLコマンド
再生制御
stop- 再生を停止status- 現在の状態を確認patterns- パターン一覧
トラック制御
mute <track>- ミュートunmute- 全解除solo <track>- ソロ
ライブコーディングのTips
- パースエラーがあっても、再生は継続される(安心して実験できる)
- 同名のパターンを再定義すると自動的に上書きされる
- 変更は次のループの頭から適用される(音が途切れない)
mute/soloでトラックを分離してデバッグ- ライブパフォーマンスの練習にも使える!
次のステップ
おめでとうございます!このチュートリアルで、ゼロからプロレベルのビートメイクまでの道のりを学びました。
このチュートリアルで学んだこと
- BPM、ビート、小節の基礎知識
- キック、スネア、ハイハットの役割
- 基本的なビートの組み立て方
- エフェクトによる音の加工
- 条件分岐(if/else)とループ(repeat/every)
- グルーヴ、スウィング、シンコペーション
- ダイナミクスとゴーストノート
- 7つのジャンル別ビートパターン
- 曲構成とミキシングの基礎
- random()を使ったバリエーション生成
Playgroundで実践
学んだテクニックを使って、オリジナルビートを作成しましょう。
ドキュメント
全機能のリファレンスとAPIドキュメントを確認できます。
GitHub
ソースコードの確認、Issue報告、コントリビュートができます。
プロへの道:継続的な練習のススメ
- 1. 毎日15分 - 毎日短時間でもビートを作る習慣をつける
- 2. 耳を鍛える - 好きな曲のドラムパターンを分析・再現する
- 3. 制限を設ける - 「キックとスネアだけ」など制限をつけて創造性を高める
- 4. 共有する - 作ったビートを友人やコミュニティでシェアしてフィードバックをもらう
- 5. ジャンルを広げる - 普段聴かないジャンルにも挑戦して引き出しを増やす
さあ、あなただけのビートを作り始めましょう!
Playgroundを開く