メインコンテンツまでスキップ

サンプル

ドキュメントバージョン: 0.3.6

LCGUdonSharp リポジトリの Example/ には各機能の実行可能な scene と script があります。各 .cs には同じ名前の UdonSharpProgramAsset があり、example .asmdef には別の U# assembly-definition asset が含まれています。

フォルダー内容
AsyncAwaitYield、Delay、string/image/video、GPU readback、serialization、Creator Economy
InterfacesINumberOperation の Add/Multiply 実装
NetworkingNative/LCG lamp、packet field/method、zone moving cube、任意実行の native/LCG high-bandwidth load generator
GenericRestrictionscollection/JSON/binary と、拒否される generic/interface 形状
ExtendedLanguage例外、ref/out、generic、LINQ、dynamic、Span

実行方法​

  1. 他の C# compile error を解決します。
  2. Example/TestLCGUdonSharp.unity を開くか、example component を scene に追加します。
  3. Play Mode に入り Console を確認します。

0.3.6 の Networking prefab​

  • NetworkExamples.prefab は zone 外の native synced lamp、zone 内の LCG packet lamp、LCG sync moving cube を配線済みです。2 client で再入場、late join、owner 退出、current-state snapshot を確認できます。
  • HighBandwidthExamples.prefab は既定で停止している 2 つの load generator を含みます。NativeHighBandwidthExample は Manual [UdonSynced] byte[] を送り、LCGHighBandwidthExample は bounded motion queue で最大 32 個の converted object-sync cube を動かします。
  • LCG dashboard は local sample、local owned object、pending motion、dispatch batch、last batch size を表示します。診断値であり、remote delivery や network throughput の証明ではありません。
  • タイ語の setup と 2-client checklistもあります。

Cross-client delivery、late join、ownership contention、bandwidth、FPS は複数 client の VRChat Build & Test で検証してください。1-player ClientSim で確認できるのは compile、配線、local interaction です。

:::tip 2 種類のアセット 各 U# .cs には同名の program asset が必要です。Assembly-CSharp 以外の .asmdef には U# assembly definition も必要です。それぞれ Assets > Create > U# Script と Assets > Create > U# Assembly Definition で作成できます。 :::