asset store なぜなにアセット!

なぜなにアセット!(DOTSNET)

unity asset storeって英語だらけで何書いてあるんだか分かりづらいですよね?

これは人気のアセットはどんなことができるのか?ということをいっしょに学んでみようという企画です!

とりあえずgoogle翻訳で翻訳してざっくりどんなアセットかをいっしょに考えましょう!

今回ご紹介するアセットは

DOTSNET

 

 

DOTSNET-Mirrorの作成者による高性能UnityECSネットワーキング!
(デモ)(フォーラム)(ディスコード)

ECSの知識と正確にUnity2020.1、Entities 0.13.0、Unity.Physics 0.4.1、HybridRenderer0.7.0が必要です。

「情報化時代には、障壁はありません。障壁は自主的に課せられます。出発して、何か壮大な新しいものを開発したいのであれば、何百万ドルもの資本金は必要ありません。あなたはあなたの冷蔵庫に固執するのに十分なピザとダイエットコーラ、作業するための安価なPC、そしてそれをやり遂げるための献身が必要です。私たちは床で寝ました。私たちは川を渡りました。」 ―ジョン・D・カーマック、Masters of Doom

前書き
DOTSNETは、使いやすいWoW / EvEスケールのAAAネットワーキングをUnityにもたらします。

Unityの新しいデータ指向テクノロジースタックを採用したDOTSNETは、比類のない安定性と使いやすさで、数百万のエンティティと数千の接続の両方を処理できます。

作業するのは楽しいです。他のUnityネットワーキングソリューションよりも桁違いに高速で、デフォルトで90%を超えるテストカバレッジが付属しています。

低レベルのトランスポート:
*無関心:Windows / Mac / Linux用のネイティブCTCP
* LiteNetLib:プラットフォームに依存しないUDP
* libuv(実験的):Node.jsで使用される有名なネットワークライブラリ

軽量&モジュラー
DOTSNETはシンプルさを念頭に置いて開発されました。コードのすべての行は非常に注意深く作成されており、すべてのシステムはモジュール式で交換可能です。独自のインタレスト管理、メッセージ処理、ブロードキャスト、トランスポートなどを簡単に実装します。

安定
以前は、ネットワークソリューションの最大の問題点の1つは、検出されないバグと不安定性でした。 DOTSNETには200を超える単体テストと90%を超えるカバレッジがあり、バグの可能性を最小限に抑えます。これはUnityで最もよくテストされたネットワークライブラリであり、Mirrorの50%のテストカバレッジがそれに続きます。さらに、未解決のバグには常に最高の優先順位が与えられます。

DOTSNETの各バージョンには、リリース時に未解決のバグがありません。私はこれを自分のプロジェクトに使用しています。機能する必要があります。

Unityのクライアントとサーバー
DOTSNETはサードパーティのツールを必要としません。 Unityで完全なゲームを開発でき、サーバーとクライアントは大量のコードを共有でき、「#ifUNITY_SERVER」マクロを使用して重要な部分のみをクライアントから除外できます。これにより、生産性が大幅に向上し、ゲームファイルの更新が1ステップのプロセスになります。

メモリ分離ホストモード
UnityのMonoBehaviourワールドには、メモリ分離のないシーン/階層が1つしかないため、ホストモードが非常に困難でした。 DOTSNETを使用すると、サーバーとクライアントはServerWorldとClientWorldで100%分離されます。これは非常にうまく機能するため、DOTSNETはホストモードをサポートするために追加のコードを必要としません。サーバーのみ、クライアントのみ、またはその両方を実行するかどうかにかかわらず、違いはありません。 DOTSNETホストモードでは、クライアントはサーバーに接続するだけで、すべての通信はネットワークを介して行われます。

無関心ネイティブCトランスポート
Apathyは、Unityの最速、最も安定した、最高のスケーリングのネットワークトランスポートです。そのため、すでに何百ものプロジェクトで本番環境で使用されています。ネイティブCで開発され、DOTSNETの極端な要件を処理するために、高性能と最大の安定性のために最適化されています。もちろん、DOTSNETでは他の低レベルのトランスポートを使用することもできます。

100%完全なサーバー権限
MMOネットワーキングに取り組む前に、私は数年間、人気のあるMMORPGのリバースエンジニアリングを行って、それらのメカニズムを理解し、エクスプロイトを開発しました。その結果、DOTSNETは100%サーバーの権限があり、不正行為を防ぐためにクライアントの入力を非常に注意深く検証します。セキュリティバグは48時間以内に修正されます。

デフォルトの並行性
Unityのジョブシステムを利用するDOTSNETを使用すると、マルチスレッドネットワークコードを非常に簡単に記述でき、CPUコアの数に応じてパフォーマンスが直接向上します。

ヘッドレスLinuxモード
サーバーは、レンダリングなしのヘッドレスモードのUbuntu Linuxシステムでも、最大のパフォーマンスを得るために、任意のプラットフォームで実行できます。

利息管理
DOTSNETは、大規模なMMOを念頭に置いて設計されました。全世界の状態をすべての接続に送信する代わりに、プレーヤーは近くのエンティティの更新のみを受信します。インタレストマネジメントシステムは完全に交換可能であるため、ギルドメンバー、歩哨塔、パーティー、部屋などからの更新を受信するように変更できます。さらに、Spatial Hashing、Sweeps、BruteForceなどの任意のタイプのアルゴリズムを実装できます。

割り当て無料
DOTSNET自体は、ホットパスでの割り当てを必要としません。ガベージコレクションがフリーズすることなく、すべてが非常に高速に実行されます。

メッセージパッキング
トランスポートが異なれば、メッセージサイズも異なります。ソケット呼び出しを最小限に抑えるために、DOTSNETは、トランスポートのMaxMessageSizeを尊重しながら、複数のメッセージをより大きなチャンクに自動的にパックします。言い換えると、どのトランスポートを使用しても、DOTSNETが実行されます。

広範なドキュメント
DOTSNETには、頻繁に更新される広範囲にわたる読みやすいGoogleドキュメントのドキュメントが付属しています。 UnityのMonoBehaviourの世界に慣れている場合は、概念の多くが新しいものになります。そのため、すべてが説明されています。

可能な限りシンプルに編集。

期待の管理
DOTSNETは90%を超えるテストカバレッジのおかげで非常に安定していますが、UnityのECSテクノロジーは最先端でプレビュー段階にあることを覚えておくことが重要です。 物事は壊れ、古いプロジェクトは完全に書き直す必要があり、MonoBehaviourの世界が持っているツールの近くにはどこにもありません。

時間をかけて実験し、この新しいテクノロジーに興奮して、UnityのDOTS / ECSフレームワークとともにDOTSNETがうまく成長するのを見てください。 DOTS / ECSはプレビュー中のみかもしれませんが、それは未来であり、MonoBehaviourよりもはるかに優れています。

「すべての販売は最終的なものであり、返金はありません」-アセットストアの条件。

---
このアセットはMITライセンスの下でlibuvを使用しています。 MITライセンスに基づくNetUV; MITライセンスに基づくLiteNetLib; Unityコンパニオンライセンスに基づくUnity.Transport。 詳細については、パッケージ内のサードパーティのNotice.txtファイルを参照してください。

 

MMOを作るのに使うといい感じにできるアセットみたいですね!

-asset store, なぜなにアセット!

© 2021 自作ゲームの世界を広げることで技術力を高める企画サイト Powered by AFFINGER5