ユニティ・テクノロジーズ・ジャパン、DOTSの一部「Unity ECS」を活用した最適化について動画で解説。6.70msの処理を0.07msに短縮

ユニティ・テクノロジーズ・ジャパン、DOTSの一部「Unity ECS」を活用した最適化について動画で解説。6.70msの処理を0.07msに短縮

2023.07.31
ニュースUnity
この記事をシェア!
Twitter Facebook LINE B!
Twitter Facebook LINE B!

この記事の3行まとめ

  • Unity ECSの最適化手法を解説する動画がYouTubeに公開
  • ユニティ・テクノロジーズ・ジャパンによるECSチュートリアル動画の第2弾
  • 動画で使用されているサンプルプロジェクトもGitHubにて公開

2023年7月24日、ユニティ・テクノロジーズ・ジャパンは『Unity ECS で高速化!とりあえずキャラを 5,000 体出してみよう!』と題した動画をYouTubeに公開しました。

本動画は、2023年5月30日リリースの「Unity 2022 LTS」で正式に実装された、Entity Component System(以下、ECS)における最適化手法について、サンプルプロジェクトを用いて解説しています。

ユニティ・テクノロジーズ・ジャパンによるECSのチュートリアル動画は今回で2つ目。前回の動画では、ECSの概要や、従来の設計との相違点などを紹介しました。

関連記事
ユニティ・テクノロジーズ・ジャパンがUnity ECSの解説動画を公開。データと処理を分離する、データ指向型のフレームワークをどう使うか
2023.07.04

今回公開された動画では、ECSを活用して5,000体の人形の生成処理およびアップデート処理の最適化方法を解説しています。

動画の前半では、5,000体の人形インスタンスを生成する処理の最適化について解説。

生成処理は「SpawnSystem」のOnUpdateメソッドで実行されるよう実装しています。そこで、OnUpdateBurstCompileアトリビュートを付けることで、3.23msかかっていた生成処理を0.559msにまで短縮できたとのこと。

メソッド定義の前に[BurstCompile]を付けることでBurstCompileが適用される(画像は『Unity ECS で高速化!とりあえずキャラを 5,000 体出してみよう!』より引用)

なお、BurstCompileはマネージドクラスを使っていないなどの制約を満たしたメソッドにのみ使用できます。

動画後半では、各人形のアップデート処理を最適化する手法が紹介されています。

アップデート処理では、BurstCompileに加え、C# Job Systemを使って、処理の並列化を実装。

元のコード(左)とC# Job Systemを使った処理の並列化後のコード(右)(画像は『Unity ECS で高速化!とりあえずキャラを 5,000 体出してみよう!』より引用)

これにより、元々6.70msかかっていた処理を、0.07msにまで高速化しています。

(画像は『Unity ECS で高速化!とりあえずキャラを 5,000 体出してみよう!』より引用)

動画では、コードの内容や各機能の使用条件などについて詳細に解説しています。動画はこちらをご確認ください。

また、動画で使用されたサンプルプロジェクト「ECS-StrawmanParallel」は、GitHubにて公開されています。

Unity ECS で高速化!とりあえずキャラを 5,000 体出してみよう!|YouTubekeijiro / ECS-StrawmanParallel|GitHub

関連記事

ホロライブ・白上フブキさんが主役のアクションゲーム『FUBUKI』はどのように作られた?開発者とパブリッシャーにインタビュー
2025.07.04
Unity・UEなどでアニメを作るハッカソン「アニメ×ゲームジャム UE in 京都」、7/26(土)より開催。参加申込は7/21(月)18時まで
2025.07.01
Unity 6の最新レンダリング機能を駆使したMMORPG『Pantheon: Rise of the Fallen』開発者インタビュー、Unity公式ブログで公開
2025.06.30
Unity 6.1のレンダリング最適化機能を一挙紹介。「Project Auditor」正式対応や、GPUパフォーマンスを向上する「Deferred+」など
2025.06.27
Unity 6.2 Beta最新バージョン「Unity 6000.2.0b7」リリース。ユーザー端末から実行中アプリのパフォーマンス状況を情報収集・診断が可能に
2025.06.27
UE5.6/Unity 6で作った“同じゲーム”の実装を比較できる。無料サンプルプロジェクト『Parrot Game Sample』、Epic Games協力のもとリリース
2025.06.25

注目記事ランキング

2025.06.27 - 2025.07.04
VIEW MORE

連載・特集ピックアップ

イベントカレンダー

VIEW MORE

今日の用語

ローパスフィルター(Low-Pass Filter)
ローパスフィルター
  1. 電気信号のうち、指定した周波数(カットオフ周波数)以下の信号を通し、それより上を大きく低減させるフィルター。
  2. ゲーム開発において、基本的にはサウンド用語として用いられる。例として、特定のセリフをローパスフィルターによってくぐもった音に加工することで、隣の部屋や遮蔽物の後ろで話しているかのような表現を行うことができる。
VIEW MORE

Xで最新情報をチェック!