2026-05-28

Hey stranger!

初めての方も、しばらく追ってくれている方も、正直なレビューやコメントをもらえると本当に大きな助けになります。

前回のアップデートから、古いモバイル端末やSteam DeckでもDAWGがスムーズに動くことを目標に、パフォーマンス最適化へかなり取り組んでいます。

最適化ではUnity DOTS system、主にBurst compilerとworkersに寄せることにしました。BurstはUnityにおける高性能コードで、native machine codeに変換されるものです。ポイントはRustやAssemblyに近い、bitsの手動メモリ制御です。

このシステムは数値計算にとても合っています。そしてDSP - Digital Signal Processing、つまり実際に音を作る部分は、ほぼ大量の数値計算です=)

初期結果はかなり印象的です。たとえばfull on stress test (全楽器でfull patterns、複数のstabsとsustained notesを8th rowsで使用) では、PCでDSP CPU usageが最大180%でした。stress test中はaudio dropoutsやglitchesなどが多く、通常使用ではまだ大丈夫でも、これは受け入れられません。そこでDSPが十分固まってから、DAWGへのBurst compiler実装を始めました。

Burst compilerだけで、PCのDSP CPU usageは180%から62%へ、Androidでは110%まで下がりました。実際には、高性能コア1つでもaudio stress testを問題やdropoutsなしで動かせるということです。一方で古いhardware (S20 - 2.7 & 2.5 GHz cores) はまだhiccupsがあり、single core performanceが遅すぎてDAWGを1コアで滑らかに動かすのは難しいです。

下の画像で、PC上の通常のC# codeとBurst compilerのdiff.を確認できます。数値はeditorからのものなので、buildではさらに良くなるはずです。workers/jobs追加はまだ完全には終わっていませんが、初期テストではPCのCPU usageがさらに30%下がりました。

Test results
Test results

Androidでの伸びも同じレベルなら、より楽しいもの、Story modeとeditionsの開発を始めるgreen lightになるはずです。

Story modeはDAW coreと同じくらい注意が必要です.....開発を手伝いたい人はいますか?ビジュアルやアートの助け、あるいは将来的なco-foundersも探しています。

コメントをください:D

itch.ioの元Devlog

DAWGを フォロー。

Steamでウィッシュリストに入れて、itch.ioでダウンロードし、開発を追えます。

Steamでウィッシュリスト