Working on Depthkit samples

depthkit_samples
Nadine Ganz 2024-05-15 13:18:09 +02:00
parent c32b0a1a11
commit d373f6d402
95 changed files with 21693 additions and 17764 deletions

View File

@ -1,17 +0,0 @@
Tree("Root") {
Composite(Race) {
Composite(Sequence) {
// Scene 1
BTC.GetKeyDown("Tab")
BTC.Run("LoadScene.26Castello")
BTC.Show("GO.STATIC")
BTC.Run("LoadScene.43Gletschergarten")
}
Composite(Sequence) {
// Scene 2
BTC.GetKeyDown("Space")
BTC.Run("LoadScene.43Gletschergarten")
}
}
}

View File

@ -2,7 +2,7 @@
Composite(Sequence) {
Composite (Marathon) {
RunTree("Fading_Bush")
RunTree("Play_Depthkit")
// RunTree("Play_Depthkit")
}
Composite(Race) {
Composite(Sequence) {

View File

@ -1,6 +1,7 @@
fileFormatVersion: 2
guid: 8191570f3842146deb888062074b4d7c
TextScriptImporter:
guid: cb4c321f66cc9498dbf47c55b576b1ce
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8e951343000f41f4994e0e36b383bd08
timeCreated: 1499765480
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 89ec3eb5642c0f84d9f5090b2ca93a14
folderAsset: yes
timeCreated: 1490191884
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 01cfeabdfa5f36740b2b9c9658bbb29e
timeCreated: 1490191896
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 5f5e3cf7f402b7b40894a67f55fad9ce
folderAsset: yes
timeCreated: 1496914998
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 01cfda49307e46248bd868ab09d47ace
folderAsset: yes
timeCreated: 1496915000
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,33 @@
using UnityEditor;
using UnityEngine;
using UnityEngine.Playables;
[CustomPropertyDrawer(typeof(LightControlBehaviour))]
public class LightControlDrawer : PropertyDrawer
{
public override float GetPropertyHeight (SerializedProperty property, GUIContent label)
{
int fieldCount = 4;
return fieldCount * EditorGUIUtility.singleLineHeight;
}
public override void OnGUI (Rect position, SerializedProperty property, GUIContent label)
{
SerializedProperty colorProp = property.FindPropertyRelative("color");
SerializedProperty intensityProp = property.FindPropertyRelative("intensity");
SerializedProperty bounceIntensityProp = property.FindPropertyRelative("bounceIntensity");
SerializedProperty rangeProp = property.FindPropertyRelative("range");
Rect singleFieldRect = new Rect(position.x, position.y, position.width, EditorGUIUtility.singleLineHeight);
EditorGUI.PropertyField(singleFieldRect, colorProp);
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
EditorGUI.PropertyField(singleFieldRect, intensityProp);
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
EditorGUI.PropertyField(singleFieldRect, bounceIntensityProp);
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
EditorGUI.PropertyField(singleFieldRect, rangeProp);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: a217f65052ddf094ba45e737b2428b1c
timeCreated: 1496915002
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,13 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class LightControlBehaviour : PlayableBehaviour
{
public Color color = Color.white;
public float intensity = 1f;
public float bounceIntensity = 1f;
public float range = 10f;
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 7e7c747bf1731824682c539494feba37
timeCreated: 1496915002
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class LightControlClip : PlayableAsset, ITimelineClipAsset
{
public LightControlBehaviour template = new LightControlBehaviour ();
public ClipCaps clipCaps
{
get { return ClipCaps.Blending; }
}
public override Playable CreatePlayable (PlayableGraph graph, GameObject owner)
{
var playable = ScriptPlayable<LightControlBehaviour>.Create (graph, template);
return playable; }
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 23b46759ef7b0fd4bb74d73bf4d2839b
timeCreated: 1496915002
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,81 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
public class LightControlMixerBehaviour : PlayableBehaviour
{
Color m_DefaultColor;
float m_DefaultIntensity;
float m_DefaultBounceIntensity;
float m_DefaultRange;
Light m_TrackBinding;
bool m_FirstFrameHappened;
public override void ProcessFrame(Playable playable, FrameData info, object playerData)
{
m_TrackBinding = playerData as Light;
if (m_TrackBinding == null)
return;
if (!m_FirstFrameHappened)
{
m_DefaultColor = m_TrackBinding.color;
m_DefaultIntensity = m_TrackBinding.intensity;
m_DefaultBounceIntensity = m_TrackBinding.bounceIntensity;
m_DefaultRange = m_TrackBinding.range;
m_FirstFrameHappened = true;
}
int inputCount = playable.GetInputCount ();
Color blendedColor = Color.clear;
float blendedIntensity = 0f;
float blendedBounceIntensity = 0f;
float blendedRange = 0f;
float totalWeight = 0f;
float greatestWeight = 0f;
int currentInputs = 0;
for (int i = 0; i < inputCount; i++)
{
float inputWeight = playable.GetInputWeight(i);
ScriptPlayable<LightControlBehaviour> inputPlayable = (ScriptPlayable<LightControlBehaviour>)playable.GetInput(i);
LightControlBehaviour input = inputPlayable.GetBehaviour ();
blendedColor += input.color * inputWeight;
blendedIntensity += input.intensity * inputWeight;
blendedBounceIntensity += input.bounceIntensity * inputWeight;
blendedRange += input.range * inputWeight;
totalWeight += inputWeight;
if (inputWeight > greatestWeight)
{
greatestWeight = inputWeight;
}
if (!Mathf.Approximately (inputWeight, 0f))
currentInputs++;
}
m_TrackBinding.color = blendedColor + m_DefaultColor * (1f - totalWeight);
m_TrackBinding.intensity = blendedIntensity + m_DefaultIntensity * (1f - totalWeight);
m_TrackBinding.bounceIntensity = blendedBounceIntensity + m_DefaultBounceIntensity * (1f - totalWeight);
m_TrackBinding.range = blendedRange + m_DefaultRange * (1f - totalWeight);
}
public override void OnPlayableDestroy (Playable playable)
{
m_FirstFrameHappened = false;
if(m_TrackBinding == null)
return;
m_TrackBinding.color = m_DefaultColor;
m_TrackBinding.intensity = m_DefaultIntensity;
m_TrackBinding.bounceIntensity = m_DefaultBounceIntensity;
m_TrackBinding.range = m_DefaultRange;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: b6ddd7db188548f49bf8d55102e62b63
timeCreated: 1496915002
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,29 @@
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using System.Collections.Generic;
[TrackColor(0.9454092f, 0.9779412f, 0.3883002f)]
[TrackClipType(typeof(LightControlClip))]
[TrackBindingType(typeof(Light))]
public class LightControlTrack : TrackAsset
{
public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
{
return ScriptPlayable<LightControlMixerBehaviour>.Create (graph, inputCount);
}
public override void GatherProperties(PlayableDirector director, IPropertyCollector driver)
{
#if UNITY_EDITOR
Light trackBinding = director.GetGenericBinding(this) as Light;
if (trackBinding == null)
return;
driver.AddFromName<Light>(trackBinding.gameObject, "m_Color");
driver.AddFromName<Light>(trackBinding.gameObject, "m_Intensity");
driver.AddFromName<Light>(trackBinding.gameObject, "m_Range");
driver.AddFromName<Light>(trackBinding.gameObject, "m_BounceIntensity");
#endif
base.GatherProperties(director, driver);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: e97b7684a1a63ed42afa5e89e962140f
timeCreated: 1496915002
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 93b4d74e1158a4d48914db94fc4e87c9
folderAsset: yes
timeCreated: 1492603101
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,16 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class NavMeshAgentControlBehaviour : PlayableBehaviour
{
public Transform destination;
public bool destinationSet;
public override void OnPlayableCreate (Playable playable)
{
destinationSet = false;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 05bbdc6a3b254694e8d1e2d9d55cd256
timeCreated: 1492603101
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,25 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class NavMeshAgentControlClip : PlayableAsset, ITimelineClipAsset
{
public ExposedReference<Transform> destination;
[HideInInspector]
public NavMeshAgentControlBehaviour template = new NavMeshAgentControlBehaviour ();
public ClipCaps clipCaps
{
get { return ClipCaps.None; }
}
public override Playable CreatePlayable (PlayableGraph graph, GameObject owner)
{
var playable = ScriptPlayable<NavMeshAgentControlBehaviour>.Create (graph, template);
NavMeshAgentControlBehaviour clone = playable.GetBehaviour ();
clone.destination = destination.Resolve (graph.GetResolver ());
return playable;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: cfedc374dca69334db907af09ba5c404
timeCreated: 1492603101
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,34 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using UnityEngine.AI;
public class NavMeshAgentControlMixerBehaviour : PlayableBehaviour
{
public override void ProcessFrame(Playable playable, FrameData info, object playerData)
{
NavMeshAgent trackBinding = playerData as NavMeshAgent;
if (!trackBinding)
return;
int inputCount = playable.GetInputCount();
for (int i = 0; i < inputCount; i++)
{
float inputWeight = playable.GetInputWeight(i);
ScriptPlayable<NavMeshAgentControlBehaviour> inputPlayable = (ScriptPlayable<NavMeshAgentControlBehaviour>)playable.GetInput(i);
NavMeshAgentControlBehaviour input = inputPlayable.GetBehaviour();
if (inputWeight > 0.5f && !input.destinationSet && input.destination)
{
if (!trackBinding.isOnNavMesh)
continue;
trackBinding.SetDestination (input.destination.position);
input.destinationSet = true;
}
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: a3805dde487857b41b2fff7d26f06f1e
timeCreated: 1492603101
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,15 @@
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using UnityEngine.AI;
[TrackColor(0.855f, 0.8623f, 0.87f)]
[TrackClipType(typeof(NavMeshAgentControlClip))]
[TrackBindingType(typeof(NavMeshAgent))]
public class NavMeshAgentControlTrack : TrackAsset
{
public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
{
return ScriptPlayable<NavMeshAgentControlMixerBehaviour>.Create (graph, inputCount);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: d201ca921ed322e418c25df03740a308
timeCreated: 1492603101
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 1482b2b9e18dc0a43baf3c92d0cd7156
folderAsset: yes
timeCreated: 1496916559
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: b53f46f9af38aef4c8014c759eae0bd9
folderAsset: yes
timeCreated: 1496916561
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
using UnityEditor;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.UI;
[CustomPropertyDrawer(typeof(ScreenFaderBehaviour))]
public class ScreenFaderDrawer : PropertyDrawer
{
public override float GetPropertyHeight (SerializedProperty property, GUIContent label)
{
int fieldCount = 1;
return fieldCount * EditorGUIUtility.singleLineHeight;
}
public override void OnGUI (Rect position, SerializedProperty property, GUIContent label)
{
SerializedProperty colorProp = property.FindPropertyRelative("color");
Rect singleFieldRect = new Rect(position.x, position.y, position.width, EditorGUIUtility.singleLineHeight);
EditorGUI.PropertyField(singleFieldRect, colorProp);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 7075b31fb4bae504f8480419ce90246f
timeCreated: 1496916563
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,11 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using UnityEngine.UI;
[Serializable]
public class ScreenFaderBehaviour : PlayableBehaviour
{
public Color color = Color.black;
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 4cf88cabc4dadeb4fafeefdbc61869ca
timeCreated: 1496916563
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class ScreenFaderClip : PlayableAsset, ITimelineClipAsset
{
public ScreenFaderBehaviour template = new ScreenFaderBehaviour ();
public ClipCaps clipCaps
{
get { return ClipCaps.Blending; }
}
public override Playable CreatePlayable (PlayableGraph graph, GameObject owner)
{
var playable = ScriptPlayable<ScreenFaderBehaviour>.Create (graph, template);
return playable; }
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 0445258a5c40b364ab21547784905327
timeCreated: 1496916563
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,64 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using UnityEngine.UI;
public class ScreenFaderMixerBehaviour : PlayableBehaviour
{
Color m_DefaultColor;
Image m_TrackBinding;
bool m_FirstFrameHappened;
public override void ProcessFrame(Playable playable, FrameData info, object playerData)
{
m_TrackBinding = playerData as Image;
if (m_TrackBinding == null)
return;
if (!m_FirstFrameHappened)
{
m_DefaultColor = m_TrackBinding.color;
m_FirstFrameHappened = true;
}
int inputCount = playable.GetInputCount ();
Color blendedColor = Color.clear;
float totalWeight = 0f;
float greatestWeight = 0f;
int currentInputs = 0;
for (int i = 0; i < inputCount; i++)
{
float inputWeight = playable.GetInputWeight(i);
ScriptPlayable<ScreenFaderBehaviour> inputPlayable = (ScriptPlayable<ScreenFaderBehaviour>)playable.GetInput(i);
ScreenFaderBehaviour input = inputPlayable.GetBehaviour ();
blendedColor += input.color * inputWeight;
totalWeight += inputWeight;
if (inputWeight > greatestWeight)
{
greatestWeight = inputWeight;
}
if (!Mathf.Approximately (inputWeight, 0f))
currentInputs++;
}
m_TrackBinding.color = blendedColor + m_DefaultColor * (1f - totalWeight);
}
public override void OnPlayableDestroy (Playable playable)
{
m_FirstFrameHappened = false;
if (m_TrackBinding == null)
return;
m_TrackBinding.color = m_DefaultColor;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 88173aff48b4ccb429d83dca32d03a86
timeCreated: 1496916563
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,36 @@
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using System.Collections.Generic;
using UnityEngine.UI;
[TrackColor(0.875f, 0.5944853f, 0.1737132f)]
[TrackClipType(typeof(ScreenFaderClip))]
[TrackBindingType(typeof(Image))]
public class ScreenFaderTrack : TrackAsset
{
public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
{
return ScriptPlayable<ScreenFaderMixerBehaviour>.Create (graph, inputCount);
}
public override void GatherProperties (PlayableDirector director, IPropertyCollector driver)
{
#if UNITY_EDITOR
Image trackBinding = director.GetGenericBinding(this) as Image;
if (trackBinding == null)
return;
var serializedObject = new UnityEditor.SerializedObject (trackBinding);
var iterator = serializedObject.GetIterator();
while (iterator.NextVisible(true))
{
if (iterator.hasVisibleChildren)
continue;
driver.AddFromName<Image>(trackBinding.gameObject, iterator.propertyPath);
}
#endif
base.GatherProperties (director, driver);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 6a8190b9dc143d64ab3322e49af85f7b
timeCreated: 1496916563
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 2d691e3fbd7f57c4d81cf41595ca9cc7
folderAsset: yes
timeCreated: 1496915575
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: b912234a0cf57714d8cec5d0a338786d
folderAsset: yes
timeCreated: 1496915577
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,30 @@
using UnityEditor;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.UI;
[CustomPropertyDrawer(typeof(TextSwitcherBehaviour))]
public class TextSwitcherDrawer : PropertyDrawer
{
public override float GetPropertyHeight (SerializedProperty property, GUIContent label)
{
int fieldCount = 3;
return fieldCount * EditorGUIUtility.singleLineHeight;
}
public override void OnGUI (Rect position, SerializedProperty property, GUIContent label)
{
SerializedProperty colorProp = property.FindPropertyRelative("color");
SerializedProperty fontSizeProp = property.FindPropertyRelative("fontSize");
SerializedProperty textProp = property.FindPropertyRelative("text");
Rect singleFieldRect = new Rect(position.x, position.y, position.width, EditorGUIUtility.singleLineHeight);
EditorGUI.PropertyField(singleFieldRect, colorProp);
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
EditorGUI.PropertyField(singleFieldRect, fontSizeProp);
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
EditorGUI.PropertyField(singleFieldRect, textProp);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: d10fec9d6fdea024293153308aa74ef7
timeCreated: 1496915579
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,13 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using UnityEngine.UI;
[Serializable]
public class TextSwitcherBehaviour : PlayableBehaviour
{
public Color color = Color.white;
public int fontSize = 14;
public string text;
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 6480896635305a7418e42ec32d3c64d3
timeCreated: 1496915579
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class TextSwitcherClip : PlayableAsset, ITimelineClipAsset
{
public TextSwitcherBehaviour template = new TextSwitcherBehaviour ();
public ClipCaps clipCaps
{
get { return ClipCaps.Blending; }
}
public override Playable CreatePlayable (PlayableGraph graph, GameObject owner)
{
var playable = ScriptPlayable<TextSwitcherBehaviour>.Create (graph, template);
return playable; }
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: d4d683f551d33a84db12bb6fa65573f9
timeCreated: 1496915579
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,78 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using UnityEngine.UI;
public class TextSwitcherMixerBehaviour : PlayableBehaviour
{
Color m_DefaultColor;
int m_DefaultFontSize;
string m_DefaultText;
Text m_TrackBinding;
bool m_FirstFrameHappened;
public override void ProcessFrame(Playable playable, FrameData info, object playerData)
{
m_TrackBinding = playerData as Text;
if (m_TrackBinding == null)
return;
if (!m_FirstFrameHappened)
{
m_DefaultColor = m_TrackBinding.color;
m_DefaultFontSize = m_TrackBinding.fontSize;
m_DefaultText = m_TrackBinding.text;
m_FirstFrameHappened = true;
}
int inputCount = playable.GetInputCount ();
Color blendedColor = Color.clear;
float blendedFontSize = 0f;
float totalWeight = 0f;
float greatestWeight = 0f;
int currentInputs = 0;
for (int i = 0; i < inputCount; i++)
{
float inputWeight = playable.GetInputWeight(i);
ScriptPlayable<TextSwitcherBehaviour> inputPlayable = (ScriptPlayable<TextSwitcherBehaviour>)playable.GetInput(i);
TextSwitcherBehaviour input = inputPlayable.GetBehaviour ();
blendedColor += input.color * inputWeight;
blendedFontSize += input.fontSize * inputWeight;
totalWeight += inputWeight;
if (inputWeight > greatestWeight)
{
m_TrackBinding.text = input.text;
greatestWeight = inputWeight;
}
if (!Mathf.Approximately (inputWeight, 0f))
currentInputs++;
}
m_TrackBinding.color = blendedColor + m_DefaultColor * (1f - totalWeight);
m_TrackBinding.fontSize = Mathf.RoundToInt (blendedFontSize + m_DefaultFontSize * (1f - totalWeight));
if (currentInputs != 1 && 1f - totalWeight > greatestWeight)
{
m_TrackBinding.text = m_DefaultText;
}
}
public override void OnPlayableDestroy (Playable playable)
{
m_FirstFrameHappened = false;
if (m_TrackBinding == null)
return;
m_TrackBinding.color = m_DefaultColor;
m_TrackBinding.fontSize = m_DefaultFontSize;
m_TrackBinding.text = m_DefaultText;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 8a4266a3acde3c24e995780329819997
timeCreated: 1496915579
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,36 @@
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
using System.Collections.Generic;
using UnityEngine.UI;
[TrackColor(0.1394896f, 0.4411765f, 0.3413077f)]
[TrackClipType(typeof(TextSwitcherClip))]
[TrackBindingType(typeof(Text))]
public class TextSwitcherTrack : TrackAsset
{
public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
{
return ScriptPlayable<TextSwitcherMixerBehaviour>.Create (graph, inputCount);
}
public override void GatherProperties (PlayableDirector director, IPropertyCollector driver)
{
#if UNITY_EDITOR
Text trackBinding = director.GetGenericBinding(this) as Text;
if (trackBinding == null)
return;
var serializedObject = new UnityEditor.SerializedObject (trackBinding);
var iterator = serializedObject.GetIterator();
while (iterator.NextVisible(true))
{
if (iterator.hasVisibleChildren)
continue;
driver.AddFromName<Text>(trackBinding.gameObject, iterator.propertyPath);
}
#endif
base.GatherProperties (director, driver);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 73211584ea373f3409e0a7a83d711aef
timeCreated: 1496915579
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 8ee2af8470937c74ebb226b59fab0f6c
folderAsset: yes
timeCreated: 1491318587
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: d5d00dcf58e5bec4888a9be9ecf3d1b4
folderAsset: yes
timeCreated: 1491318587
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
using UnityEditor;
using UnityEngine;
[CustomPropertyDrawer(typeof(TimeDilationBehaviour))]
public class TimeDilationDrawer : PropertyDrawer
{
public override float GetPropertyHeight (SerializedProperty property, GUIContent label)
{
int fieldCount = 1;
return fieldCount * EditorGUIUtility.singleLineHeight;
}
public override void OnGUI (Rect position, SerializedProperty property, GUIContent label)
{
SerializedProperty timeScaleProp = property.FindPropertyRelative("timeScale");
Rect singleFieldRect = new Rect(position.x, position.y, position.width, EditorGUIUtility.singleLineHeight);
EditorGUI.PropertyField(singleFieldRect, timeScaleProp);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 96853521ef6ea974d96cf7ef72f7c6a7
timeCreated: 1491318587
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,10 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class TimeDilationBehaviour : PlayableBehaviour
{
public float timeScale = 1f;
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: a0b944926d9e8514d892737116110502
timeCreated: 1491318587
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class TimeDilationClip : PlayableAsset, ITimelineClipAsset
{
public TimeDilationBehaviour template = new TimeDilationBehaviour ();
public ClipCaps clipCaps
{
get { return ClipCaps.Extrapolation | ClipCaps.Blending; }
}
public override Playable CreatePlayable (PlayableGraph graph, GameObject owner)
{
return ScriptPlayable<TimeDilationBehaviour>.Create (graph, template);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: eed9a3f59ff436340b05ff8248f0d998
timeCreated: 1491318587
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,53 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
public class TimeDilationMixerBehaviour : PlayableBehaviour
{
readonly float defaultTimeScale = 1f;
public override void ProcessFrame(Playable playable, FrameData info, object playerData)
{
int inputCount = playable.GetInputCount ();
float mixedTimeScale = 0f;
float totalWeight = 0f;
int currentInputCount = 0;
for (int i = 0; i < inputCount; i++)
{
float inputWeight = playable.GetInputWeight(i);
if (inputWeight > 0f)
currentInputCount++;
totalWeight += inputWeight;
ScriptPlayable<TimeDilationBehaviour> playableInput = (ScriptPlayable<TimeDilationBehaviour>)playable.GetInput (i);
TimeDilationBehaviour input = playableInput.GetBehaviour ();
mixedTimeScale += inputWeight * input.timeScale;
}
Time.timeScale = mixedTimeScale + defaultTimeScale * (1f - totalWeight);
if (currentInputCount == 0)
Time.timeScale = defaultTimeScale;
}
public override void OnBehaviourPause (Playable playable, FrameData info)
{
Time.timeScale = defaultTimeScale;
}
public override void OnGraphStop (Playable playable)
{
Time.timeScale = defaultTimeScale;
}
public override void OnPlayableDestroy (Playable playable)
{
Time.timeScale = defaultTimeScale;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 64af3ceaf545d3341b852718827f2b64
timeCreated: 1491318587
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,13 @@
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[TrackColor(0.855f, 0.8623f, 0.87f)]
[TrackClipType(typeof(TimeDilationClip))]
public class TimeDilationTrack : TrackAsset
{
public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
{
return ScriptPlayable<TimeDilationMixerBehaviour>.Create (graph, inputCount);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 0282fd402247fd34eb165b280236e58a
timeCreated: 1491318587
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 770abf86f6667884f903a5e1966bc2f9
folderAsset: yes
timeCreated: 1489416105
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 4c560c903bbc7d84089ed5183276f9c5
folderAsset: yes
timeCreated: 1489676106
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,44 @@
using UnityEngine;
using UnityEditor;
[CustomPropertyDrawer(typeof(TransformTweenBehaviour))]
public class TransformTweenDrawer : PropertyDrawer
{
GUIContent m_TweenPositionContent = new GUIContent("Tween Position", "This should be true if the transformToMove to change position. This causes recalulations each frame which are more CPU intensive.");
GUIContent m_TweenRotationContent = new GUIContent("Tween Rotation", "This should be true if the transformToMove to change rotation.");
GUIContent m_TweenTypeContent = new GUIContent("Tween Type", "Linear - the transform moves the same amount each frame (assuming static start and end locations).\n"
+ "Deceleration - the transform moves slower the closer to the end location it is.\n"
+ "Harmonic - the transform moves faster in the middle of its tween.\n"
+ "Custom - uses the customStartingSpeed and customEndingSpeed to create a curve for the desired tween.");
GUIContent m_CustomCurveContent = new GUIContent("Custom Curve", "This should be a normalised curve (between 0,0 and 1,1) that represents how the tweening object accelerates at different points along the clip.");
public override float GetPropertyHeight (SerializedProperty property, GUIContent label)
{
int fieldCount = property.FindPropertyRelative ("tweenType").enumValueIndex == (int)TransformTweenBehaviour.TweenType.Custom ? 5 : 3;
return fieldCount * (EditorGUIUtility.singleLineHeight);
}
public override void OnGUI (Rect position, SerializedProperty property, GUIContent label)
{
SerializedProperty tweenPositionProp = property.FindPropertyRelative ("tweenPosition");
SerializedProperty tweenRotationProp = property.FindPropertyRelative("tweenRotation");
SerializedProperty tweenTypeProp = property.FindPropertyRelative ("tweenType");
Rect singleFieldRect = new Rect(position.x, position.y, position.width, EditorGUIUtility.singleLineHeight);
EditorGUI.PropertyField (singleFieldRect, tweenPositionProp, m_TweenPositionContent);
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
EditorGUI.PropertyField (singleFieldRect, tweenRotationProp, m_TweenRotationContent);
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
EditorGUI.PropertyField(singleFieldRect, tweenTypeProp, m_TweenTypeContent);
if (tweenTypeProp.enumValueIndex == (int)TransformTweenBehaviour.TweenType.Custom)
{
SerializedProperty customCurveProp = property.FindPropertyRelative ("customCurve");
singleFieldRect.y += EditorGUIUtility.singleLineHeight;
EditorGUI.PropertyField (singleFieldRect, customCurveProp, m_CustomCurveContent);
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: d4c9e800b8d9b3344850b4b658de699d
timeCreated: 1491229652
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,81 @@
using System;
using JetBrains.Annotations;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class TransformTweenBehaviour : PlayableBehaviour
{
public enum TweenType
{
Linear,
Deceleration,
Harmonic,
Custom,
}
public Transform startLocation;
public Transform endLocation;
public bool tweenPosition = true;
public bool tweenRotation = true;
public TweenType tweenType;
public AnimationCurve customCurve = AnimationCurve.Linear(0f, 0f, 1f, 1f);
public Vector3 startingPosition;
public Quaternion startingRotation = Quaternion.identity;
AnimationCurve m_LinearCurve = AnimationCurve.Linear(0f, 0f, 1f, 1f);
AnimationCurve m_DecelerationCurve = new AnimationCurve
(
new Keyframe(0f, 0f, -k_RightAngleInRads, k_RightAngleInRads),
new Keyframe(1f, 1f, 0f, 0f)
);
AnimationCurve m_HarmonicCurve = AnimationCurve.EaseInOut(0f, 0f, 1f, 1f);
const float k_RightAngleInRads = Mathf.PI * 0.5f;
public override void PrepareFrame (Playable playable, FrameData info)
{
if (startLocation)
{
startingPosition = startLocation.position;
startingRotation = startLocation.rotation;
}
}
public float EvaluateCurrentCurve (float time)
{
if (tweenType == TweenType.Custom && !IsCustomCurveNormalised ())
{
Debug.LogError("Custom Curve is not normalised. Curve must start at 0,0 and end at 1,1.");
return 0f;
}
switch (tweenType)
{
case TweenType.Linear:
return m_LinearCurve.Evaluate (time);
case TweenType.Deceleration:
return m_DecelerationCurve.Evaluate (time);
case TweenType.Harmonic:
return m_HarmonicCurve.Evaluate (time);
default:
return customCurve.Evaluate (time);
}
}
bool IsCustomCurveNormalised ()
{
if (!Mathf.Approximately (customCurve[0].time, 0f))
return false;
if (!Mathf.Approximately (customCurve[0].value, 0f))
return false;
if (!Mathf.Approximately (customCurve[customCurve.length - 1].time, 1f))
return false;
return Mathf.Approximately (customCurve[customCurve.length - 1].value, 1f);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 0594bfd3cbfda4d4bab34de00fb2faed
timeCreated: 1493024223
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,26 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[Serializable]
public class TransformTweenClip : PlayableAsset, ITimelineClipAsset
{
public TransformTweenBehaviour template = new TransformTweenBehaviour ();
public ExposedReference<Transform> startLocation;
public ExposedReference<Transform> endLocation;
public ClipCaps clipCaps
{
get { return ClipCaps.Blending; }
}
public override Playable CreatePlayable (PlayableGraph graph, GameObject owner)
{
var playable = ScriptPlayable<TransformTweenBehaviour>.Create (graph, template);
TransformTweenBehaviour clone = playable.GetBehaviour ();
clone.startLocation = startLocation.Resolve (graph.GetResolver ());
clone.endLocation = endLocation.Resolve (graph.GetResolver ());
return playable;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: f28fb04ff66f85e40af453230799042c
timeCreated: 1489416659
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,119 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
public class TransformTweenMixerBehaviour : PlayableBehaviour
{
bool m_FirstFrameHappened;
public override void ProcessFrame(Playable playable, FrameData info, object playerData)
{
Transform trackBinding = playerData as Transform;
if(trackBinding == null)
return;
Vector3 defaultPosition = trackBinding.position;
Quaternion defaultRotation = trackBinding.rotation;
int inputCount = playable.GetInputCount ();
float positionTotalWeight = 0f;
float rotationTotalWeight = 0f;
Vector3 blendedPosition = Vector3.zero;
Quaternion blendedRotation = new Quaternion(0f, 0f, 0f, 0f);
for (int i = 0; i < inputCount; i++)
{
ScriptPlayable<TransformTweenBehaviour> playableInput = (ScriptPlayable<TransformTweenBehaviour>)playable.GetInput (i);
TransformTweenBehaviour input = playableInput.GetBehaviour ();
if(input.endLocation == null)
continue;
float inputWeight = playable.GetInputWeight(i);
if (!m_FirstFrameHappened && !input.startLocation)
{
input.startingPosition = defaultPosition;
input.startingRotation = defaultRotation;
}
float normalisedTime = (float)(playableInput.GetTime() / playableInput.GetDuration ());
float tweenProgress = input.EvaluateCurrentCurve(normalisedTime);
if (input.tweenPosition)
{
positionTotalWeight += inputWeight;
blendedPosition += Vector3.Lerp(input.startingPosition, input.endLocation.position, tweenProgress) * inputWeight;
}
if (input.tweenRotation)
{
rotationTotalWeight += inputWeight;
Quaternion desiredRotation = Quaternion.Lerp(input.startingRotation, input.endLocation.rotation, tweenProgress);
desiredRotation = NormalizeQuaternion(desiredRotation);
if (Quaternion.Dot (blendedRotation, desiredRotation) < 0f)
{
desiredRotation = ScaleQuaternion (desiredRotation, -1f);
}
desiredRotation = ScaleQuaternion(desiredRotation, inputWeight);
blendedRotation = AddQuaternions (blendedRotation, desiredRotation);
}
}
blendedPosition += defaultPosition * (1f - positionTotalWeight);
Quaternion weightedDefaultRotation = ScaleQuaternion (defaultRotation, 1f - rotationTotalWeight);
blendedRotation = AddQuaternions (blendedRotation, weightedDefaultRotation);
trackBinding.position = blendedPosition;
trackBinding.rotation = blendedRotation;
m_FirstFrameHappened = true;
}
public override void OnPlayableDestroy (Playable playable)
{
m_FirstFrameHappened = false;
}
static Quaternion AddQuaternions (Quaternion first, Quaternion second)
{
first.w += second.w;
first.x += second.x;
first.y += second.y;
first.z += second.z;
return first;
}
static Quaternion ScaleQuaternion (Quaternion rotation, float multiplier)
{
rotation.w *= multiplier;
rotation.x *= multiplier;
rotation.y *= multiplier;
rotation.z *= multiplier;
return rotation;
}
static float QuaternionMagnitude (Quaternion rotation)
{
return Mathf.Sqrt ((Quaternion.Dot (rotation, rotation)));
}
static Quaternion NormalizeQuaternion (Quaternion rotation)
{
float magnitude = QuaternionMagnitude (rotation);
if (magnitude > 0f)
return ScaleQuaternion (rotation, 1f / magnitude);
Debug.LogWarning ("Cannot normalize a quaternion with zero magnitude.");
return Quaternion.identity;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: e904ec43bfb67e843b3b830e3d2adc1d
timeCreated: 1493024236
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,32 @@
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[TrackColor(0.855f,0.8623f,0.870f)]
[TrackClipType(typeof(TransformTweenClip))]
[TrackBindingType(typeof(Transform))]
public class TransformTweenTrack : TrackAsset
{
public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
{
return ScriptPlayable<TransformTweenMixerBehaviour>.Create (graph, inputCount);
}
public override void GatherProperties(PlayableDirector director, IPropertyCollector driver)
{
#if UNITY_EDITOR
var comp = director.GetGenericBinding(this) as Transform;
if (comp == null)
return;
var so = new UnityEditor.SerializedObject(comp);
var iter = so.GetIterator();
while (iter.NextVisible(true))
{
if (iter.hasVisibleChildren)
continue;
driver.AddFromName<Transform>(comp.gameObject, iter.propertyPath);
}
#endif
base.GatherProperties(director, driver);
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: f2e6ab84ba07902498da4807885565cb
timeCreated: 1489416673
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 3beda1e3675ee5a438601ebe0052d01d
folderAsset: yes
timeCreated: 1497258609
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,176 @@
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Video;
namespace UnityEngine.Timeline
{
public class VideoPlayableBehaviour : PlayableBehaviour
{
public VideoPlayer videoPlayer;
public VideoClip videoClip;
public bool mute = false;
public bool loop = true;
public double preloadTime = 0.3;
public double clipInTime = 0.0;
private bool playedOnce = false;
private bool preparing = false;
public void PrepareVideo()
{
if (videoPlayer == null || videoClip == null)
return;
videoPlayer.targetCameraAlpha = 0.0f;
if (videoPlayer.clip != videoClip)
StopVideo();
if (videoPlayer.isPrepared || preparing)
return;
videoPlayer.source = VideoSource.VideoClip;
videoPlayer.clip = videoClip;
videoPlayer.playOnAwake = false;
videoPlayer.waitForFirstFrame = true;
videoPlayer.isLooping = loop;
for (ushort i = 0; i < videoClip.audioTrackCount; ++i)
{
if (videoPlayer.audioOutputMode == VideoAudioOutputMode.Direct)
videoPlayer.SetDirectAudioMute(i, mute || !Application.isPlaying);
else if (videoPlayer.audioOutputMode == VideoAudioOutputMode.AudioSource)
{
AudioSource audioSource = videoPlayer.GetTargetAudioSource(i);
if (audioSource != null)
audioSource.mute = mute || !Application.isPlaying;
}
}
videoPlayer.loopPointReached += LoopPointReached;
videoPlayer.time = clipInTime;
videoPlayer.Prepare();
preparing = true;
}
void LoopPointReached(VideoPlayer vp)
{
playedOnce = !loop;
}
public override void PrepareFrame(Playable playable, FrameData info)
{
if (videoPlayer == null || videoClip == null)
return;
videoPlayer.timeReference = Application.isPlaying ? VideoTimeReference.ExternalTime :
VideoTimeReference.Freerun;
if (videoPlayer.isPlaying && Application.isPlaying)
videoPlayer.externalReferenceTime = playable.GetTime();
else if (!Application.isPlaying)
SyncVideoToPlayable(playable);
}
public override void OnBehaviourPlay(Playable playable, FrameData info)
{
if (videoPlayer == null)
return;
if (!playedOnce)
{
PlayVideo();
SyncVideoToPlayable(playable);
}
}
public override void OnBehaviourPause(Playable playable, FrameData info)
{
if (videoPlayer == null)
return;
if (Application.isPlaying)
PauseVideo();
else
StopVideo();
}
public override void ProcessFrame(Playable playable, FrameData info, object playerData)
{
if (videoPlayer == null || videoPlayer.clip == null)
return;
videoPlayer.targetCameraAlpha = info.weight;
if (Application.isPlaying)
{
for (ushort i = 0; i < videoPlayer.clip.audioTrackCount; ++i)
{
if (videoPlayer.audioOutputMode == VideoAudioOutputMode.Direct)
videoPlayer.SetDirectAudioVolume(i, info.weight);
else if (videoPlayer.audioOutputMode == VideoAudioOutputMode.AudioSource)
{
AudioSource audioSource = videoPlayer.GetTargetAudioSource(i);
if (audioSource != null)
audioSource.volume = info.weight;
}
}
}
}
public override void OnGraphStart(Playable playable)
{
playedOnce = false;
}
public override void OnGraphStop(Playable playable)
{
if (!Application.isPlaying)
StopVideo();
}
public override void OnPlayableDestroy(Playable playable)
{
StopVideo();
}
public void PlayVideo()
{
if (videoPlayer == null)
return;
videoPlayer.Play();
preparing = false;
if (!Application.isPlaying)
PauseVideo();
}
public void PauseVideo()
{
if (videoPlayer == null)
return;
videoPlayer.Pause();
preparing = false;
}
public void StopVideo()
{
if (videoPlayer == null)
return;
playedOnce = false;
videoPlayer.Stop();
preparing = false;
}
private void SyncVideoToPlayable(Playable playable)
{
if (videoPlayer == null || videoPlayer.clip == null)
return;
videoPlayer.time = (clipInTime + (playable.GetTime() * videoPlayer.playbackSpeed)) % videoPlayer.clip.length;
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: f9cbe3d1fa4843444a5eb76370a4dd15
timeCreated: 1497258618
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,52 @@
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Playables;
namespace UnityEngine.Timeline
{
public sealed class VideoSchedulerPlayableBehaviour : PlayableBehaviour
{
private IEnumerable<TimelineClip> m_Clips;
private PlayableDirector m_Director;
internal PlayableDirector director
{
get { return m_Director; }
set { m_Director = value; }
}
internal IEnumerable<TimelineClip> clips
{
get { return m_Clips; }
set { m_Clips = value; }
}
public override void ProcessFrame(Playable playable, FrameData info, object playerData)
{
if (m_Clips == null)
return;
int inputPort = 0;
foreach (TimelineClip clip in m_Clips)
{
ScriptPlayable<VideoPlayableBehaviour> scriptPlayable =
(ScriptPlayable<VideoPlayableBehaviour>)playable.GetInput(inputPort);
VideoPlayableBehaviour videoPlayableBehaviour = scriptPlayable.GetBehaviour();
if (videoPlayableBehaviour != null)
{
double preloadTime = Math.Max(0.0, videoPlayableBehaviour.preloadTime);
if (m_Director.time >= clip.start + clip.duration ||
m_Director.time <= clip.start - preloadTime)
videoPlayableBehaviour.StopVideo();
else if (m_Director.time > clip.start - preloadTime)
videoPlayableBehaviour.PrepareVideo();
}
++inputPort;
}
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 6dfd332197b07004c90e572e7b383e47
timeCreated: 1497258618
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,45 @@
using System;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Video;
namespace UnityEngine.Timeline
{
[Serializable]
public class VideoScriptPlayableAsset : PlayableAsset
{
public ExposedReference<VideoPlayer> videoPlayer;
[SerializeField, NotKeyable]
public VideoClip videoClip;
[SerializeField, NotKeyable]
public bool mute = false;
[SerializeField, NotKeyable]
public bool loop = true;
[SerializeField, NotKeyable]
public double preloadTime = 0.3;
[SerializeField, NotKeyable]
public double clipInTime = 0.0;
public override Playable CreatePlayable(PlayableGraph graph, GameObject go)
{
ScriptPlayable<VideoPlayableBehaviour> playable =
ScriptPlayable<VideoPlayableBehaviour>.Create(graph);
VideoPlayableBehaviour playableBehaviour = playable.GetBehaviour();
playableBehaviour.videoPlayer = videoPlayer.Resolve(graph.GetResolver());
playableBehaviour.videoClip = videoClip;
playableBehaviour.mute = mute;
playableBehaviour.loop = loop;
playableBehaviour.preloadTime = preloadTime;
playableBehaviour.clipInTime = clipInTime;
return playable;
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 88bb1acb4c6ce544788ae727c940bd7e
timeCreated: 1497258618
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,33 @@
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Playables;
namespace UnityEngine.Timeline
{
[Serializable]
[TrackClipType(typeof(VideoScriptPlayableAsset))]
[TrackColor(0.008f, 0.698f, 0.655f)]
public class VideoScriptPlayableTrack : TrackAsset
{
public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
{
PlayableDirector playableDirector = go.GetComponent<PlayableDirector>();
ScriptPlayable<VideoSchedulerPlayableBehaviour> playable =
ScriptPlayable<VideoSchedulerPlayableBehaviour>.Create(graph, inputCount);
VideoSchedulerPlayableBehaviour videoSchedulerPlayableBehaviour =
playable.GetBehaviour();
if (videoSchedulerPlayableBehaviour != null)
{
videoSchedulerPlayableBehaviour.director = playableDirector;
videoSchedulerPlayableBehaviour.clips = GetClips();
}
return playable;
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: b5bef7c9d630a7042b864b59b09e597c
timeCreated: 1497258618
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fe111545f1755db409bc06a51d745d6b
timeCreated: 1499765725
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,135 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-7106137683586874723
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5bef7c9d630a7042b864b59b09e597c, type: 3}
m_Name: Video Script Playable Track
m_EditorClassIdentifier:
m_Version: 3
m_AnimClip: {fileID: 0}
m_Locked: 0
m_Muted: 0
m_CustomPlayableFullTypename:
m_Curves: {fileID: 0}
m_Parent: {fileID: 11400000}
m_Children: []
m_Clips:
- m_Version: 1
m_Start: 0.16666666666666666
m_ClipIn: 0
m_Asset: {fileID: -983589448444294336}
m_Duration: 5
m_TimeScale: 1
m_ParentTrack: {fileID: -7106137683586874723}
m_EaseInDuration: 0
m_EaseOutDuration: 0
m_BlendInDuration: -1
m_BlendOutDuration: -1
m_MixInCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_MixOutCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_BlendInCurveMode: 0
m_BlendOutCurveMode: 0
m_ExposedParameterNames: []
m_AnimationCurves: {fileID: 0}
m_Recordable: 0
m_PostExtrapolationMode: 0
m_PreExtrapolationMode: 0
m_PostExtrapolationTime: 0
m_PreExtrapolationTime: 0
m_DisplayName: CoryStudioDemoData_10sensor_Take03_Export04_Video01-5Mbps-bt709
m_Markers:
m_Objects: []
--- !u!114 &-983589448444294336
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 88bb1acb4c6ce544788ae727c940bd7e, type: 3}
m_Name: VideoScriptPlayableAsset
m_EditorClassIdentifier:
videoPlayer:
exposedName: c16a8873e0a5f46a684e857fd8b641d2
defaultValue: {fileID: 0}
videoClip: {fileID: 32900000, guid: 6b0faa3e2ee8d4bf8843b38aa0d73d5d, type: 3}
mute: 0
loop: 1
preloadTime: 0.3
clipInTime: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: bfda56da833e2384a9677cd3c976a436, type: 3}
m_Name: CoryStudioDemoData_10sensor_Take03_Export04_Video01-5Mbps-bt709
m_EditorClassIdentifier:
m_Version: 0
m_Tracks:
- {fileID: -7106137683586874723}
m_FixedDuration: 0
m_EditorSettings:
m_Framerate: 60
m_ScenePreview: 1
m_DurationMode: 0
m_MarkerTrack: {fileID: 0}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8e5d234c862084960bc42426d0f0690b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,135 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2831102852672513996
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 88bb1acb4c6ce544788ae727c940bd7e, type: 3}
m_Name: VideoScriptPlayableAsset
m_EditorClassIdentifier:
videoPlayer:
exposedName: 889b83fc178f54dd6aa7d297464472e7
defaultValue: {fileID: 0}
videoClip: {fileID: 32900000, guid: 10490af5f3c2845bf9411bee52f7c743, type: 3}
mute: 0
loop: 1
preloadTime: 0.3
clipInTime: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: bfda56da833e2384a9677cd3c976a436, type: 3}
m_Name: CoryStudioDemoData_5sensor_Take01_Export03_Video01-5Mbps-bt709
m_EditorClassIdentifier:
m_Version: 0
m_Tracks:
- {fileID: 6009451379436929514}
m_FixedDuration: 0
m_EditorSettings:
m_Framerate: 60
m_ScenePreview: 1
m_DurationMode: 0
m_MarkerTrack: {fileID: 0}
--- !u!114 &6009451379436929514
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5bef7c9d630a7042b864b59b09e597c, type: 3}
m_Name: Video Script Playable Track
m_EditorClassIdentifier:
m_Version: 3
m_AnimClip: {fileID: 0}
m_Locked: 0
m_Muted: 0
m_CustomPlayableFullTypename:
m_Curves: {fileID: 0}
m_Parent: {fileID: 11400000}
m_Children: []
m_Clips:
- m_Version: 1
m_Start: 0.16666666666666666
m_ClipIn: 0
m_Asset: {fileID: -2831102852672513996}
m_Duration: 5
m_TimeScale: 1
m_ParentTrack: {fileID: 6009451379436929514}
m_EaseInDuration: 0
m_EaseOutDuration: 0
m_BlendInDuration: -1
m_BlendOutDuration: -1
m_MixInCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_MixOutCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_BlendInCurveMode: 0
m_BlendOutCurveMode: 0
m_ExposedParameterNames: []
m_AnimationCurves: {fileID: 0}
m_Recordable: 0
m_PostExtrapolationMode: 0
m_PreExtrapolationMode: 0
m_PostExtrapolationTime: 0
m_PreExtrapolationTime: 0
m_DisplayName: CoryStudioDemoData_5sensor_Take01_Export03_Video01-5Mbps-bt709
m_Markers:
m_Objects: []

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 45f490a960f4948ce90f815ce60ca00a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -76,6 +76,362 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_totalVoxelCount
value: 6402585
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_useTriangleMesh
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectivesCount
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: maskGenerator.clip
value:
objectReference: {fileID: 8166859692185738086}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_voxelGridDimensions.x
value: 147
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_voxelGridDimensions.y
value: 281
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_voxelGridDimensions.z
value: 155
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_volumeBounds.m_Center.x
value: -0.03230667
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_volumeBounds.m_Center.y
value: 0.82457256
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_volumeBounds.m_Center.z
value: -0.10847199
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_volumeBounds.m_Extent.x
value: 0.7397089
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_volumeBounds.m_Extent.y
value: 1.4078197
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_volumeBounds.m_Extent.z
value: 0.77536047
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPersp.Array.size
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: overrideRadialBias.Array.size
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPersp.Array.data[0]
value: 0.008
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPersp.Array.data[1]
value: 0.008
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPersp.Array.data[2]
value: 0.008
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPersp.Array.data[3]
value: 0.008
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPersp.Array.data[4]
value: 0.008
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_name
value: Depthkit Per Perspective Geometry Data
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: showPerspectiveGizmo.Array.size
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_subMeshMaxTriangles.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: maskGenerator.m_blurFilter.slices
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.size
value: 12
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: maskGenerator.useStudioCoefficients
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_name
value: Depthkit Per Perspective Color Blending Data
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[0].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[1].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[2].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[3].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[4].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[5].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[6].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[7].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[8].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[9].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[10].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: radialBiasPerspInMeters.Array.data[11].x
value: 0.000080000005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.size
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.size
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[0].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[1].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[2].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[3].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[4].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[0].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[1].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[2].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[3].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[4].enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[0].weightUnknown
value: 0.005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[1].weightUnknown
value: 0.005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[2].weightUnknown
value: 0.005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[3].weightUnknown
value: 0.005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[4].weightUnknown
value: 0.005
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_viewDependentContributions.Array.size
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[0].viewDependentWeight
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[1].viewDependentWeight
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[2].viewDependentWeight
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[3].viewDependentWeight
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[4].viewDependentWeight
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_geometryMatchesColorWeights.Array.size
value: 5
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_viewDependentContributions.Array.data[0]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_viewDependentContributions.Array.data[1]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_viewDependentContributions.Array.data[2]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_viewDependentContributions.Array.data[3]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_viewDependentContributions.Array.data[4]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[0].viewDependentUnseenAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[1].viewDependentUnseenAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[2].viewDependentUnseenAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[3].viewDependentUnseenAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[4].viewDependentUnseenAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[0].viewDependentInFrontAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[1].viewDependentInFrontAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[2].viewDependentInFrontAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[3].viewDependentInFrontAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveGeometryData.m_data.Array.data[4].viewDependentInFrontAmount
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[0].viewWeightPowerContribution
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[1].viewWeightPowerContribution
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[2].viewWeightPowerContribution
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[3].viewWeightPowerContribution
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5903246224364475616, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: perspectiveColorBlendingData.m_data.Array.data[4].viewWeightPowerContribution
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7594559701447733686, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_Size.x
value: 1.4794178
objectReference: {fileID: 0}
- target: {fileID: 7594559701447733686, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_Size.y
value: 2.8156395
objectReference: {fileID: 0}
- target: {fileID: 7594559701447733686, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_Size.z
value: 1.5507209
objectReference: {fileID: 0}
- target: {fileID: 7594559701447733686, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_Center.x
value: -0.03230667
objectReference: {fileID: 0}
- target: {fileID: 7594559701447733686, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_Center.y
value: 0.82457256
objectReference: {fileID: 0}
- target: {fileID: 7594559701447733686, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_Center.z
value: -0.10847199
objectReference: {fileID: 0}
- target: {fileID: 8753041968747118871, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
propertyPath: m_poster
value:
@ -1053,3 +1409,14 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
--- !u!114 &8166859692185738086 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 8753041968747118871, guid: 1d9c25c646ab3f34c9b577e152c7b98e, type: 3}
m_PrefabInstance: {fileID: 589847122768943729}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b4fa781ea55830e408ba83c0f9d07c4b, type: 3}
m_Name:
m_EditorClassIdentifier:

File diff suppressed because it is too large Load Diff