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

2023.07.04
ニュースUnity
この記事をシェア!
twitter facebook line B!
twitter facebook line B!

この記事の3行まとめ

  • Unity ECSの機能を解説する動画がYouTubeに公開
  • データ指向型の設計により、従来のオブジェクト指向型よりも高速な処理を可能に
  • 動画で使用されているサンプルプロジェクトも公開

2023年7月3日、ユニティ・テクノロジーズ・ジャパンは『はじめての Unity ECS – Entity Component System を使ってみよう!』と題した動画をYouTubeに公開しました。

本動画は、2023年5月30日リリースの「Unity 2022 LTS」で正式に実装された、Entity Component System(以下、ECS)の仕組みや従来の設計との違いを、サンプルプロジェクトを用いて解説しています。

関連記事
Unity Technologies、「Unity 2022 LTS」をリリース!2025年半ばまでのサポートを保証
2023.06.01

ECSは、データ指向型のソフトウェアアーキテクチャの一種で、従来のUnityが基づいているオブジェクト指向型の設計よりも高速な処理を可能にします。

Unityにおける従来の設計では、1つのオブジェクトは、基本的な機能をもつGameObjectクラスと、機能を追加するための、データと処理を含むコンポーネントで構成されます。

一方、ECSに基づく設計では、ほとんど機能を持たないEntity構造体に加え、データのみを管理するコンポーネントと、処理のみを管理するSystemクラスによって構成されます。

従来のUnityのクラス設計(画像は『はじめての Unity ECS – Entity Component System を使ってみよう!』より引用)

ECSのクラス設計(画像は『はじめての Unity ECS – Entity Component System を使ってみよう!』より引用)

ECSに基づく設計ではデータと処理が分離しているため、メモリ内にデータをより効率的に配置でき、メモリアクセス速度が向上します。

従来のUnityでは、メモリ上にデータがバラバラに配置される(画像は『はじめての Unity ECS – Entity Component System を使ってみよう!』より引用)

ECSでは、メモリがアクセスしやすいようにデータを配置できる(画像は『はじめての Unity ECS – Entity Component System を使ってみよう!』より引用)

動画では、サンプルプロジェクトの説明を通して、ECSにおけるコンポーネントとSystemの実装方針について解説。そのほか、従来のコンポーネント群をECSに則したコンポーネントに変換する「SubScene」にも触れています。

なお、動画で使用したサンプルプロジェクト『ECS-Strawman』は、GitHubにて公開されています。

また、Unity Technologiesが制作したECSのサンプルプロジェクトはこちらData-Oriented Technology StackDOTS)(※)のデモプロジェクト『Megacityこちらからダウンロード可能です。
Burst CompilerC# Job SystemECS for Unityなどを含む、データ指向型の技術スタック

『Megacity』(画像はGitHubより引用)

はじめての Unity ECS - Entity Component System を使ってみよう!|YouTubekeijiro / ECS-Strawman|GitHub

関連記事

PLATEAU、3D都市モデルを使った位置情報共有ゲームをつくるチュートリアル記事を公開。ゲームの制作から、サーバーの準備、アプリの配信まで詳細に解説
2024.03.01
UnityのURPを解説した無料の公式電子書籍がアップデート。デカールや「Fullscreen Shader Graph」などのセクションを追加
2024.02.23
「Steam Audio」がオープンソース化。UnityやUEに統合できる、ゲームやVRアプリ用の空間オーディオツール
2024.02.22
Shader Graphに対応したUnity UIについて、ユニティ・テクノロジーズ・ジャパンが紹介動画を公開
2024.02.21
国土交通省が主導する「PLATEAU」、Unity向けSDKを使ったサンプルプロジェクト『Urban Scape』を公開。時間や天気の変更も可能な3D都市ビューワーアプリを作成可能
2024.02.15
ユニティ・テクノロジーズ・ジャパン、GitHubで『Project_TCC v.1.0.0』を公開。キャラクターを制御するシステムやゲーム開発をサポートする機能が詰まったツール
2024.02.14

注目記事ランキング

2024.02.27 - 2024.03.05
1
『フォートナイト』で動く本格的なゲームが作れるツール「UEFN」とは?従来のクリエイティブモードから進化したポイントを一挙紹介!
2
【CHALLENGE1】「クリエイター ポータル」を使って、UEFNで作成した島を世界中に公開する
3
【2022年5月版】今から始めるフォートナイトの「クリエイティブ」モードープレイ開始から基本的な操作方法まで解説
4
UEFNで使えるプログラミング言語「Verse」のノウハウが集結。『UEFN.Tokyo 勉強会 03 Verse Night』レポート
5
フォートナイト クリエイティブとUEFNで使える仕掛け一覧
6
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.1「アイテム系」
7
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.5「島の設定」
8
フォートナイトとUEFNがv28.30にアップデート。「NPCスポナー」が、スポーン・撃破時のエフェクトや移動速度のカスタマイズに対応
9
【STEP2】UEFNの基本的な使い方を覚えよう
10
【CHALLENGE2-1】フレンドと一緒にゲームを作ろう――UEFNプロジェクトをチームメンバーとリアルタイムで共同編集する
11
【STEP1】「UEFN」を入手しよう
12
まるで『マイクラ』?ボクセル地形を生み出す無料アセット「VoxelPlugin Free」で”地形を掘ったり積み重ねたり”して遊んでみよう
13
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.4「ゲームシステム系」
14
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.7「NPC系」Part1
15
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.2「ユーティリティ系」
16
フルカラー書籍「UEFN(Unreal Editor For Fortnite)でゲームづくりを始めよう!」、ついに本日発売!全国書店で好評発売中!
17
【CHALLENGE3】UEFNの機能「ランドスケープ」を使ってオリジナルの地形を作る
18
NIKEのAir Maxをテーマにしたフォートナイトの島『Airphoria』、制作に関するチュートリアルが公開
19
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.10「UI系」Part1
20
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.10「UI系」Part2
21
『フォートナイト』で建築ビジュアライゼーション!?UEFNでオリジナルの世界観をどう作り上げたか、その手法を解説【UNREAL FEST 2023 TOKYO】
22
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.6「チーム・対戦系」Part1
23
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.3「プレイヤー系」
24
フォートナイト クリエイティブとUEFNで使える仕掛け一覧 Vol.7「NPC系」Part2
25
フォートナイトとUEFNがv26.30にアップデート。ロビー画面が一新され、クリエイターが島ごとにロビー背景を自由にカスタムできるように
26
【STEP6-1】「オリジナルキャラクターを登場させよう」――Fabでアセットをダウンロードしよう
27
「UEFN」って実際どうなの? 編集部が3時間で「みんなで遊べるアクションゲーム(?)」を作ってみた
28
【STEP4-1】コース外に出たらデスする仕組みを作る
29
【STEP4-2】リスポーンとチェックポイントの仕組みを作る
30
【STEP5-1】スタート時のカウントダウンを作る
VIEW MORE

イベントカレンダー

VIEW MORE

今日の用語

レンダリング(Rendering)
レンダリング コンピューターグラフィックスにおける、各種データ(3Dモデルなど)をプログラムを用いて計算し、画像として表示すること。レンダリングを行うプログラムをレンダラー(Renderer)と呼ぶ。
VIEW MORE

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