Skip to content

Commit

Permalink
Merge pull request #40 from vrctxl/dev
Browse files Browse the repository at this point in the history
Dev
  • Loading branch information
jaquadro authored Mar 29, 2024
2 parents 9592312 + 16673cf commit 888fd30
Show file tree
Hide file tree
Showing 26 changed files with 2,346 additions and 1,660 deletions.
68 changes: 0 additions & 68 deletions .github/workflows/build-listing.yml

This file was deleted.

7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# Changelog

## [2.4.3] - 03-28-24

- Min CommonTXL version 1.5.0
- Added DependentSource prefab and GameObject menu option
- Added event logging option to Video Manager
- Changed event logging behavior in SyncPlayer, AudioManager, ScreenManager

## [2.4.2] - 03-27-24

- Added DependentSource component for linking a Local Video Player to another video player
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ public class AudioManagerInspector : Editor
UdonBehaviour audioLinkCache;
UdonBehaviour vrslAudioDmxRuntimeCache;

bool expandDebug = false;
static bool expandDebug = false;

int groupCount = 0;
int avproAudiolinkCount = 0;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,13 @@ public class VideoManagerInspector : Editor
SerializedProperty debugLogProperty;
SerializedProperty debugStateProperty;
SerializedProperty debugLoggingProperty;
SerializedProperty eventLoggingProperty;

DateTime lastValidate;
bool audioValid = true;

static bool expandDebug = false;

private void OnEnable()
{
videoPlayerProperty = serializedObject.FindProperty(nameof(VideoManager.videoPlayer));
Expand All @@ -32,6 +35,7 @@ private void OnEnable()
debugLogProperty = serializedObject.FindProperty(nameof(VideoManager.debugLog));
debugStateProperty = serializedObject.FindProperty(nameof(VideoManager.debugState));
debugLoggingProperty = serializedObject.FindProperty(nameof(VideoManager.debugLogging));
eventLoggingProperty = serializedObject.FindProperty(nameof(VideoManager.eventLogging));

Revalidate();
}
Expand All @@ -48,6 +52,9 @@ public override void OnInspectorGUI()
if (UdonSharpGUI.DrawDefaultUdonSharpBehaviourHeader(target))
return;

GUIStyle boldFoldoutStyle = new GUIStyle(EditorStyles.foldout);
boldFoldoutStyle.fontStyle = FontStyle.Bold;

VideoManager videoManager = (VideoManager)serializedObject.targetObject;
TXLVideoPlayer videoPlayer = (TXLVideoPlayer)videoPlayerProperty.objectReferenceValue;

Expand Down Expand Up @@ -84,14 +91,6 @@ public override void OnInspectorGUI()
EditorGUI.indentLevel--;
}

//EditorGUILayout.Space();
//EditorGUILayout.PropertyField(sourcesProperty, new GUIContent("Sources", "The list of available video sources."));

//List<VideoSource> unitySources = VideoComponentUpdater.GetVideoSources(videoManager, VideoSource.VIDEO_SOURCE_UNITY);
//List<VideoSource> avproSources = VideoComponentUpdater.GetVideoSources(videoManager, VideoSource.VIDEO_SOURCE_AVPRO);
//if (unitySources.Count == 0 && avproSources.Count == 0)
// EditorGUILayout.HelpBox("No video sources are defined. Video playback will not work until at least one video source is added. Check documentation linked above for information on adding new video sources, or use another version of the video player prefab that includes sources.", MessageType.Warning);

EditorGUILayout.Space();
EditorGUILayout.LabelField("Audio", EditorStyles.boldLabel);
if (!audioValid)
Expand All @@ -105,10 +104,14 @@ public override void OnInspectorGUI()
}

EditorGUILayout.Space();
EditorGUILayout.LabelField("Debug Options", EditorStyles.boldLabel);
EditorGUILayout.PropertyField(debugLogProperty, new GUIContent("Debug Log", "Log debug statements to a world object"));
EditorGUILayout.PropertyField(debugStateProperty, new GUIContent("Debug State", "Track periodically refreshed internal state in a world object"));
EditorGUILayout.PropertyField(debugLoggingProperty, new GUIContent("VRC Logging", "Write out video player events to VRChat log."));
expandDebug = EditorGUILayout.Foldout(expandDebug, "Debug Options", true, boldFoldoutStyle);
if (expandDebug)
{
EditorGUILayout.PropertyField(debugLogProperty, new GUIContent("Debug Log", "Log debug statements to a world object"));
EditorGUILayout.PropertyField(debugStateProperty, new GUIContent("Debug State", "Track periodically refreshed internal state in a world object"));
EditorGUILayout.PropertyField(eventLoggingProperty, new GUIContent("Include Events", "Include additional event traffic in debug log"));
EditorGUILayout.PropertyField(debugLoggingProperty, new GUIContent("VRC Logging", "Write out video player events to VRChat log."));
}

serializedObject.ApplyModifiedProperties();
}
Expand Down
16 changes: 15 additions & 1 deletion Packages/com.texelsaur.video/Editor/VideoTxlManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -480,7 +480,21 @@ public static void AddUrlRemapperToScene()
MenuUtil.AddPrefabToScene("Packages/com.texelsaur.video/Runtime/Prefabs/Component/URL Remapper.prefab");
}

[MenuItem("GameObject/TXL/VideoTXL/Components/Sync Playback Zone", false, 252)]
[MenuItem("GameObject/TXL/VideoTXL/Components/Dependent Source", false, 252)]
public static void AddDependentSourceToScene()
{
TXLVideoPlayer vp = GetVideoPlayer();
if (vp)
{
GameObject playlistObj = MenuUtil.AddPrefabToObject("Packages/com.texelsaur.video/Runtime/Prefabs/Component/Dependent Source.prefab", vp.transform);
if (vp is LocalPlayer && ((LocalPlayer)vp).urlRemapper == null)
((LocalPlayer)vp).dependentSource = playlistObj.GetComponent<DependentSource>();
}
else
MenuUtil.AddPrefabToScene("Packages/com.texelsaur.video/Runtime/Prefabs/Component/Dependent Source.prefab");
}

[MenuItem("GameObject/TXL/VideoTXL/Components/Sync Playback Zone", false, 253)]
public static void AddSyncPlaybackZoneToScene()
{
TXLVideoPlayer vp = GetVideoPlayer();
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &2478711627004162155
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 761076600929593106}
- component: {fileID: 5623022530114926960}
- component: {fileID: 173320765820508344}
m_Layer: 0
m_Name: Dependent Source
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &761076600929593106
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2478711627004162155}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &5623022530114926960
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2478711627004162155}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b4262d22fa178094bbdb426641063f9c, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
SerializedFormat: 2
SerializedBytes:
ReferencedUnityObjects: []
SerializedBytesString:
Prefab: {fileID: 0}
PrefabModificationsReferencedUnityObjects: []
PrefabModifications: []
SerializationNodes: []
_udonSharpBackingUdonBehaviour: {fileID: 173320765820508344}
primaryVideoPlayer: {fileID: 0}
primaryUrls: []
dependentUrls: []
--- !u!114 &173320765820508344
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2478711627004162155}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 45115577ef41a5b4ca741ed302693907, type: 3}
m_Name:
m_EditorClassIdentifier:
interactTextPlacement: {fileID: 0}
interactText: Use
interactTextGO: {fileID: 0}
proximity: 2
SynchronizePosition: 0
AllowCollisionOwnershipTransfer: 0
Reliable: 0
_syncMethod: 1
serializedProgramAsset: {fileID: 11400000, guid: c4da10a2fcbf2ef43a499fcdca12ae50,
type: 2}
programSource: {fileID: 11400000, guid: c616df865137d78498ef7d6d7fb05e54, type: 2}
serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgEAAAAAAAAAAi8CAAAAAUkAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAUwB5AHMAdABlAG0ALgBJAG4AdAAzADIALAAgAG0AcwBjAG8AcgBsAGkAYgBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAAIAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAR8AAABfAF8AXwBVAGQAbwBuAFMAaABhAHIAcABCAGUAaABhAHYAaQBvAHUAcgBWAGUAcgBzAGkAbwBuAF8AXwBfACcBBAAAAHQAeQBwAGUAARYAAABTAHkAcwB0AGUAbQAuAEkAbgB0ADMAMgAsACAAbQBzAGMAbwByAGwAaQBiABcBBQAAAFYAYQBsAHUAZQACAAAABwUHBQcF
publicVariablesUnityEngineObjects: []
publicVariablesSerializationDataFormat: 0

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 888fd30

Please sign in to comment.