Programming in VRChat

VRChat でのプログラミングについて調べたことの書き溜め

VRChat SDK ファイル単位 差分 VRCSDK-2018.08.03.20.15_Public

注意:これは open-beta 段階で 2018/8/7 に調査した結果です。

Old: VRCSDK-2018.06.21.13.02_Public
New: VRCSDK-2018.08.03.20.15_Public
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/Editor/AccountEditorWindow.cs
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/Editor/DLLMaker.dll
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/Editor/VRC_SyncVideoPlayerEditor.cs
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/Editor/VRC_SyncVideoStreamEditor.cs
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/Scripts/AvatarValidation.cs
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/Scripts/RuntimeAPICreation.cs
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/VRCCore-Editor.dll
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/VRCCore-Standalone.dll
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Dependencies/VRChat/VRCSDK2.dll
Only in VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Examples/Sample Assets/Editor
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Examples/Sample Assets/Materials/Screen.mat
Only in VRCSDK-2018.06.21.13.02_Public/Assets/VRCSDK/Examples/Sample Assets/Shaders/Video-EmissiveGamma.shader
Only in VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Examples/Sample Assets/Shaders/Video-RealtimeEmissiveGamma.shader
Only in VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Examples/Scenes/Example-YouTubeSearch.unity
Only in VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/Prefabs/WorldVRCYouTubeSearch.prefab
Differ  VRCSDK-2018.08.03.20.15_Public/Assets/VRCSDK/version.txt
  • AccountEditorWindow.cs
    • ログアウト時の情報残り不具合修正
    • 表示レイアウトの改善
    • API デバッグ用らしき、呼び出しのログ設定追加
  • VRC_SyncVideoPlayerEditor.cs

    • MaxStreamQuality の追加
  • VRC_SyncVideoStreamEditor.cs

    • MaxStreamQuality の追加
    • videoTextureFormat の追加
      • 選択肢は Byte, Half, Float
  • Screen.mat

    • シェーダが Unlit/Texture から VRC SDK 内の Video/RealtimeEmissiveGamma に変更
  • ShadersVideo-EmissiveGamma.shader, ShadersVideo-RealtimeEmissiveGamma.shader

    • Video/EmissiveGamma から Video/RealtimeEmissiveGamma に改名
    • 適用した Material の globalIlluminationFlags が RealtimeEmissive になるように
    • _EmissionScale_Emission に改名
  • ScenesExample-YouTubeSearch.unity, WorldVRCYouTubeSearch.prefab

    • VRCYouTubeSearch プレハブ追加
    • (サーチだけでなく以前は無かった VRC_SyncVideoStream を利用するセットになっている)
    • RPC ShowSearch() が VRC_SyncVideoStream に追加された
    • ShowSearch() の実行は次のような流れのようだ
      1. CoherentUI(つまりWebブラウザ)が開かれ、
      2. 検索文字列入力すると YouTube の検索APIを叩く
      3. 結果が返ってきたらサムネイルなどと共に結果表示
      4. 表示に埋め込まれた videoスキームのリンクを選択すると VRC_SyncVideoStream へ反映 CoherentUI を閉じる
    • {VRChatインストールフォルダ}/VRChat_Data/StreamingAssets/vrcwebroot/video-search を参照
      • duckduckgo.com で検索するものも入っているが、使われうるのか不明)
  • VRC_SyncVideoPlayer, VRC_SyncVideoStream ともに

    • RPC SetMaxQuality(float quality) 追加
    • (エディタには変更なし。汎用の RPC 編集でカバーされている)
    • 720 という数値で 720p のクオリティまでに制限するのだろう(実際の動作は未確認)