1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Unity ECS(DOTS)を使って音ゲーのシステムを作って公開した話

Last updated at Posted at 2023-11-27

はじめに

背景なので飛ばしてもらって構いません。

作るに至った経緯としては今作っている音ゲーの問題点として音ゲー中に動的に譜面をロードするのですがその際に致命的なスパイクが発生しプレイに大きな支障がでます。
これを解決するためにEntityComponentSystemに目を付けて作成しました。
これが今作っている音ゲーです。
https://ddrive-develop.fanbox.cc/posts/6451393

そしてせっかく作るからには公開してしまおうと考えて今に至ります。

Github

作ったものはここで公開しています。
EntitiesRhythmGameSystem
image.png

動作動画はこちら

環境

制作環境

  • Windows10
  • Unity 2022.3.7f1

必須ライブラリ

以下ライブラリに依存しているため使用時は入れてください。

準備

  1. Githubからunitypackageをダウンロード後上記ライブラリを導入後にインポート
  2. GeneratorのDJBM(独自形式の譜面ファイル)Pathをフルパスに変更
  3. 再生

仕様

ざっくりシステムの流れはこうなっています。
Monoは通常のUnity側,ECSはEntities側としています。
詳しいドキュメントはGithubのDocumentsフォルダ内にあるhtmlを見てください。
音ゲーざっくり.png

音ゲー

レーンは2レーン(変更可)
判定はMiss,Good,Perfectの三種類(変更可)
変更する場合はGameSettings.csを変更しプログラムの修正をしてください。

ノーツはシングルノーツとロングノーツのみ
ロングノーツは終点判定アリ

入力

DFJKキーがそれぞれ左から1,2,3,4レーンで使えます。
押し入力と離し入力を拾っています。
オート設定アリ

譜面読み込み

現在は独自形式の譜面を読み込んでいます。そのまま使う人はサンプルを真似して使ってください。
記述方法はサンプルファイルにあります。

最後に

初めてECSで作ったシステムのため拙い部分はあると思いますが作ることができてよかったです。
何か質問等があれば気軽にどうぞ!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?