Skip to content

Commit 703a13d

Browse files
committed
WIP
1 parent 47224ba commit 703a13d

24 files changed

Lines changed: 3470 additions & 2034 deletions

API.md

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
- [SubtitleManager.IsLocked(): bool](#subtitlemanagerislocked-bool)
1111
- [SubtitleManager.IsPrivilegedUser(): bool](#subtitlemanagerisprivilegeduser-bool)
1212
- [SubtitleManager.IsSyncedURL(): bool](#subtitlemanagerissyncedurl-bool)
13-
- [SubtitleManager.LoadTranslationFile(TextAsset): void](#subtitlemanagerloadtranslationfiletextasset-void)
13+
- [SubtitleManager.LoadStringsFile(TextAsset): void](#subtitlemanagerloadstringsfiletextasset-void)
1414
- [SubtitleManager.ProcessInput(string): void](#subtitlemanagerprocessinputstring-void)
1515
- [SubtitleManager.ProcessURLInput(VRCUrl): void](#subtitlemanagerprocessurlinputvrcurl-void)
1616
- [SubtitleManager.RegisterCallbackReceiver(UdonSharpBehaviour): void](#subtitlemanagerregistercallbackreceiverudonsharpbehaviour-void)
@@ -19,7 +19,9 @@
1919
- [SubtitleManager.SetLocal(bool): void](#subtitlemanagersetlocalbool-void)
2020
- [SubtitleManager.SetLocked(bool): void](#subtitlemanagersetlockedbool-void)
2121
- [SubtitleManager.SetTimeOffset(float): void](#subtitlemanagersettimeoffsetfloat-void)
22+
- [SubtitleManager.SetOverlayHandler(SubtitleOverlayHandler): void](#subtitlemanagersetoverlayhandlersubtitleoverlayhandler-void)
2223
- [SubtitleManager.SetVideoPlayers(BaseVRCVideoPlayer\[\]): void](#subtitlemanagersetvideoplayersbasevrcvideoplayer-void)
24+
- [SubtitleManager.SynchronizeSettings(SubtitleControlHandler|null): void](#subtitlemanagersynchronizesettingssubtitlecontrolhandlernull-void)
2325
- [SubtitleManager.SynchronizeSubtitles(): void](#subtitlemanagersynchronizesubtitles-void)
2426
- [SubtitleManager.UnregisterCallbackReceiver(UdonSharpBehaviour): void](#subtitlemanagerunregistercallbackreceiverudonsharpbehaviour-void)
2527
- [SubtitleControlHandler](#subtitlecontrolhandler)
@@ -99,10 +101,10 @@ Check if URL was synced or not
99101

100102
- If this returns `false` and `SubtitleManager.IsSynchronized()` is `true` then subtitles from pasted text are used
101103

102-
### SubtitleManager.LoadTranslationFile(TextAsset): void
104+
### SubtitleManager.LoadStringsFile(TextAsset): void
103105

104106
Load translation from JSON file (hardcoded status messages only).
105-
You can also assign a file to `SubtitleManager.translationFile` variable in the inspector which will be loaded on start.
107+
You can also assign a file to `SubtitleManager.stringsFile` variable in the inspector which will be loaded on start.
106108
_You will have to use a 3rd-party tool to translate the interface part of the prefab._
107109

108110
<details>
@@ -182,6 +184,7 @@ public class CallbackReceiver : UdonSharpBehaviour
182184
| `OnUSharpVideoSubtitlesLockChange` | Lock state has changed (on/off) |
183185
| `OnUSharpVideoSubtitlesTimeOffsetChange` | Time offset value has changed |
184186
| `OnUSharpVideoSubtitlesVideoPlayerChange` | Video player reference has changed |
187+
| `OnUSharpVideoSubtitlesOverlayChange` | Overlay handler reference has changed |
185188
| `OnUSharpVideoSubtitlesOwnershipChange` | Owner has changed |
186189
| `OnUSharpVideoSubtitlesSettingsUpdate` | User has changed any setting (called by `SubtitleControlHandler` and `SetTimeOffset()`) |
187190

@@ -210,14 +213,23 @@ Change lock state, must be executed by the Master
210213

211214
### SubtitleManager.SetTimeOffset(float): void
212215

213-
Set time offset value
216+
Set time offset value
217+
You should also call `SubtitleManager.SynchronizeSettings()` after to push the changes to the UI
218+
219+
### SubtitleManager.SetOverlayHandler(SubtitleOverlayHandler): void
220+
221+
Set overlay handler to use
214222

215223
### SubtitleManager.SetVideoPlayers(BaseVRCVideoPlayer[]): void
216224

217225
Use this to change the video player references that the subtitles are synced with
218226

219227
- Does nothing when using **USharpVideo**
220228

229+
### SubtitleManager.SynchronizeSettings(SubtitleControlHandler|null): void
230+
231+
Use this to update settings on all connected instances of `SubtitleControlHandler`
232+
221233
### SubtitleManager.SynchronizeSubtitles(): void
222234

223235
Re-synchronizes the subtitles globally, only the person who loaded them can do this (or the master after the synchronization is finished) - this can change when that person leaves the instance or lock state changes - check the `SubtitleManager.gameObject` owner in this case
@@ -254,6 +266,8 @@ Toggle settings popup, use this to show and hide the popup using separate button
254266

255267
### Styling methods
256268

269+
You should call `SubtitleManager.SynchronizeSettings()` after making styling changes on the overlay to push the changes to the UI
270+
257271
<details>
258272
<summary>List of styling methods</summary>
259273

Assets/Dev/Scenes/Dev.unity

Lines changed: 58 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -250,6 +250,24 @@ PrefabInstance:
250250
serializedVersion: 3
251251
m_TransformParent: {fileID: 0}
252252
m_Modifications:
253+
- target: {fileID: 111484359792581272, guid: 87d772cf1b1ec7b49839dde29eb427be,
254+
type: 3}
255+
propertyPath: serializationData.Prefab
256+
value:
257+
objectReference: {fileID: 111484359792581272, guid: 87d772cf1b1ec7b49839dde29eb427be,
258+
type: 3}
259+
- target: {fileID: 167512882263069486, guid: 87d772cf1b1ec7b49839dde29eb427be,
260+
type: 3}
261+
propertyPath: serializationData.Prefab
262+
value:
263+
objectReference: {fileID: 167512882263069486, guid: 87d772cf1b1ec7b49839dde29eb427be,
264+
type: 3}
265+
- target: {fileID: 326682572128547149, guid: 87d772cf1b1ec7b49839dde29eb427be,
266+
type: 3}
267+
propertyPath: serializationData.Prefab
268+
value:
269+
objectReference: {fileID: 326682572128547149, guid: 87d772cf1b1ec7b49839dde29eb427be,
270+
type: 3}
253271
- target: {fileID: 1489345489830993425, guid: 87d772cf1b1ec7b49839dde29eb427be,
254272
type: 3}
255273
propertyPath: serializationData.Prefab
@@ -268,6 +286,12 @@ PrefabInstance:
268286
value:
269287
objectReference: {fileID: 1510979598590794381, guid: 87d772cf1b1ec7b49839dde29eb427be,
270288
type: 3}
289+
- target: {fileID: 1810727917966089325, guid: 87d772cf1b1ec7b49839dde29eb427be,
290+
type: 3}
291+
propertyPath: serializationData.Prefab
292+
value:
293+
objectReference: {fileID: 1810727917966089325, guid: 87d772cf1b1ec7b49839dde29eb427be,
294+
type: 3}
271295
- target: {fileID: 2112516810180698894, guid: 87d772cf1b1ec7b49839dde29eb427be,
272296
type: 3}
273297
propertyPath: serializationData.Prefab
@@ -280,6 +304,12 @@ PrefabInstance:
280304
value:
281305
objectReference: {fileID: 2419341083684189313, guid: 87d772cf1b1ec7b49839dde29eb427be,
282306
type: 3}
307+
- target: {fileID: 2568549077804054833, guid: 87d772cf1b1ec7b49839dde29eb427be,
308+
type: 3}
309+
propertyPath: serializationData.Prefab
310+
value:
311+
objectReference: {fileID: 2568549077804054833, guid: 87d772cf1b1ec7b49839dde29eb427be,
312+
type: 3}
283313
- target: {fileID: 3345750262994555089, guid: 87d772cf1b1ec7b49839dde29eb427be,
284314
type: 3}
285315
propertyPath: serializationData.Prefab
@@ -304,12 +334,30 @@ PrefabInstance:
304334
value:
305335
objectReference: {fileID: 4728275553037696996, guid: 87d772cf1b1ec7b49839dde29eb427be,
306336
type: 3}
337+
- target: {fileID: 4947692714726391607, guid: 87d772cf1b1ec7b49839dde29eb427be,
338+
type: 3}
339+
propertyPath: serializationData.Prefab
340+
value:
341+
objectReference: {fileID: 4947692714726391607, guid: 87d772cf1b1ec7b49839dde29eb427be,
342+
type: 3}
343+
- target: {fileID: 5332430880983690377, guid: 87d772cf1b1ec7b49839dde29eb427be,
344+
type: 3}
345+
propertyPath: serializationData.Prefab
346+
value:
347+
objectReference: {fileID: 5332430880983690377, guid: 87d772cf1b1ec7b49839dde29eb427be,
348+
type: 3}
307349
- target: {fileID: 5485030992997766564, guid: 87d772cf1b1ec7b49839dde29eb427be,
308350
type: 3}
309351
propertyPath: serializationData.Prefab
310352
value:
311353
objectReference: {fileID: 5485030992997766564, guid: 87d772cf1b1ec7b49839dde29eb427be,
312354
type: 3}
355+
- target: {fileID: 6246411837040082669, guid: 87d772cf1b1ec7b49839dde29eb427be,
356+
type: 3}
357+
propertyPath: serializationData.Prefab
358+
value:
359+
objectReference: {fileID: 6246411837040082669, guid: 87d772cf1b1ec7b49839dde29eb427be,
360+
type: 3}
313361
- target: {fileID: 6302534632688150388, guid: 87d772cf1b1ec7b49839dde29eb427be,
314362
type: 3}
315363
propertyPath: serializationData.Prefab
@@ -331,6 +379,11 @@ PrefabInstance:
331379
propertyPath: m_AnchorMin.x
332380
value: 0
333381
objectReference: {fileID: 0}
382+
- target: {fileID: 6421412927428811954, guid: 87d772cf1b1ec7b49839dde29eb427be,
383+
type: 3}
384+
propertyPath: m_OnValueChanged.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
385+
value: VRC.Udon.UdonBehaviour, VRC.Udon
386+
objectReference: {fileID: 0}
334387
- target: {fileID: 6421412927524094469, guid: 87d772cf1b1ec7b49839dde29eb427be,
335388
type: 3}
336389
propertyPath: _syncMethod
@@ -451,6 +504,11 @@ PrefabInstance:
451504
value:
452505
objectReference: {fileID: 11400000, guid: e4a45080602f8a1488567e3d95d9d027,
453506
type: 2}
507+
- target: {fileID: 6421412928540815177, guid: 87d772cf1b1ec7b49839dde29eb427be,
508+
type: 3}
509+
propertyPath: m_OnValueChanged.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
510+
value: VRC.Udon.UdonBehaviour, VRC.Udon
511+
objectReference: {fileID: 0}
454512
- target: {fileID: 6421412928588461830, guid: 87d772cf1b1ec7b49839dde29eb427be,
455513
type: 3}
456514
propertyPath: _syncMethod
@@ -1098,11 +1156,6 @@ PrefabInstance:
10981156
propertyPath: m_LocalEulerAnglesHint.z
10991157
value: 0
11001158
objectReference: {fileID: 0}
1101-
- target: {fileID: 2853267199229678515, guid: 79b0ea249ffa6a54bb5f55191b085d00,
1102-
type: 3}
1103-
propertyPath: debugLogField
1104-
value:
1105-
objectReference: {fileID: 6529114630772651584}
11061159
- target: {fileID: 2853267199229678515, guid: 79b0ea249ffa6a54bb5f55191b085d00,
11071160
type: 3}
11081161
propertyPath: uSharpVideoPlayer
@@ -1974,18 +2027,6 @@ PrefabInstance:
19742027
m_AddedGameObjects: []
19752028
m_AddedComponents: []
19762029
m_SourcePrefab: {fileID: 100100000, guid: a7b438beb9333a54092bcbda3dbb9b54, type: 3}
1977-
--- !u!114 &6529114630772651584 stripped
1978-
MonoBehaviour:
1979-
m_CorrespondingSourceObject: {fileID: 8790337563628456349, guid: a7b438beb9333a54092bcbda3dbb9b54,
1980-
type: 3}
1981-
m_PrefabInstance: {fileID: 3973345647330268174}
1982-
m_PrefabAsset: {fileID: 0}
1983-
m_GameObject: {fileID: 0}
1984-
m_Enabled: 1
1985-
m_EditorHideFlags: 0
1986-
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
1987-
m_Name:
1988-
m_EditorClassIdentifier:
19892030
--- !u!114 &6759095421024464057
19902031
MonoBehaviour:
19912032
m_ObjectHideFlags: 0

0 commit comments

Comments
 (0)