Working on Depthkit samples
parent
c32b0a1a11
commit
d373f6d402
|
@ -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")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
Composite(Sequence) {
|
||||
Composite (Marathon) {
|
||||
RunTree("Fading_Bush")
|
||||
RunTree("Play_Depthkit")
|
||||
// RunTree("Play_Depthkit")
|
||||
}
|
||||
Composite(Race) {
|
||||
Composite(Sequence) {
|
|
@ -1,6 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8191570f3842146deb888062074b4d7c
|
||||
TextScriptImporter:
|
||||
guid: cb4c321f66cc9498dbf47c55b576b1ce
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
Binary file not shown.
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8e951343000f41f4994e0e36b383bd08
|
||||
timeCreated: 1499765480
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 01cfeabdfa5f36740b2b9c9658bbb29e
|
||||
timeCreated: 1490191896
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 5f5e3cf7f402b7b40894a67f55fad9ce
|
||||
folderAsset: yes
|
||||
timeCreated: 1496914998
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 01cfda49307e46248bd868ab09d47ace
|
||||
folderAsset: yes
|
||||
timeCreated: 1496915000
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a217f65052ddf094ba45e737b2428b1c
|
||||
timeCreated: 1496915002
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7e7c747bf1731824682c539494feba37
|
||||
timeCreated: 1496915002
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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; }
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 23b46759ef7b0fd4bb74d73bf4d2839b
|
||||
timeCreated: 1496915002
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b6ddd7db188548f49bf8d55102e62b63
|
||||
timeCreated: 1496915002
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e97b7684a1a63ed42afa5e89e962140f
|
||||
timeCreated: 1496915002
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 93b4d74e1158a4d48914db94fc4e87c9
|
||||
folderAsset: yes
|
||||
timeCreated: 1492603101
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 05bbdc6a3b254694e8d1e2d9d55cd256
|
||||
timeCreated: 1492603101
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: cfedc374dca69334db907af09ba5c404
|
||||
timeCreated: 1492603101
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a3805dde487857b41b2fff7d26f06f1e
|
||||
timeCreated: 1492603101
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d201ca921ed322e418c25df03740a308
|
||||
timeCreated: 1492603101
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1482b2b9e18dc0a43baf3c92d0cd7156
|
||||
folderAsset: yes
|
||||
timeCreated: 1496916559
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b53f46f9af38aef4c8014c759eae0bd9
|
||||
folderAsset: yes
|
||||
timeCreated: 1496916561
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7075b31fb4bae504f8480419ce90246f
|
||||
timeCreated: 1496916563
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 4cf88cabc4dadeb4fafeefdbc61869ca
|
||||
timeCreated: 1496916563
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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; }
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0445258a5c40b364ab21547784905327
|
||||
timeCreated: 1496916563
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 88173aff48b4ccb429d83dca32d03a86
|
||||
timeCreated: 1496916563
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 6a8190b9dc143d64ab3322e49af85f7b
|
||||
timeCreated: 1496916563
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2d691e3fbd7f57c4d81cf41595ca9cc7
|
||||
folderAsset: yes
|
||||
timeCreated: 1496915575
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b912234a0cf57714d8cec5d0a338786d
|
||||
folderAsset: yes
|
||||
timeCreated: 1496915577
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d10fec9d6fdea024293153308aa74ef7
|
||||
timeCreated: 1496915579
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 6480896635305a7418e42ec32d3c64d3
|
||||
timeCreated: 1496915579
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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; }
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d4d683f551d33a84db12bb6fa65573f9
|
||||
timeCreated: 1496915579
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8a4266a3acde3c24e995780329819997
|
||||
timeCreated: 1496915579
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 73211584ea373f3409e0a7a83d711aef
|
||||
timeCreated: 1496915579
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8ee2af8470937c74ebb226b59fab0f6c
|
||||
folderAsset: yes
|
||||
timeCreated: 1491318587
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d5d00dcf58e5bec4888a9be9ecf3d1b4
|
||||
folderAsset: yes
|
||||
timeCreated: 1491318587
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 96853521ef6ea974d96cf7ef72f7c6a7
|
||||
timeCreated: 1491318587
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
using System;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Playables;
|
||||
using UnityEngine.Timeline;
|
||||
|
||||
[Serializable]
|
||||
public class TimeDilationBehaviour : PlayableBehaviour
|
||||
{
|
||||
public float timeScale = 1f;
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a0b944926d9e8514d892737116110502
|
||||
timeCreated: 1491318587
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: eed9a3f59ff436340b05ff8248f0d998
|
||||
timeCreated: 1491318587
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 64af3ceaf545d3341b852718827f2b64
|
||||
timeCreated: 1491318587
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0282fd402247fd34eb165b280236e58a
|
||||
timeCreated: 1491318587
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 770abf86f6667884f903a5e1966bc2f9
|
||||
folderAsset: yes
|
||||
timeCreated: 1489416105
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 4c560c903bbc7d84089ed5183276f9c5
|
||||
folderAsset: yes
|
||||
timeCreated: 1489676106
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d4c9e800b8d9b3344850b4b658de699d
|
||||
timeCreated: 1491229652
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0594bfd3cbfda4d4bab34de00fb2faed
|
||||
timeCreated: 1493024223
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f28fb04ff66f85e40af453230799042c
|
||||
timeCreated: 1489416659
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e904ec43bfb67e843b3b830e3d2adc1d
|
||||
timeCreated: 1493024236
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f2e6ab84ba07902498da4807885565cb
|
||||
timeCreated: 1489416673
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3beda1e3675ee5a438601ebe0052d01d
|
||||
folderAsset: yes
|
||||
timeCreated: 1497258609
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f9cbe3d1fa4843444a5eb76370a4dd15
|
||||
timeCreated: 1497258618
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 6dfd332197b07004c90e572e7b383e47
|
||||
timeCreated: 1497258618
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 88bb1acb4c6ce544788ae727c940bd7e
|
||||
timeCreated: 1497258618
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b5bef7c9d630a7042b864b59b09e597c
|
||||
timeCreated: 1497258618
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: fe111545f1755db409bc06a51d745d6b
|
||||
timeCreated: 1499765725
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8e5d234c862084960bc42426d0f0690b
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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: []
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 45f490a960f4948ce90f815ce60ca00a
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -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
Loading…
Reference in New Issue