Unity でデータ指向設計の学習を開始するためのリソース

スケーラビリティを維持しながらパフォーマンスを最適化することは、複数のプラットフォームでゲームを成功させるために欠かせません。Data-Oriented Technology Stack(DOTS)は、より複雑で野心的な体験を幅広い種類のデバイスを使用するプレイヤーに提供できるため、ゲームチェンジャーとなり得ます。しかし、オブジェクト指向からデータ指向設計を使用したアプローチに移行することは、経験豊富なプログラマーにとっても調整が必要になるでしょう。
このリーディングリストは、Unity でデータ指向設計を始める人の役に立つようまとめられたものです。教育用動画チュートリアルから、刺激的なカスタマーストーリーまで含まれるこれらのリソースは、DOTS での開発を開始するための実践的なインサイトやガイダンスを提供します。
早速、DOTS 学習リソースをまとめたリストを見ていきましょう。
ECS samples:Entities、Netcode、Physics、HDRP グラフィックス、URP グラフィックスをカバーした、GitHub の DOTS サンプルプロジェクトで手を動かしながら学びましょう。
Character controller samples:ECS を使用して、歩行やジャンプなどの一般的なキャラクターの動きやキャラクター衝突を設定しましょう。
ECS Network Racing sample:このレーシングゲームのサンプルは、Unity Netcode for Entities のベストプラクティスを示しています。
Firefighters sample:以前 Unity の社内トレーニングで使用されていたこのプロジェクトは、今後予定されている DOTS ブートキャンプの中核となります。このゲームオブジェクトベースのプロジェクトを参考にして、DOTS コンポーネントでパフォーマンスを向上させましょう。
Megacity Multiplayer: 現在公開中のこの三人称マルチプレイヤーアクションデモは、64 人以上のプレイヤーをサポートしています。ECS for Unity とマルチプレイヤーソリューションを使用した野心的なゲームの構築方法について、詳しく学びましょう。
Megacity Metro:Megacity Metro は、大規模な同時接続性を誇るクロスプラットフォームデモで、Netcode for Entities パッケージなどの当社の最新テクノロジーが使用されています。
Entities:このパッケージは、データ指向設計に沿った ECS アークテクチャの実装手段を提供します。
Entities Graphics:このパッケージには、ECS エンティティをレンダリングするためのシステムやコンポーネントが含まれています。
Netcode for Entities:このパッケージは、マルチプレイヤーゲームで使用されるクライアント予測を備えたサーバー権威型フレームワークを提供します。
Unity の公式ドキュメントページでは、Entities、Unity Physics、Netcode for Entities の概要など、DOTS のコアコンポーネントの基礎を理解することができます。
DOTS のベストプラクティス:この 2 時間の上級者向けコースは、ECS に焦点を当てています。DOTS パッケージを使用して書かれたコードでランタイムパフォーマンスを向上させる方法を学びましょう。
Physics for ECS: 当社の 2 つのエンティティベースの物理ソリューションである、Havok Physics for Unity と Unity Physics の使い分けを理解しましょう。
Basics of DOTS:DOTS の基礎を学び、データ指向設計での実装や、よりパフォーマンスの高いアプリケーションの作成方法を身につけましょう。3 つのサンプルスクリプトに従って、Jobs System と Entities を使い始めることができます。
Get acquainted with DOTS:中級開発者向けの 3 つのチュートリアルで、開発者やそのチームが DOTS 学習の初期段階で直面する可能性のある一般的な疑問を取り上げています。
Data-oriented design bootcamp:当社の最新のコミュニティ学習イベントでの全 4 回のセッションを録画で振り返ります。
Unity フォーラム:ECS for Unity サブフォーラム(Entity Component System、 Graphics for ECS、 Netcode For ECS、Physics for ECS)でデータ指向設計について他の開発者と議論し、抱えている疑問への回答を得ましょう。
Discord:公式の Unity Discord に参加して、ECS のコンセプトや、Burst、Jobs、Netcode for GameObjects などについてリアルタイムで開発者とチャットしましょう。
Unity Twitch:Made with Unity ゲームの舞台裏を覗き見ましょう。DOTS ストリームでは、『Bare Butt Boxing』『V Rising』『Ship of Fools』『Zenith:The Last City』、一番最近では『Cataclismo』などを取り上げています。
Unity Insiders:Turbo Makes Games や Code Monkey、Taro Dev などのコミュニティのクリエイターをフォローし、データ指向設計に関する教育コンテンツを視聴しましょう。
Zenith:The Last City:Ramen VR が野心的な VR MMO の開発にあたり、Entities を活用してスケールを拡大し、レート制限を回避した方法をご覧ください。
V Rising:Stunlock Studios がデータ指向テクノロジーを使って広大なオープンワールドを構築した方法をご覧ください。
Bare Butt Boxing:Tuatara Games が、マルチプレイヤーゲームのアーリーアクセス版に、DOTS を使用してモジュラーソフトウェアアーキテクチャを構築した方法を学びましょう。
HEROish:この GDC での講演では、Sunblink Entertainment の Justin Larrabee 氏が、ECS を活用して成功するモバイルアドベンチャーゲームの構築について語ります。
DOTS roundtable:Stunlock Studios の Rasmus Höök 氏と Sunblink Entertainment の Justin Larrabee 氏が Unity の Andrew Parsons と Joe Valenzuela と共に、Unity 2022 LTS での Entities の使用方法について語ります。
Entities 1.0 がリリースされた今、今後の DOTS の進展が気になりますか。詳しくは、Unity フォーラムのスレッド、DOTS development and next milestones をご確認ください。
スケーラブルでハイパフォーマンスなゲームと忘れられない体験の創造を可能にする DOTS で、野心的なゲームを作成しましょう。Unity 2022 LTS を使用して、最新機能にアクセスしましょう。