見出し画像

自動作曲もできる8ビット風サウンド専用DAW「Pyxel Composer」を作った

ブラウザ版

デスクトップ版(itch.io)

チュートリアル動画

特徴

  • ファミコンのような(厳密にはちょっと違う)パルス波 or 三角波を使った3チャンネル+ノイズ1チャンネルによる4音でのサウンド制作ソフト

  • わかりやすいピアノロール画面、Undo/Redoなど標準的な編集機能を装備

  • マウス・PCキーボード・MIDIキーボードによる打ち込みが可能(リアルタイム録音も)

  • 自動作曲機能あり

  • WAVファイル・MIDIファイル・Pyxel用MMLファイル・MP4(動画)ファイルの出力が可能

  • デスクトップアプリ版のみ、音色エディットが可能


8ビット(風)サウンドは今日においてもファミコン・ゲームボーイ世代の思い出に強く残っていたり、そうでなくてもチップチューンに惹かれる人がいたり、また実際に8ビット風ゲームを作ったりする人もいるので、一定のニーズがあり続けると考えています。

Magical 8bit plug / ファミシンセのようなソフトシンセを使って一般的なDAW(Cubase, Logicなど)で打ち込む、FamiStudio / FamiTrackerのような専用ツールで制作するといった方法がありますが、本ツールは「ブラウザでセットアップ不要ですぐに使える」「オリジナルの自動作曲機能がある」という点が他と比べた長所になると思います。

自動作曲機能について

このタイミングで「自動作曲機能」とか言うと「LLMでAIにでも作らせてんのか?」とか思われるかもしれません。
そうではなく、この機能は自分で自動作曲の仕組みを1から考えて制作しています。

詳しくはこちら。
この頃はAIがここまで躍進するとは思っていなかったので、ネタっぽく「AI作曲?」などとタイトルに入れてしまっています。

Pyxel Composerの自動作曲は「8bit BGM Generator」よりちょっと進化していて、自分でコード進行を指定することもできるようになりました。
よく使われるコード進行、お気に入りの曲で使われているコード進行を調べて設定すれば、似た雰囲気の曲が作れるかもしれません。

UIが最低限なのでちょっと使い方がわかりにくいかもしれませんが、このあたりはユーザーの方のご意見もお聞きしつつ将来的にバージョンアップしていければと。

カスタムコード編集機能

制作の経緯や感想

さて、以降は全て「なんで作ろうと思ったか」「どういう制作アプローチにしたか」といった制作目線の話になります。
なので、Pyxel Composerって何?どんなツールなの?という興味でこの記事を開いてくださった方には興味のない話になることをお断りしておきます。

Pyxelと出会う

自分は2016〜2018年ごろにDTMの専門学校に通ったりボカロPをやったりしていたのですが、音楽制作の沼はあまりに深く、そのうち子供が産まれたり人付き合いに疲れたりして作曲をやめました。

その後また少し日常に余裕が生まれて、もとからITエンジニアだったり学生のころにもゲーム制作を趣味でやっていたこともあって、ファミコン時代くらいのゲームを作って遊びたいなと思うようになりました。

絵を描ける人なら架空のゲーム画面を描いて遊んだりしていたかもしれませんが(実際Xでたまに見かけます)、昔から絵心がないので、じゃあ制作予定はないけどファミコンっぽいゲームの曲でも作るか、と思ってFamiStudioを見つけて作曲してみたりしていました。

そうするとやっぱり実際にゲームが作りたくなってきて、いいゲームエンジンとかないかな、とか思って探しているうちにPyxelを発見します。

Pyxelが何より気に入ったのは、8ビット風サウンド(パルス波・三角波・ノイズなど)をアトミックに扱えるサウンドAPIが存在していたことです。

8Bit BGM GeneratorとPyxel Tracker 

Pyxelを使うようになっていくつか習作を発表したりしているうちに、自分のようにサウンド方面からPyxelに着目する人はまれで、ドット絵を描いてコードを書くことはできてもサウンド面では苦労する人が多そうだなということに気が付きます。
(無音だったり、単音で「聖者の行進」がBGMとして流れたりするゲームをいくつか見ました。)

そこで、8ビット風サウンドが大好き+音楽理論をある程度わかっている+プログラムもそこそこ書ける自分であればそういう人の役に立てるツールを作れるかもな、と思って制作したのがこのソフトの前身「8Bit BGM Generator」です。

すごいニッチなゾーンの話ですが、想像どおり一部の方にはこのツールは重宝したそうで、Xやらitch.ioやらふりーむやらで、「8Bit BGM Generator」を使って制作してくださった作品をちらほら見かけるようになりました。

一方、自分自身は「8Bit BGM Generator」は使う必要がなく、Pyxelのサウンドを最大限に活用しつつ効率的が打ち込みがしたかったので「Pyxel Tracker」なるツールを作って、自作ゲーム(Dungeon Antiquaや三国ヒストリア)のBGM制作をしていました。

Pyxel Trackerは↓のような画面で、とりあえず自分が使えればいいという思想で制作しています。
一応ヘルプ機能とかもありますが、一般の人からするとかなり使いづらいはずです。
(そもそもローカルでPyxelが使える環境でないと動かなかったりもする。)

Pyxel Tracker

というわけで「8Bit BGM Generator」だけだと限られたパターンの曲しか作れないし、「Pyxel Tracker」は全然ユーザーフレンドリーじゃない、ということで、良いとこ取りの音楽制作環境が用意できればなあと思うようになりました。

Pyxel Composerへ

2つのツールを作ったころ2023年ごろから、「自動作曲も使えて、自分で打ち込みできる統合版がほしい」「気軽に触ってもらえるようにしたいから、やっぱりブラウザ版があると便利」といった構想があったのですが、ゲーム本体のほうを作るのに忙しく(というか両方やる気力がない)、長いことほったらかしにしていました。

が、2025年末あたりから急にAIコーディング力がすさまじいことになって、自分は今年(2026年)の3月ごろから真面目に使い始めたのですが、「あ、これならそんなに気合い入れなくてもツール制作できるかもしれん」と思うようになりました。

そうしてこの「自分は要件だけ決めて、AIコーディングで統合版=Pyxel Composerを作ろう」という計画が実現するに至りました。

AIコーディングのメリット・デメリット

やってみて思いましたが、「要件がはっきりしていること」の実装はめちゃくちゃ強かったです。

たとえば、「Pyxelのサウンドエンジンを使ってブラウザで音を鳴らして」「スコア表示できるようにして」「動画エクスポートできるようにして」なんかは人が0から作ろうとするとまあまあしんどいです。(少なくとも自分の技術レベルでは。)

それと、「8Bit BGM Generatorを移植して」みたいな、単純移植なのでできないことはないけどかなりめんどくさいし間違えそう、みたいな作業も向いていますね。

一方で操作感やUIの細かい調整は、これを作った2026年3~4月ごろのClaude Codeだとまだ微妙に気が効かない印象、というか作っている私の感覚に依存するところが大きいので性能の問題ではないかもしれませんが、「もうちょっとこのパーツは上に詰めて、いやいやそれはやりすぎ。あとこのボタンの角は丸いほうがいい、それからここで急にスクロールするの変」みたいなもどかしい注文を限りなく繰り返すことになりました。

あとはそもそもデザインが無機質というか無個性なのは否めないですね。
国産の8ビットサウンド特化タイプの先駆者製品といえば「Lovery Composer」「Piroro」なんかがありますが、2つともそれぞれデザインに特徴があって映えます。

最初にイメージを提示してそのイメージに沿ったデザインにさせる、とかはできるはずなので、これも単に私のセンスの問題かもしれません。

Lovery Composer。かわいい!
Piroro。おしゃれ!

ともあれ、長らく心に引っかかってたことが実現できて自分としては良かったです。
今後もゆっくり育てて、より強力で魅力的な制作ツールに成長させていきたいですね。

いいなと思ったら応援しよう!