diff --git a/Assets/vfx-graph-gs/Main.unity b/Assets/vfx-graph-gs/Main.unity index f352aec..7cb1e8f 100644 --- a/Assets/vfx-graph-gs/Main.unity +++ b/Assets/vfx-graph-gs/Main.unity @@ -119,7 +119,7 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} ---- !u!1001 &1278960003 +--- !u!1001 &594024951 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 @@ -127,47 +127,47 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - - target: {fileID: -774367247743995920, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: -774367247743995920, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_Enabled value: 1 objectReference: {fileID: 0} - - target: {fileID: -364223573239433514, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: -364223573239433514, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - - target: {fileID: -364223573239433514, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: -364223573239433514, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - - target: {fileID: -364223573239433514, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: -364223573239433514, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - - target: {fileID: -364223573239433514, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: -364223573239433514, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - - target: {fileID: -364223573239433514, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: -364223573239433514, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - - target: {fileID: -364223573239433514, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: -364223573239433514, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - - target: {fileID: -364223573239433514, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: -364223573239433514, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 8980549144392899874, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + - target: {fileID: 8980549144392899874, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} propertyPath: m_Name - value: splat_30000 + value: splat_45000 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] m_AddedComponents: [] - m_SourcePrefab: {fileID: -4216948427090074523, guid: 37755a41ea5c1174cad6f111ea2f209b, type: 3} + m_SourcePrefab: {fileID: -4216948427090074523, guid: 25c54d8c074f08447ab1c822a6a052fa, type: 3} --- !u!1 &1826889287 GameObject: m_ObjectHideFlags: 0 @@ -179,6 +179,7 @@ GameObject: - component: {fileID: 1826889290} - component: {fileID: 1826889289} - component: {fileID: 1826889288} + - component: {fileID: 1826889291} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera @@ -260,6 +261,50 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1826889291 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1826889287} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalCameraData + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 --- !u!1 &1911516430 GameObject: m_ObjectHideFlags: 0 @@ -393,4 +438,4 @@ SceneRoots: m_Roots: - {fileID: 1826889290} - {fileID: 1911516433} - - {fileID: 1278960003} + - {fileID: 594024951} diff --git a/Assets/vfx-graph-gs/SplatData.cs b/Assets/vfx-graph-gs/SplatData.cs index 723a097..ef211cd 100644 --- a/Assets/vfx-graph-gs/SplatData.cs +++ b/Assets/vfx-graph-gs/SplatData.cs @@ -1,87 +1,92 @@ using UnityEngine; using System.Collections.Generic; +using System.Collections; using System.Linq; +using System; +using System.Linq.Expressions; -namespace SplatVfx { - -public sealed class SplatData : ScriptableObject +namespace SplatVfx { - #region Public properties - public int SplatCount => PositionArray.Length; - public GraphicsBuffer PositionBuffer => GetCachedBuffers().position; - public GraphicsBuffer ScaleBuffer => GetCachedBuffers().scale; - public GraphicsBuffer RotationBuffer => GetCachedBuffers().rotation; - public GraphicsBuffer ColorBuffer => GetCachedBuffers().color; - public GraphicsBuffer OpacityBuffer => GetCachedBuffers().opacity; - public GraphicsBuffer SHBuffer => GetCachedBuffers().sh; - - #endregion - - #region Serialized data - - [field:SerializeField] public Vector3[] PositionArray { get; set; } - [field:SerializeField] public Vector3[] ScaleArray { get; set; } - [field:SerializeField] public Quaternion[] RotationArray { get; set; } - [field:SerializeField] public Color[] ColorArray { get; set; } - [field:SerializeField] public float[] OpacityArray { get; set; } - [field:SerializeField] public float[,] SHArray { get; set; } - - #endregion - - #region Public methods - - public void ReleaseGpuResources() + public sealed class SplatData : ScriptableObject { - _cachedBuffers.position?.Release(); - _cachedBuffers.scale?.Release(); - _cachedBuffers.rotation?.Release(); - _cachedBuffers.color?.Release(); - _cachedBuffers.opacity?.Release(); - _cachedBuffers = (null, null, null, null, null, null); - } + #region Public properties - #endregion + public int SplatCount => PositionArray.Length; + public GraphicsBuffer PositionBuffer => GetCachedBuffers().position; + public GraphicsBuffer ScaleBuffer => GetCachedBuffers().scale; + public GraphicsBuffer RotationBuffer => GetCachedBuffers().rotation; + public GraphicsBuffer ColorBuffer => GetCachedBuffers().color; + public GraphicsBuffer OpacityBuffer => GetCachedBuffers().opacity; + public GraphicsBuffer SHBuffer => GetCachedBuffers().sh; - #region GPU resource management + #endregion - (GraphicsBuffer position, GraphicsBuffer scale, GraphicsBuffer rotation, - GraphicsBuffer color, GraphicsBuffer opacity, GraphicsBuffer sh) - _cachedBuffers; + #region Serialized data - static unsafe GraphicsBuffer NewBuffer(int count) where T : unmanaged - => new GraphicsBuffer(GraphicsBuffer.Target.Structured, count, sizeof(T)); + [field: SerializeField] public Vector3[] PositionArray { get; set; } + [field: SerializeField] public Vector3[] ScaleArray { get; set; } + [field: SerializeField] public Quaternion[] RotationArray { get; set; } + [field: SerializeField] public Color[] ColorArray { get; set; } + [field: SerializeField] public float[] OpacityArray { get; set; } + [field: SerializeField] public float[,] SHArray { get; set; } - (GraphicsBuffer position, GraphicsBuffer scale, GraphicsBuffer rotation, - GraphicsBuffer color, GraphicsBuffer opacity, GraphicsBuffer sh) - GetCachedBuffers() - { - if (_cachedBuffers.position == null) + #endregion + + #region Public methods + + public void ReleaseGpuResources() { - _cachedBuffers.position = NewBuffer(SplatCount); - _cachedBuffers.scale = NewBuffer(SplatCount); - _cachedBuffers.rotation = NewBuffer(SplatCount); - _cachedBuffers.color = NewBuffer(SplatCount); - _cachedBuffers.opacity = NewBuffer(SplatCount); - _cachedBuffers.sh = NewBuffer(SplatCount * 45); - - _cachedBuffers.position.SetData(PositionArray); - _cachedBuffers.scale.SetData(ScaleArray); - _cachedBuffers.rotation.SetData(RotationArray); - _cachedBuffers.color.SetData(ColorArray); - _cachedBuffers.opacity.SetData(OpacityArray); - _cachedBuffers.sh.SetData(SHArray); + _cachedBuffers.position?.Release(); + _cachedBuffers.scale?.Release(); + _cachedBuffers.rotation?.Release(); + _cachedBuffers.color?.Release(); + _cachedBuffers.opacity?.Release(); + _cachedBuffers.sh?.Release(); + _cachedBuffers = (null, null, null, null, null, null); } - return _cachedBuffers; + + #endregion + + #region GPU resource management + + (GraphicsBuffer position, GraphicsBuffer scale, GraphicsBuffer rotation, + GraphicsBuffer color, GraphicsBuffer opacity, GraphicsBuffer sh) + _cachedBuffers; + + static unsafe GraphicsBuffer NewBuffer(int count) where T : unmanaged + => new GraphicsBuffer(GraphicsBuffer.Target.Structured, count, sizeof(T)); + + (GraphicsBuffer position, GraphicsBuffer scale, GraphicsBuffer rotation, + GraphicsBuffer color, GraphicsBuffer opacity, GraphicsBuffer sh) + GetCachedBuffers() + { + if (_cachedBuffers.position == null) + { + _cachedBuffers.position = NewBuffer(SplatCount); + _cachedBuffers.scale = NewBuffer(SplatCount); + _cachedBuffers.rotation = NewBuffer(SplatCount); + _cachedBuffers.color = NewBuffer(SplatCount); + _cachedBuffers.opacity = NewBuffer(SplatCount); + _cachedBuffers.sh = NewBuffer(SplatCount * 45); + + _cachedBuffers.position.SetData(PositionArray); + // _cachedBuffers.scale.SetData(ScaleArray); + // _cachedBuffers.rotation.SetData(RotationArray); + // _cachedBuffers.color.SetData(ColorArray); + // _cachedBuffers.opacity.SetData(OpacityArray); + // _cachedBuffers.sh.SetData(SHArray); + } + return _cachedBuffers; + } + + #endregion + + #region ScriptableObject implementation + + void OnDisable() => ReleaseGpuResources(); + + #endregion } - #endregion - - #region ScriptableObject implementation - - void OnDisable() => ReleaseGpuResources(); - - #endregion -} - } diff --git a/Assets/vfx-graph-gs/SplatDataBinder.cs b/Assets/vfx-graph-gs/SplatDataBinder.cs index 19d5855..0cae77d 100644 --- a/Assets/vfx-graph-gs/SplatDataBinder.cs +++ b/Assets/vfx-graph-gs/SplatDataBinder.cs @@ -1,62 +1,67 @@ +using System.Collections; using UnityEngine; using UnityEngine.VFX; using UnityEngine.VFX.Utility; -namespace SplatVfx { - -[AddComponentMenu("VFX/Property Binders/Splat Data Binder")] -[VFXBinder("Splat Data")] -public sealed class VFXSplatDataBinder : VFXBinderBase +namespace SplatVfx { - public SplatData SplatData = null; - // public string SplatCountProperty - // { get => (string)_splatCountProperty; - // set => _splatCountProperty = value; } - - public string PositionBufferProperty - { get => (string)_positionBufferProperty; - set => _positionBufferProperty = value; } - - // public string AxisBufferProperty - // { get => (string)_axisBufferProperty; - // set => _axisBufferProperty = value; } - - // public string ColorBufferProperty - // { get => (string)_colorBufferProperty; - // set => _colorBufferProperty = value; } - - // [VFXPropertyBinding("System.UInt32"), SerializeField] - // ExposedProperty _splatCountProperty = "SplatCount"; - - [VFXPropertyBinding("UnityEngine.GraphicsBuffer"), SerializeField] - ExposedProperty _positionBufferProperty = "PositionBuffer"; - - // [VFXPropertyBinding("UnityEngine.GraphicsBuffer"), SerializeField] - // ExposedProperty _axisBufferProperty = "AxisBuffer"; - - // [VFXPropertyBinding("UnityEngine.GraphicsBuffer"), SerializeField] - // ExposedProperty _colorBufferProperty = "ColorBuffer"; - - public override bool IsValid(VisualEffect component) - => SplatData != null && - // component.HasUInt(_splatCountProperty) && - component.HasGraphicsBuffer(_positionBufferProperty); // && - // component.HasGraphicsBuffer(_axisBufferProperty) && - // component.HasGraphicsBuffer(_colorBufferProperty); - - public override void UpdateBinding(VisualEffect component) + [AddComponentMenu("VFX/Property Binders/Splat Data Binder")] + [VFXBinder("Splat Data")] + public sealed class VFXSplatDataBinder : VFXBinderBase { - // component.SetUInt(_splatCountProperty, (uint)SplatData.SplatCount); - component.SetGraphicsBuffer(_positionBufferProperty, SplatData.PositionBuffer); - // component.SetGraphicsBuffer(_axisBufferProperty, SplatData.AxisBuffer); - // component.SetGraphicsBuffer(_colorBufferProperty, SplatData.ColorBuffer); + public SplatData SplatData = null; + + // public string SplatCountProperty + // { get => (string)_splatCountProperty; + // set => _splatCountProperty = value; } + + public string PositionBufferProperty + { + get => (string)_positionBufferProperty; + set => _positionBufferProperty = value; + } + + // public string AxisBufferProperty + // { get => (string)_axisBufferProperty; + // set => _axisBufferProperty = value; } + + // public string ColorBufferProperty + // { get => (string)_colorBufferProperty; + // set => _colorBufferProperty = value; } + + // [VFXPropertyBinding("System.UInt32"), SerializeField] + // ExposedProperty _splatCountProperty = "SplatCount"; + + [VFXPropertyBinding("UnityEngine.GraphicsBuffer"), SerializeField] + ExposedProperty _positionBufferProperty = "PositionBuffer"; + + // [VFXPropertyBinding("UnityEngine.GraphicsBuffer"), SerializeField] + // ExposedProperty _axisBufferProperty = "AxisBuffer"; + + // [VFXPropertyBinding("UnityEngine.GraphicsBuffer"), SerializeField] + // ExposedProperty _colorBufferProperty = "ColorBuffer"; + + public override bool IsValid(VisualEffect component) + => SplatData != null && + // component.HasUInt(_splatCountProperty) && + component.HasGraphicsBuffer(_positionBufferProperty); // && + // component.HasGraphicsBuffer(_axisBufferProperty) && + // component.HasGraphicsBuffer(_colorBufferProperty); + + public override void UpdateBinding(VisualEffect component) + { + // component.SetUInt(_splatCountProperty, (uint)SplatData.SplatCount); + component.SetGraphicsBuffer(_positionBufferProperty, SplatData.PositionBuffer); + // component.SetGraphicsBuffer(_axisBufferProperty, SplatData.AxisBuffer); + // component.SetGraphicsBuffer(_colorBufferProperty, SplatData.ColorBuffer); + } + + // public override string ToString() + // => $"Splat Data : {_splatCountProperty}, {_positionBufferProperty}, " + // // + $"{_axisBufferProperty}, {_colorBufferProperty}"; + // + $"{_colorBufferProperty}"; } - // public override string ToString() - // => $"Splat Data : {_splatCountProperty}, {_positionBufferProperty}, " - // // + $"{_axisBufferProperty}, {_colorBufferProperty}"; - // + $"{_colorBufferProperty}"; -} } // namespace SplatVfx diff --git a/Assets/vfx-graph-gs/SplatDataInspector.cs b/Assets/vfx-graph-gs/SplatDataInspector.cs index d0c9f15..c767f94 100644 --- a/Assets/vfx-graph-gs/SplatDataInspector.cs +++ b/Assets/vfx-graph-gs/SplatDataInspector.cs @@ -1,16 +1,17 @@ using UnityEngine; using UnityEditor; -namespace SplatVfx.Editor { - -[CustomEditor(typeof(SplatData))] -public sealed class SplatDataInspector : UnityEditor.Editor +namespace SplatVfx.Editor { - public override void OnInspectorGUI() - { - var count = ((SplatData)target).SplatCount; - EditorGUILayout.LabelField("Splat Count", $"{count:N0}"); - } -} -} // namespace SplatVfx.Editor + [CustomEditor(typeof(SplatData))] + public sealed class SplatDataInspector : UnityEditor.Editor + { + public override void OnInspectorGUI() + { + var count = ((SplatData)target).SplatCount; + EditorGUILayout.LabelField("Splat Count", $"{count:N0}"); + } + } + +} diff --git a/Assets/vfx-graph-gs/SplatImporter.cs b/Assets/vfx-graph-gs/SplatImporter.cs index c4332f5..f7b2097 100644 --- a/Assets/vfx-graph-gs/SplatImporter.cs +++ b/Assets/vfx-graph-gs/SplatImporter.cs @@ -42,13 +42,13 @@ namespace SplatVfx.Editor { var ply = ParsePLYFile(context.assetPath); var header_info = ParseHeader(ply.header); + var data = ImportAsSplatData(header_info, ply.binaryData); - var prefab = CreatePrefab(data); - data.name = Path.GetFileNameWithoutExtension(context.assetPath); - - context.AddObjectToAsset("prefab", prefab); context.AddObjectToAsset("data", data); + + var prefab = CreatePrefab(data); + context.AddObjectToAsset("prefab", prefab); context.SetMainObject(prefab); } @@ -61,13 +61,13 @@ namespace SplatVfx.Editor GameObject CreatePrefab(SplatData data) { var go = new GameObject(); + var vfx = go.AddComponent(); + vfx.visualEffectAsset = EditorResources.Load(DefaultVfxPath); - var vfx = go.AddComponent(); - vfx.visualEffectAsset = EditorResources.Load(DefaultVfxPath); - - var binderBase = go.AddComponent(); - var binder = binderBase.AddPropertyBinder(); - binder.SplatData = data; + var binderBase = go.AddComponent(); + var binder = binderBase.AddPropertyBinder(); + + binder.SplatData = data; return go; } @@ -76,7 +76,6 @@ namespace SplatVfx.Editor #region Reader implementation - [BurstCompile] (string header, byte[] binaryData) ParsePLYFile(string filePath) { using var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read); @@ -103,7 +102,6 @@ namespace SplatVfx.Editor return (headerBuilder.ToString(), binaryData); } - [BurstCompile] (string format, int num_element, List<(string, string)> properties) ParseHeader(string header) { diff --git a/Assets/vfx-graph-gs/SplatVFX.vfx b/Assets/vfx-graph-gs/SplatVFX.vfx index c73b8d1..ebf18ef 100644 --- a/Assets/vfx-graph-gs/SplatVFX.vfx +++ b/Assets/vfx-graph-gs/SplatVFX.vfx @@ -68,10 +68,10 @@ MonoBehaviour: categories: [] uiBounds: serializedVersion: 2 - x: 269 + x: 283 y: -492 - width: 885 - height: 1049 + width: 871 + height: 1065 --- !u!114 &114350483966674976 MonoBehaviour: m_ObjectHideFlags: 1 @@ -145,8 +145,8 @@ MonoBehaviour: capacity: 10000 stripCapacity: 16 particlePerStripCount: 16 - needsComputeBounds: 1 - boundsMode: 2 + needsComputeBounds: 0 + boundsMode: 0 m_Space: 0 --- !u!114 &114946465509916290 MonoBehaviour: @@ -168,6 +168,7 @@ MonoBehaviour: m_UICollapsed: 0 m_UISuperCollapsed: 0 m_InputSlots: + - {fileID: 8926484042661614672} - {fileID: 8926484042661614562} m_OutputSlots: [] m_Label: Initialize Particles @@ -589,7 +590,7 @@ MonoBehaviour: linkedSlots: - outputSlot: {fileID: 8926484042661614594} inputSlot: {fileID: 8926484042661614654} - position: {x: 297, y: 19} + position: {x: 311, y: 18} expandedSlots: [] expanded: 1 supecollapsed: 1 @@ -763,7 +764,7 @@ MonoBehaviour: m_UIIgnoredErrors: [] m_Parent: {fileID: 114350483966674976} m_Children: [] - m_UIPosition: {x: 269, y: 62} + m_UIPosition: {x: 283, y: 61} m_UICollapsed: 0 m_UISuperCollapsed: 1 m_InputSlots: [] @@ -834,7 +835,7 @@ MonoBehaviour: m_SerializableType: UnityEditor.VFX.Position, Unity.VisualEffectGraph.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null m_SerializableObject: '{"position":{"x":0.0,"y":0.0,"z":1.0}}' - m_Space: 1 + m_Space: 0 m_Property: name: _Position m_serializedType: @@ -993,7 +994,7 @@ MonoBehaviour: m_UIIgnoredErrors: [] m_Parent: {fileID: 114350483966674976} m_Children: [] - m_UIPosition: {x: 485, y: 62} + m_UIPosition: {x: 499, y: 61} m_UICollapsed: 0 m_UISuperCollapsed: 1 m_InputSlots: @@ -1271,3 +1272,309 @@ MonoBehaviour: PublicKeyToken=b77a5c561934e089 m_Direction: 0 m_LinkedSlots: [] +--- !u!114 &8926484042661614672 +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: 1b605c022ee79394a8a776c0869b3f9a, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlot + m_UIIgnoredErrors: [] + m_Parent: {fileID: 0} + m_Children: + - {fileID: 8926484042661614673} + - {fileID: 8926484042661614677} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 114946465509916290} + m_Value: + m_Type: + m_SerializableType: UnityEditor.VFX.AABox, Unity.VisualEffectGraph.Editor, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_SerializableObject: '{"center":{"x":0.0,"y":0.0,"z":0.0},"size":{"x":1.0,"y":1.0,"z":1.0}}' + m_Space: 0 + m_Property: + name: bounds + m_serializedType: + m_SerializableType: UnityEditor.VFX.AABox, Unity.VisualEffectGraph.Editor, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614673 +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: ac39bd03fca81b849929b9c966f1836a, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlotFloat3 + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614672} + m_Children: + - {fileID: 8926484042661614674} + - {fileID: 8926484042661614675} + - {fileID: 8926484042661614676} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: -1 + m_Property: + name: center + m_serializedType: + m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614674 +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: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlotFloat + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614673} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: -1 + m_Property: + name: x + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614675 +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: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlotFloat + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614673} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: -1 + m_Property: + name: y + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614676 +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: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlotFloat + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614673} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: -1 + m_Property: + name: z + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614677 +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: ac39bd03fca81b849929b9c966f1836a, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlotFloat3 + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614672} + m_Children: + - {fileID: 8926484042661614678} + - {fileID: 8926484042661614679} + - {fileID: 8926484042661614680} + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: -1 + m_Property: + name: size + m_serializedType: + m_SerializableType: UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614678 +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: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlotFloat + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614677} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: -1 + m_Property: + name: x + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614679 +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: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlotFloat + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614677} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: -1 + m_Property: + name: y + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: [] +--- !u!114 &8926484042661614680 +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: f780aa281814f9842a7c076d436932e7, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.VisualEffectGraph.Editor::UnityEditor.VFX.VFXSlotFloat + m_UIIgnoredErrors: [] + m_Parent: {fileID: 8926484042661614677} + m_Children: [] + m_UIPosition: {x: 0, y: 0} + m_UICollapsed: 1 + m_UISuperCollapsed: 0 + m_MasterSlot: {fileID: 8926484042661614672} + m_MasterData: + m_Owner: {fileID: 0} + m_Value: + m_Type: + m_SerializableType: + m_SerializableObject: + m_Space: -1 + m_Property: + name: z + m_serializedType: + m_SerializableType: System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + m_Direction: 0 + m_LinkedSlots: []