├── .gitignore
├── .gitmodules
├── Assembly-CSharp-Editor.csproj.DotSettings
├── Assembly-CSharp.csproj.DotSettings
├── Assets
├── BOXOPHOBIC.meta
├── BOXOPHOBIC
│ ├── Skybox Cubemap Extended.meta
│ └── Skybox Cubemap Extended
│ │ ├── Materials.meta
│ │ ├── Materials
│ │ ├── LowPoly - FirTree.mat
│ │ ├── LowPoly - FirTree.mat.meta
│ │ ├── LowPoly - FirTreeVariation.mat
│ │ ├── LowPoly - FirTreeVariation.mat.meta
│ │ ├── LowPoly - Grass.mat
│ │ ├── LowPoly - Grass.mat.meta
│ │ ├── LowPoly - Rock.mat
│ │ ├── LowPoly - Rock.mat.meta
│ │ ├── LowPoly - Terrain.mat
│ │ ├── LowPoly - Terrain.mat.meta
│ │ ├── LowPoly - TreeTrunk.mat
│ │ ├── LowPoly - TreeTrunk.mat.meta
│ │ ├── LowPoly - Wood.mat
│ │ ├── LowPoly - Wood.mat.meta
│ │ ├── Skybox Cubemap Extended.mat
│ │ └── Skybox Cubemap Extended.mat.meta
│ │ ├── Meshes.meta
│ │ ├── Meshes
│ │ ├── LowPoly - Fence A.FBX
│ │ ├── LowPoly - Fence A.FBX.meta
│ │ ├── LowPoly - Fence B.FBX
│ │ ├── LowPoly - Fence B.FBX.meta
│ │ ├── LowPoly - FirTree A.FBX
│ │ ├── LowPoly - FirTree A.FBX.meta
│ │ ├── LowPoly - FirTree B.FBX
│ │ ├── LowPoly - FirTree B.FBX.meta
│ │ ├── LowPoly - Grass A.FBX
│ │ ├── LowPoly - Grass A.FBX.meta
│ │ ├── LowPoly - Grass B.FBX
│ │ ├── LowPoly - Grass B.FBX.meta
│ │ ├── LowPoly - Rock A.FBX
│ │ ├── LowPoly - Rock A.FBX.meta
│ │ ├── LowPoly - Rock B.FBX
│ │ ├── LowPoly - Rock B.FBX.meta
│ │ ├── LowPoly - Terrain.FBX
│ │ └── LowPoly - Terrain.FBX.meta
│ │ ├── Prefabs.meta
│ │ ├── Prefabs
│ │ ├── LowPoly - Fence A.prefab
│ │ ├── LowPoly - Fence A.prefab.meta
│ │ ├── LowPoly - Fence B.prefab
│ │ ├── LowPoly - Fence B.prefab.meta
│ │ ├── LowPoly - FirTree A.prefab
│ │ ├── LowPoly - FirTree A.prefab.meta
│ │ ├── LowPoly - FirTree B.prefab
│ │ ├── LowPoly - FirTree B.prefab.meta
│ │ ├── LowPoly - Grass A.prefab
│ │ ├── LowPoly - Grass A.prefab.meta
│ │ ├── LowPoly - Grass B.prefab
│ │ ├── LowPoly - Grass B.prefab.meta
│ │ ├── LowPoly - Rock A.prefab
│ │ ├── LowPoly - Rock A.prefab.meta
│ │ ├── LowPoly - Rock B.prefab
│ │ └── LowPoly - Rock B.prefab.meta
│ │ ├── Shaders.meta
│ │ ├── Shaders
│ │ ├── Skybox Cubemap Extended.shader
│ │ └── Skybox Cubemap Extended.shader.meta
│ │ ├── Skybox Cubemap Extended.pdf
│ │ ├── Skybox Cubemap Extended.pdf.meta
│ │ ├── Textures.meta
│ │ └── Textures
│ │ ├── Polyverse Skies - Blue Sky.png
│ │ └── Polyverse Skies - Blue Sky.png.meta
├── NodeEditor.meta
├── Scenes.meta
├── Scenes
│ ├── SampleScene.unity
│ └── SampleScene.unity.meta
├── SuperBlur.meta
├── SuperBlur
│ ├── Core.meta
│ ├── Core
│ │ ├── SuperBlurBase.cs
│ │ └── SuperBlurBase.cs.meta
│ ├── Material.meta
│ ├── Material
│ │ ├── SuperBlurPostEffect.mat
│ │ ├── SuperBlurPostEffect.mat.meta
│ │ ├── SuperBlurUI.mat
│ │ └── SuperBlurUI.mat.meta
│ ├── Shader.meta
│ ├── Shader
│ │ ├── SuperBlurPostEffect.shader
│ │ ├── SuperBlurPostEffect.shader.meta
│ │ ├── SuperBlurUI.shader
│ │ └── SuperBlurUI.shader.meta
│ ├── SuperBlur.cs
│ ├── SuperBlur.cs.meta
│ ├── SuperBlurFast.cs
│ └── SuperBlurFast.cs.meta
├── UINodeEditor.meta
└── UINodeEditor
│ ├── Examples.meta
│ ├── Examples
│ ├── Demo.unity
│ ├── Demo.unity.meta
│ ├── Example Graph.asset
│ └── Example Graph.asset.meta
│ ├── Materials.meta
│ ├── Materials
│ ├── Blur Screen Sprite.mat
│ └── Blur Screen Sprite.mat.meta
│ ├── Scripts.meta
│ ├── Scripts
│ ├── Editor.meta
│ ├── Editor
│ │ ├── UIGraphObjectInspector.cs
│ │ ├── UIGraphObjectInspector.cs.meta
│ │ ├── UINodeEditor-Editor.asmdef
│ │ └── UINodeEditor-Editor.asmdef.meta
│ ├── MeshRepository.cs
│ ├── MeshRepository.cs.meta
│ ├── Nodes.meta
│ ├── Nodes
│ │ ├── AbstractUINode.cs
│ │ ├── AbstractUINode.cs.meta
│ │ ├── CameraNode.cs
│ │ ├── CameraNode.cs.meta
│ │ ├── Elements.meta
│ │ ├── Elements
│ │ │ ├── FilledImageNode.cs
│ │ │ ├── FilledImageNode.cs.meta
│ │ │ ├── GraphicNode.cs
│ │ │ ├── GraphicNode.cs.meta
│ │ │ ├── SimpleImageNode.cs
│ │ │ ├── SimpleImageNode.cs.meta
│ │ │ ├── SlicedImageNode.cs
│ │ │ ├── SlicedImageNode.cs.meta
│ │ │ ├── TextNode.cs
│ │ │ ├── TextNode.cs.meta
│ │ │ ├── TiledImageNode.cs
│ │ │ ├── TiledImageNode.cs.meta
│ │ │ ├── UIElementNode.cs
│ │ │ └── UIElementNode.cs.meta
│ │ ├── ExecutionFilterNode.cs
│ │ ├── ExecutionFilterNode.cs.meta
│ │ ├── ExecutionNode.cs
│ │ ├── ExecutionNode.cs.meta
│ │ ├── Input.meta
│ │ ├── Input
│ │ │ ├── MousePositionNode.cs
│ │ │ ├── MousePositionNode.cs.meta
│ │ │ ├── RectTransformNode.cs
│ │ │ ├── RectTransformNode.cs.meta
│ │ │ ├── ScreenMatrixNode.cs
│ │ │ └── ScreenMatrixNode.cs.meta
│ │ ├── Math.meta
│ │ ├── Math
│ │ │ ├── MultiplyNode.cs
│ │ │ ├── MultiplyNode.cs.meta
│ │ │ ├── Scale.cs
│ │ │ └── Scale.cs.meta
│ │ ├── MatrixBuilderNode.cs
│ │ ├── MatrixBuilderNode.cs.meta
│ │ ├── RectMatrixBuilderNode.cs
│ │ ├── RectMatrixBuilderNode.cs.meta
│ │ ├── SlotChangeListener.cs
│ │ ├── SlotChangeListener.cs.meta
│ │ ├── TimerNode.cs
│ │ ├── TimerNode.cs.meta
│ │ ├── To2DNode.cs
│ │ ├── To2DNode.cs.meta
│ │ ├── To3DNode.cs
│ │ ├── To3DNode.cs.meta
│ │ ├── UIDirtyType.cs
│ │ ├── UIDirtyType.cs.meta
│ │ ├── UIMasterNode.cs
│ │ └── UIMasterNode.cs.meta
│ ├── UIEventType.cs
│ ├── UIEventType.cs.meta
│ ├── UIGraphComponent.cs
│ ├── UIGraphComponent.cs.meta
│ ├── UIGraphObject.cs
│ ├── UIGraphObject.cs.meta
│ ├── UIGraphRenderer.cs
│ ├── UIGraphRenderer.cs.meta
│ ├── UINodeEditor.asmdef
│ ├── UINodeEditor.asmdef.meta
│ ├── UIRenderBuffer.cs
│ ├── UIRenderBuffer.cs.meta
│ ├── UIRepaintBuildEventData.cs
│ ├── UIRepaintBuildEventData.cs.meta
│ ├── UIThreadWaitHandle.cs
│ ├── UIThreadWaitHandle.cs.meta
│ ├── UIVertexHelper.cs
│ └── UIVertexHelper.cs.meta
│ ├── Shaders.meta
│ ├── Shaders
│ ├── Sprites-Default.shader
│ └── Sprites-Default.shader.meta
│ ├── Textures.meta
│ ├── Textures
│ ├── heartbeat.png
│ └── heartbeat.png.meta
│ ├── UIEventData.cs
│ └── UIEventData.cs.meta
├── LICENSE
├── Logs
└── Packages-Update.log
├── NodeEditor.csproj.DotSettings
├── Packages
└── manifest.json
├── ProjectSettings
├── AudioManager.asset
├── ClusterInputManager.asset
├── DynamicsManager.asset
├── EditorBuildSettings.asset
├── EditorSettings.asset
├── GraphicsSettings.asset
├── InputManager.asset
├── NavMeshAreas.asset
├── NetworkManager.asset
├── Physics2DSettings.asset
├── PresetManager.asset
├── ProjectSettings.asset
├── ProjectVersion.txt
├── QualitySettings.asset
├── TagManager.asset
├── TimeManager.asset
├── UnityConnectSettings.asset
├── VFXManager.asset
└── XRSettings.asset
├── README.md
├── Screenshots
├── Editor.png
├── Inspector Preview.png
└── UI.png
├── UIElementsSchema
├── UIElements.xsd
├── UnityEditor.Experimental.UIElements.xsd
├── UnityEditor.PackageManager.UI.xsd
└── UnityEngine.Experimental.UIElements.xsd
└── UINodeEditor.csproj.DotSettings
/.gitignore:
--------------------------------------------------------------------------------
1 | [Ll]ibrary/
2 | [Tt]emp/
3 | [Oo]bj/
4 | [Bb]uild/
5 | [Bb]uilds/
6 | Assets/AssetStoreTools*
7 |
8 | # Visual Studio cache directory
9 | .vs/
10 |
11 | # Autogenerated VS/MD/Consulo solution and project files
12 | ExportedObj/
13 | .consulo/
14 | *.csproj
15 | *.unityproj
16 | *.sln
17 | *.suo
18 | *.tmp
19 | *.user
20 | *.userprefs
21 | *.pidb
22 | *.booproj
23 | *.svd
24 | *.pdb
25 | *.opendb
26 |
27 | # Unity3D generated meta files
28 | *.pidb.meta
29 | *.pdb.meta
30 |
31 | # Unity3D Generated File On Crash Reports
32 | sysinfo.txt
33 |
34 | # Builds
35 | *.apk
36 | *.unitypackage
37 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "Assets/NodeEditor"]
2 | path = Assets/NodeEditor
3 | url = git@github.com:simeonradivoev/UIElementNodeGraph.git
4 |
--------------------------------------------------------------------------------
/Assembly-CSharp-Editor.csproj.DotSettings:
--------------------------------------------------------------------------------
1 |
2 | False
3 | True
--------------------------------------------------------------------------------
/Assembly-CSharp.csproj.DotSettings:
--------------------------------------------------------------------------------
1 |
2 | True
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d6469e25c43da1446a7f6e34df7646d9
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c8fac3baa8008d94c8f3a73db2c49ddd
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f5f2b39f73ab79f42a2dd2ccadae1581
3 | folderAsset: yes
4 | timeCreated: 1517938388
5 | licenseType: Store
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - FirTree.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: LowPoly - FirTree
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BottomColorPos: 1
59 | - _BumpScale: 1
60 | - _Cutoff: 0.5
61 | - _DetailNormalMapScale: 1
62 | - _DstBlend: 0
63 | - _Float1: 0
64 | - _Float3: 0
65 | - _GlossMapScale: 1
66 | - _Glossiness: 0.2
67 | - _GlossyReflections: 1
68 | - _Metallic: 0
69 | - _Mode: 0
70 | - _OcclusionStrength: 1
71 | - _Parallax: 0.02
72 | - _Smoothness: 0.2
73 | - _SmoothnessTextureChannel: 0
74 | - _SpecularHighlights: 1
75 | - _SrcBlend: 1
76 | - _TopColorPos: 8
77 | - _UVSec: 0
78 | - _WindAmplitude: 2
79 | - _WindSpeed: 100
80 | - _ZWrite: 1
81 | - __dirty: 0
82 | m_Colors:
83 | - _BottomColor: {r: 0, g: 0.53676474, b: 0.07033476, a: 1}
84 | - _Color: {r: 0.22352943, g: 0.56078434, b: 0.20784315, a: 1}
85 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
86 | - _TopColor: {r: 0.31417936, g: 0.7205882, b: 0.28081742, a: 1}
87 | - _Vector1: {r: 0, g: 0, b: 0, a: 0}
88 | - _WindCycles: {r: 0, g: 0, b: 0.5, a: 0}
89 | - _WindMagnitude: {r: 0, g: 0, b: 0.1, a: 0}
90 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - FirTree.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 138b35dd321622a4d93635b532ae8b8e
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - FirTreeVariation.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: LowPoly - FirTreeVariation
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BottomColorPos: 1
59 | - _BumpScale: 1
60 | - _Cutoff: 0.5
61 | - _DetailNormalMapScale: 1
62 | - _DstBlend: 0
63 | - _Float1: 10
64 | - _Float3: 0.2
65 | - _GlossMapScale: 1
66 | - _Glossiness: 0.2
67 | - _GlossyReflections: 1
68 | - _Metallic: 0
69 | - _Mode: 0
70 | - _OcclusionStrength: 1
71 | - _Parallax: 0.02
72 | - _Smoothness: 0.2
73 | - _SmoothnessTextureChannel: 0
74 | - _SpecularHighlights: 1
75 | - _SrcBlend: 1
76 | - _TopColorPos: 5
77 | - _UVSec: 0
78 | - _WindAmplitude: 2
79 | - _WindSpeed: 100
80 | - _ZWrite: 1
81 | - __dirty: 0
82 | m_Colors:
83 | - _BottomColor: {r: 0.14855024, g: 0.36764702, b: 0.062175572, a: 1}
84 | - _Color: {r: 0.027627591, g: 0.53676474, b: 0.2628841, a: 1}
85 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
86 | - _TopColor: {r: 0.33912262, g: 0.7867647, b: 0.19669113, a: 1}
87 | - _Vector1: {r: 0, g: 0, b: 0, a: 0}
88 | - _WindCycles: {r: 0, g: 0, b: 0.5, a: 0}
89 | - _WindMagnitude: {r: 0, g: 0, b: 0.1, a: 0}
90 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - FirTreeVariation.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0f74119e82d3b3a4d9b2842dbaa2a6ee
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - Grass.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: LowPoly - Grass
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BottomColorPos: 0
59 | - _BumpScale: 1
60 | - _Cutoff: 0.5
61 | - _DetailNormalMapScale: 1
62 | - _DstBlend: 0
63 | - _Float1: 10
64 | - _Float3: 0.2
65 | - _GlossMapScale: 1
66 | - _Glossiness: 0.2
67 | - _GlossyReflections: 1
68 | - _Metallic: 0
69 | - _Mode: 0
70 | - _OcclusionStrength: 1
71 | - _Parallax: 0.02
72 | - _Smoothness: 0.2
73 | - _SmoothnessTextureChannel: 0
74 | - _SpecularHighlights: 1
75 | - _SrcBlend: 1
76 | - _TopColorPos: 1
77 | - _UVSec: 0
78 | - _WindAmplitude: 0.5
79 | - _WindSpeed: 100
80 | - _ZWrite: 1
81 | - __dirty: 0
82 | m_Colors:
83 | - _BottomColor: {r: 0.6544117, g: 0.6453854, b: 0.32720587, a: 1}
84 | - _Color: {r: 0.63509494, g: 0.64705884, b: 0.076124564, a: 1}
85 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
86 | - _TopColor: {r: 0.6356229, g: 0.8602941, b: 0.2087478, a: 1}
87 | - _Vector1: {r: 0, g: 0, b: 0, a: 0}
88 | - _WindCycles: {r: 1, g: 0, b: 1, a: 0}
89 | - _WindMagnitude: {r: 0, g: 0, b: 2, a: 0}
90 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - Grass.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6fc6652ed834922468cdd63bb95f7fe2
3 | timeCreated: 1492252307
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - Rock.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: LowPoly - Rock
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BottomColorPos: 0
59 | - _BumpScale: 1
60 | - _Cutoff: 0.5
61 | - _DetailNormalMapScale: 1
62 | - _DstBlend: 0
63 | - _GlossMapScale: 1
64 | - _Glossiness: 0.2
65 | - _GlossyReflections: 1
66 | - _Metallic: 0
67 | - _Mode: 0
68 | - _OcclusionStrength: 1
69 | - _Parallax: 0.02
70 | - _Smoothness: 0.3
71 | - _SmoothnessTextureChannel: 0
72 | - _SpecularHighlights: 1
73 | - _SrcBlend: 1
74 | - _TopColorPos: 10
75 | - _UVSec: 0
76 | - _WindAmplitude: 0.2
77 | - _WindSpeed: 10
78 | - _ZWrite: 1
79 | - __dirty: 0
80 | m_Colors:
81 | - _BottomColor: {r: 0.63235295, g: 0.63235295, b: 0.63235295, a: 1}
82 | - _Color: {r: 0.74509805, g: 0.854902, b: 0.8941177, a: 1}
83 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
84 | - _TopColor: {r: 0.46929064, g: 0.7286724, b: 0.9117647, a: 1}
85 | - _WindCycles: {r: 0, g: 0, b: 0, a: 0}
86 | - _WindMagnitude: {r: 0, g: 0, b: 0, a: 0}
87 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - Rock.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 37524ae4594222f4f8acd7b76234f79a
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - Terrain.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: LowPoly - Terrain
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BumpScale: 1
59 | - _Cutoff: 0.5
60 | - _DetailNormalMapScale: 1
61 | - _DstBlend: 0
62 | - _GlossMapScale: 1
63 | - _Glossiness: 0.2
64 | - _GlossyReflections: 1
65 | - _Metallic: 0
66 | - _Mode: 0
67 | - _OcclusionStrength: 1
68 | - _Parallax: 0.02
69 | - _SmoothnessTextureChannel: 0
70 | - _SpecularHighlights: 1
71 | - _SrcBlend: 1
72 | - _UVSec: 0
73 | - _ZWrite: 1
74 | m_Colors:
75 | - _Color: {r: 0.5441177, g: 0.5441177, b: 0.5441177, a: 1}
76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
77 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - Terrain.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2557d3f1d341fdb4e9d53179c053ffd5
3 | timeCreated: 1517938388
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - TreeTrunk.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: LowPoly - TreeTrunk
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _Bottom: 0
59 | - _BottomColorPos: 0
60 | - _BumpScale: 1
61 | - _Cutoff: 0.5
62 | - _DetailNormalMapScale: 1
63 | - _DstBlend: 0
64 | - _Float0: 0.18
65 | - _Float1: 1
66 | - _Float3: 0.2
67 | - _GlossMapScale: 1
68 | - _Glossiness: 0.2
69 | - _GlossyReflections: 1
70 | - _Metallic: 0
71 | - _Mode: 0
72 | - _MotionSpeed: 10
73 | - _ObjectHeight: 20
74 | - _OcclusionStrength: 1
75 | - _Parallax: 0.02
76 | - _Smoothness: 0.2
77 | - _SmoothnessTextureChannel: 0
78 | - _SpecularHighlights: 1
79 | - _SrcBlend: 1
80 | - _Top: 10
81 | - _TopColorPos: 10
82 | - _UVSec: 0
83 | - _WaveDirectionZX: 0
84 | - _WaveHeight: 0.5
85 | - _WaveMagnitude: 1
86 | - _WaveSpeed: 400
87 | - _WindAmplitude: 2
88 | - _WindSpeed: 100
89 | - _ZWrite: 1
90 | - __dirty: 0
91 | m_Colors:
92 | - _BottomColor: {r: 0.43382335, g: 0.2423427, b: 0, a: 1}
93 | - _Color: {r: 0.41911763, g: 0.29521018, b: 0.24962153, a: 1}
94 | - _Color1: {r: 1, g: 0, b: 0, a: 1}
95 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
96 | - _SpecColor: {r: 1, g: 1, b: 1, a: 1}
97 | - _TopColor: {r: 0.8088235, g: 0.70054287, b: 0.41630623, a: 1}
98 | - _Vector0: {r: 0, g: 0, b: 0.2, a: 0}
99 | - _Vector1: {r: 0, g: 0, b: 0, a: 0}
100 | - _WindCycles: {r: 0, g: 0, b: 0.5, a: 0}
101 | - _WindDirection: {r: 0, g: 0, b: 0, a: 0}
102 | - _WindDirectionandMagnitude: {r: 0, g: 0, b: 0, a: 0}
103 | - _WindMagnitude: {r: 0, g: 0, b: 0.1, a: 0}
104 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - TreeTrunk.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2a8f9a878cb7cff45b00339938d945ce
3 | timeCreated: 1491898618
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - Wood.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: LowPoly - Wood
10 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
11 | m_ShaderKeywords:
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BumpScale: 1
59 | - _Cutoff: 0.5
60 | - _DetailNormalMapScale: 1
61 | - _DstBlend: 0
62 | - _GlossMapScale: 1
63 | - _Glossiness: 0.2
64 | - _GlossyReflections: 1
65 | - _Metallic: 0
66 | - _Mode: 0
67 | - _OcclusionStrength: 1
68 | - _Parallax: 0.02
69 | - _SmoothnessTextureChannel: 0
70 | - _SpecularHighlights: 1
71 | - _SrcBlend: 1
72 | - _UVSec: 0
73 | - _ZWrite: 1
74 | m_Colors:
75 | - _Color: {r: 0.81617653, g: 0.4767926, b: 0.21604669, a: 1}
76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
77 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/LowPoly - Wood.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ff059fc016fcf8d4a88162b27e334cba
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/Skybox Cubemap Extended.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: Skybox Cubemap Extended
10 | m_Shader: {fileID: 4800000, guid: 82881a2d011b0964696411c822cdd00b, type: 3}
11 | m_ShaderKeywords: _ENABLEFOG_ON _ENABLEROTATION_ON
12 | m_LightmapFlags: 0
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _Cube:
26 | m_Texture: {fileID: 8900000, guid: 3ce67fee0f260ee47b4d820421fe6ff9, type: 3}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _CubemapHDR:
30 | m_Texture: {fileID: 8900000, guid: beb1457d375110e468b8d8e1f29fccea, type: 3}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailAlbedoMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _DetailMask:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _DetailNormalMap:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _EmissionMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _MainTex:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _MetallicGlossMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | - _OcclusionMap:
58 | m_Texture: {fileID: 0}
59 | m_Scale: {x: 1, y: 1}
60 | m_Offset: {x: 0, y: 0}
61 | - _ParallaxMap:
62 | m_Texture: {fileID: 0}
63 | m_Scale: {x: 1, y: 1}
64 | m_Offset: {x: 0, y: 0}
65 | - _Tex:
66 | m_Texture: {fileID: 8900000, guid: beb1457d375110e468b8d8e1f29fccea, type: 3}
67 | m_Scale: {x: 1, y: 1}
68 | m_Offset: {x: 0, y: 0}
69 | - _Texture0:
70 | m_Texture: {fileID: 8900000, guid: 3ce67fee0f260ee47b4d820421fe6ff9, type: 3}
71 | m_Scale: {x: 1, y: 1}
72 | m_Offset: {x: 0, y: 0}
73 | - _tex:
74 | m_Texture: {fileID: 8900000, guid: 3ce67fee0f260ee47b4d820421fe6ff9, type: 3}
75 | m_Scale: {x: 1, y: 1}
76 | m_Offset: {x: 0, y: 0}
77 | m_Floats:
78 | - _BumpScale: 1
79 | - _Cutoff: 0.5
80 | - _DetailNormalMapScale: 1
81 | - _DstBlend: 0
82 | - _EnableFog: 1
83 | - _EnableRotation: 1
84 | - _Exposure: 1
85 | - _FogFill: 0
86 | - _FogHeight: 0.6
87 | - _FogSmoothness: 0.01
88 | - _GlossMapScale: 1
89 | - _Glossiness: 0.5
90 | - _GlossyReflections: 1
91 | - _Metallic: 0
92 | - _Mode: 0
93 | - _OcclusionStrength: 1
94 | - _Parallax: 0.02
95 | - _Rotation: 0
96 | - _RotationSpeed: 2
97 | - _SmoothnessTextureChannel: 0
98 | - _SpecularHighlights: 1
99 | - _SrcBlend: 1
100 | - _UVSec: 0
101 | - _ZWrite: 1
102 | - __dirty: 0
103 | m_Colors:
104 | - _Color: {r: 1, g: 1, b: 1, a: 1}
105 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
106 | - _Tex_HDR: {r: 1, g: 1, b: 0, a: 0}
107 | - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
108 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Materials/Skybox Cubemap Extended.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2bd8959f5fbd3644aa33af1a155fc147
3 | timeCreated: 1513355756
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 2100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 25d3f6e5ef9743646a02401c50311822
3 | folderAsset: yes
4 | timeCreated: 1517938353
5 | licenseType: Store
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Fence A.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Fence A.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Fence A.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 719d923d0fff4604dad00bd968b563b2
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: //RootNode
9 | 400000: //RootNode
10 | 2300000: //RootNode
11 | 3300000: //RootNode
12 | 4300000: LowPolyFence_01
13 | 9500000: //RootNode
14 | materials:
15 | importMaterials: 0
16 | materialName: 0
17 | materialSearch: 1
18 | animations:
19 | legacyGenerateAnimations: 4
20 | bakeSimulation: 0
21 | resampleCurves: 1
22 | optimizeGameObjects: 0
23 | motionNodeName:
24 | rigImportErrors:
25 | rigImportWarnings:
26 | animationImportErrors:
27 | animationImportWarnings:
28 | animationRetargetingWarnings:
29 | animationDoRetargetingWarnings: 0
30 | animationCompression: 1
31 | animationRotationError: 0.5
32 | animationPositionError: 0.5
33 | animationScaleError: 0.5
34 | animationWrapMode: 0
35 | extraExposedTransformPaths: []
36 | clipAnimations: []
37 | isReadable: 1
38 | meshes:
39 | lODScreenPercentages: []
40 | globalScale: 1
41 | meshCompression: 0
42 | addColliders: 0
43 | importBlendShapes: 1
44 | swapUVChannels: 0
45 | generateSecondaryUV: 1
46 | useFileUnits: 1
47 | optimizeMeshForGPU: 1
48 | keepQuads: 0
49 | weldVertices: 1
50 | secondaryUVAngleDistortion: 8
51 | secondaryUVAreaDistortion: 15.000001
52 | secondaryUVHardAngle: 88
53 | secondaryUVPackMargin: 4
54 | useFileScale: 1
55 | tangentSpace:
56 | normalSmoothAngle: 60
57 | normalImportMode: 0
58 | tangentImportMode: 3
59 | importAnimation: 1
60 | copyAvatar: 0
61 | humanDescription:
62 | serializedVersion: 2
63 | human: []
64 | skeleton: []
65 | armTwist: 0.5
66 | foreArmTwist: 0.5
67 | upperLegTwist: 0.5
68 | legTwist: 0.5
69 | armStretch: 0.05
70 | legStretch: 0.05
71 | feetSpacing: 0
72 | rootMotionBoneName:
73 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
74 | hasTranslationDoF: 0
75 | hasExtraRoot: 0
76 | skeletonHasParents: 1
77 | lastHumanDescriptionAvatarSource: {instanceID: 0}
78 | animationType: 2
79 | humanoidOversampling: 1
80 | additionalBone: 0
81 | userData:
82 | assetBundleName:
83 | assetBundleVariant:
84 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Fence B.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Fence B.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Fence B.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6c41d268699e27248a4354335b2a76ee
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: //RootNode
9 | 400000: //RootNode
10 | 2300000: //RootNode
11 | 3300000: //RootNode
12 | 4300000: LowPolyFence_02
13 | 9500000: //RootNode
14 | materials:
15 | importMaterials: 0
16 | materialName: 0
17 | materialSearch: 1
18 | animations:
19 | legacyGenerateAnimations: 4
20 | bakeSimulation: 0
21 | resampleCurves: 1
22 | optimizeGameObjects: 0
23 | motionNodeName:
24 | rigImportErrors:
25 | rigImportWarnings:
26 | animationImportErrors:
27 | animationImportWarnings:
28 | animationRetargetingWarnings:
29 | animationDoRetargetingWarnings: 0
30 | animationCompression: 1
31 | animationRotationError: 0.5
32 | animationPositionError: 0.5
33 | animationScaleError: 0.5
34 | animationWrapMode: 0
35 | extraExposedTransformPaths: []
36 | clipAnimations: []
37 | isReadable: 1
38 | meshes:
39 | lODScreenPercentages: []
40 | globalScale: 1
41 | meshCompression: 0
42 | addColliders: 0
43 | importBlendShapes: 1
44 | swapUVChannels: 0
45 | generateSecondaryUV: 1
46 | useFileUnits: 1
47 | optimizeMeshForGPU: 1
48 | keepQuads: 0
49 | weldVertices: 1
50 | secondaryUVAngleDistortion: 8
51 | secondaryUVAreaDistortion: 15.000001
52 | secondaryUVHardAngle: 88
53 | secondaryUVPackMargin: 4
54 | useFileScale: 1
55 | tangentSpace:
56 | normalSmoothAngle: 60
57 | normalImportMode: 0
58 | tangentImportMode: 3
59 | importAnimation: 1
60 | copyAvatar: 0
61 | humanDescription:
62 | serializedVersion: 2
63 | human: []
64 | skeleton: []
65 | armTwist: 0.5
66 | foreArmTwist: 0.5
67 | upperLegTwist: 0.5
68 | legTwist: 0.5
69 | armStretch: 0.05
70 | legStretch: 0.05
71 | feetSpacing: 0
72 | rootMotionBoneName:
73 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
74 | hasTranslationDoF: 0
75 | hasExtraRoot: 0
76 | skeletonHasParents: 1
77 | lastHumanDescriptionAvatarSource: {instanceID: 0}
78 | animationType: 2
79 | humanoidOversampling: 1
80 | additionalBone: 0
81 | userData:
82 | assetBundleName:
83 | assetBundleVariant:
84 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - FirTree A.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - FirTree A.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - FirTree A.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7f9b57a02a16e55429c68854f45a8801
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: //RootNode
9 | 400000: //RootNode
10 | 2300000: //RootNode
11 | 3300000: //RootNode
12 | 4300000: LowPolyFirTree_01
13 | 9500000: //RootNode
14 | materials:
15 | importMaterials: 0
16 | materialName: 0
17 | materialSearch: 1
18 | animations:
19 | legacyGenerateAnimations: 4
20 | bakeSimulation: 0
21 | resampleCurves: 1
22 | optimizeGameObjects: 0
23 | motionNodeName:
24 | rigImportErrors:
25 | rigImportWarnings:
26 | animationImportErrors:
27 | animationImportWarnings:
28 | animationRetargetingWarnings:
29 | animationDoRetargetingWarnings: 0
30 | animationCompression: 1
31 | animationRotationError: 0.5
32 | animationPositionError: 0.5
33 | animationScaleError: 0.5
34 | animationWrapMode: 0
35 | extraExposedTransformPaths: []
36 | clipAnimations: []
37 | isReadable: 1
38 | meshes:
39 | lODScreenPercentages: []
40 | globalScale: 1
41 | meshCompression: 0
42 | addColliders: 0
43 | importBlendShapes: 1
44 | swapUVChannels: 0
45 | generateSecondaryUV: 1
46 | useFileUnits: 1
47 | optimizeMeshForGPU: 1
48 | keepQuads: 0
49 | weldVertices: 1
50 | secondaryUVAngleDistortion: 8
51 | secondaryUVAreaDistortion: 15.000001
52 | secondaryUVHardAngle: 88
53 | secondaryUVPackMargin: 4
54 | useFileScale: 1
55 | tangentSpace:
56 | normalSmoothAngle: 60
57 | normalImportMode: 0
58 | tangentImportMode: 3
59 | importAnimation: 1
60 | copyAvatar: 0
61 | humanDescription:
62 | serializedVersion: 2
63 | human: []
64 | skeleton: []
65 | armTwist: 0.5
66 | foreArmTwist: 0.5
67 | upperLegTwist: 0.5
68 | legTwist: 0.5
69 | armStretch: 0.05
70 | legStretch: 0.05
71 | feetSpacing: 0
72 | rootMotionBoneName:
73 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
74 | hasTranslationDoF: 0
75 | hasExtraRoot: 0
76 | skeletonHasParents: 1
77 | lastHumanDescriptionAvatarSource: {instanceID: 0}
78 | animationType: 2
79 | humanoidOversampling: 1
80 | additionalBone: 0
81 | userData:
82 | assetBundleName:
83 | assetBundleVariant:
84 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - FirTree B.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - FirTree B.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - FirTree B.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 769d335a9d1fc3948bfb71adea34202c
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: //RootNode
9 | 400000: //RootNode
10 | 2300000: //RootNode
11 | 3300000: //RootNode
12 | 4300000: LowPolyFirTree_02
13 | 9500000: //RootNode
14 | materials:
15 | importMaterials: 0
16 | materialName: 0
17 | materialSearch: 1
18 | animations:
19 | legacyGenerateAnimations: 4
20 | bakeSimulation: 0
21 | resampleCurves: 1
22 | optimizeGameObjects: 0
23 | motionNodeName:
24 | rigImportErrors:
25 | rigImportWarnings:
26 | animationImportErrors:
27 | animationImportWarnings:
28 | animationRetargetingWarnings:
29 | animationDoRetargetingWarnings: 0
30 | animationCompression: 1
31 | animationRotationError: 0.5
32 | animationPositionError: 0.5
33 | animationScaleError: 0.5
34 | animationWrapMode: 0
35 | extraExposedTransformPaths: []
36 | clipAnimations: []
37 | isReadable: 1
38 | meshes:
39 | lODScreenPercentages: []
40 | globalScale: 1
41 | meshCompression: 0
42 | addColliders: 0
43 | importBlendShapes: 1
44 | swapUVChannels: 0
45 | generateSecondaryUV: 1
46 | useFileUnits: 1
47 | optimizeMeshForGPU: 1
48 | keepQuads: 0
49 | weldVertices: 1
50 | secondaryUVAngleDistortion: 8
51 | secondaryUVAreaDistortion: 15.000001
52 | secondaryUVHardAngle: 88
53 | secondaryUVPackMargin: 4
54 | useFileScale: 1
55 | tangentSpace:
56 | normalSmoothAngle: 60
57 | normalImportMode: 0
58 | tangentImportMode: 3
59 | importAnimation: 1
60 | copyAvatar: 0
61 | humanDescription:
62 | serializedVersion: 2
63 | human: []
64 | skeleton: []
65 | armTwist: 0.5
66 | foreArmTwist: 0.5
67 | upperLegTwist: 0.5
68 | legTwist: 0.5
69 | armStretch: 0.05
70 | legStretch: 0.05
71 | feetSpacing: 0
72 | rootMotionBoneName:
73 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
74 | hasTranslationDoF: 0
75 | hasExtraRoot: 0
76 | skeletonHasParents: 1
77 | lastHumanDescriptionAvatarSource: {instanceID: 0}
78 | animationType: 2
79 | humanoidOversampling: 1
80 | additionalBone: 0
81 | userData:
82 | assetBundleName:
83 | assetBundleVariant:
84 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Grass A.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Grass A.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Grass A.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8af3079b5c79b6b4c825cc71e71ef97d
3 | timeCreated: 1492253362
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: Box010
9 | 100002: Box011
10 | 100004: Box012
11 | 100006: Box013
12 | 100008: Box014
13 | 100010: Box015
14 | 100012: Box016
15 | 100014: //RootNode
16 | 400000: Box010
17 | 400002: Box011
18 | 400004: Box012
19 | 400006: Box013
20 | 400008: Box014
21 | 400010: Box015
22 | 400012: Box016
23 | 400014: //RootNode
24 | 2300000: Box010
25 | 2300002: Box011
26 | 2300004: Box012
27 | 2300006: Box013
28 | 2300008: Box014
29 | 2300010: Box015
30 | 2300012: Box016
31 | 2300014: //RootNode
32 | 3300000: Box010
33 | 3300002: Box011
34 | 3300004: Box012
35 | 3300006: Box013
36 | 3300008: Box014
37 | 3300010: Box015
38 | 3300012: Box016
39 | 3300014: //RootNode
40 | 4300000: Box010
41 | 4300002: Box011
42 | 4300004: Box012
43 | 4300006: Box013
44 | 4300008: Box014
45 | 4300010: Box015
46 | 4300012: Box016
47 | 4300014: LowPolyGrass_01
48 | 9500000: //RootNode
49 | materials:
50 | importMaterials: 0
51 | materialName: 0
52 | materialSearch: 1
53 | animations:
54 | legacyGenerateAnimations: 4
55 | bakeSimulation: 0
56 | resampleCurves: 1
57 | optimizeGameObjects: 0
58 | motionNodeName:
59 | rigImportErrors:
60 | rigImportWarnings:
61 | animationImportErrors:
62 | animationImportWarnings:
63 | animationRetargetingWarnings:
64 | animationDoRetargetingWarnings: 0
65 | animationCompression: 1
66 | animationRotationError: 0.5
67 | animationPositionError: 0.5
68 | animationScaleError: 0.5
69 | animationWrapMode: 0
70 | extraExposedTransformPaths: []
71 | clipAnimations: []
72 | isReadable: 1
73 | meshes:
74 | lODScreenPercentages: []
75 | globalScale: 1
76 | meshCompression: 0
77 | addColliders: 0
78 | importBlendShapes: 1
79 | swapUVChannels: 0
80 | generateSecondaryUV: 1
81 | useFileUnits: 1
82 | optimizeMeshForGPU: 1
83 | keepQuads: 0
84 | weldVertices: 1
85 | secondaryUVAngleDistortion: 8
86 | secondaryUVAreaDistortion: 15.000001
87 | secondaryUVHardAngle: 88
88 | secondaryUVPackMargin: 4
89 | useFileScale: 1
90 | tangentSpace:
91 | normalSmoothAngle: 60
92 | normalImportMode: 0
93 | tangentImportMode: 3
94 | importAnimation: 1
95 | copyAvatar: 0
96 | humanDescription:
97 | serializedVersion: 2
98 | human: []
99 | skeleton: []
100 | armTwist: 0.5
101 | foreArmTwist: 0.5
102 | upperLegTwist: 0.5
103 | legTwist: 0.5
104 | armStretch: 0.05
105 | legStretch: 0.05
106 | feetSpacing: 0
107 | rootMotionBoneName:
108 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
109 | hasTranslationDoF: 0
110 | hasExtraRoot: 0
111 | skeletonHasParents: 1
112 | lastHumanDescriptionAvatarSource: {instanceID: 0}
113 | animationType: 2
114 | humanoidOversampling: 1
115 | additionalBone: 0
116 | userData:
117 | assetBundleName:
118 | assetBundleVariant:
119 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Grass B.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Grass B.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Grass B.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0860e6fc68e57ae48b5ae6e854f8f6b1
3 | timeCreated: 1492253641
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: Box017
9 | 100002: Box018
10 | 100004: Box019
11 | 100006: Box020
12 | 100008: Box021
13 | 100010: //RootNode
14 | 400000: Box017
15 | 400002: Box018
16 | 400004: Box019
17 | 400006: Box020
18 | 400008: Box021
19 | 400010: //RootNode
20 | 2300000: Box017
21 | 2300002: Box018
22 | 2300004: Box019
23 | 2300006: Box020
24 | 2300008: Box021
25 | 2300010: //RootNode
26 | 3300000: Box017
27 | 3300002: Box018
28 | 3300004: Box019
29 | 3300006: Box020
30 | 3300008: Box021
31 | 3300010: //RootNode
32 | 4300000: Box017
33 | 4300002: Box018
34 | 4300004: Box019
35 | 4300006: Box020
36 | 4300008: Box021
37 | 4300010: LowPolyGrass_02
38 | 9500000: //RootNode
39 | materials:
40 | importMaterials: 0
41 | materialName: 0
42 | materialSearch: 1
43 | animations:
44 | legacyGenerateAnimations: 4
45 | bakeSimulation: 0
46 | resampleCurves: 1
47 | optimizeGameObjects: 0
48 | motionNodeName:
49 | rigImportErrors:
50 | rigImportWarnings:
51 | animationImportErrors:
52 | animationImportWarnings:
53 | animationRetargetingWarnings:
54 | animationDoRetargetingWarnings: 0
55 | animationCompression: 1
56 | animationRotationError: 0.5
57 | animationPositionError: 0.5
58 | animationScaleError: 0.5
59 | animationWrapMode: 0
60 | extraExposedTransformPaths: []
61 | clipAnimations: []
62 | isReadable: 1
63 | meshes:
64 | lODScreenPercentages: []
65 | globalScale: 1
66 | meshCompression: 0
67 | addColliders: 0
68 | importBlendShapes: 1
69 | swapUVChannels: 0
70 | generateSecondaryUV: 1
71 | useFileUnits: 1
72 | optimizeMeshForGPU: 1
73 | keepQuads: 0
74 | weldVertices: 1
75 | secondaryUVAngleDistortion: 8
76 | secondaryUVAreaDistortion: 15.000001
77 | secondaryUVHardAngle: 88
78 | secondaryUVPackMargin: 4
79 | useFileScale: 1
80 | tangentSpace:
81 | normalSmoothAngle: 60
82 | normalImportMode: 0
83 | tangentImportMode: 3
84 | importAnimation: 1
85 | copyAvatar: 0
86 | humanDescription:
87 | serializedVersion: 2
88 | human: []
89 | skeleton: []
90 | armTwist: 0.5
91 | foreArmTwist: 0.5
92 | upperLegTwist: 0.5
93 | legTwist: 0.5
94 | armStretch: 0.05
95 | legStretch: 0.05
96 | feetSpacing: 0
97 | rootMotionBoneName:
98 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
99 | hasTranslationDoF: 0
100 | hasExtraRoot: 0
101 | skeletonHasParents: 1
102 | lastHumanDescriptionAvatarSource: {instanceID: 0}
103 | animationType: 2
104 | humanoidOversampling: 1
105 | additionalBone: 0
106 | userData:
107 | assetBundleName:
108 | assetBundleVariant:
109 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Rock A.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Rock A.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Rock A.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 26fb55e8ae34728499f6f45cd0527c73
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: //RootNode
9 | 400000: //RootNode
10 | 2300000: //RootNode
11 | 3300000: //RootNode
12 | 4300000: LowPolyRock_05
13 | 9500000: //RootNode
14 | materials:
15 | importMaterials: 0
16 | materialName: 0
17 | materialSearch: 1
18 | animations:
19 | legacyGenerateAnimations: 4
20 | bakeSimulation: 0
21 | resampleCurves: 1
22 | optimizeGameObjects: 0
23 | motionNodeName:
24 | rigImportErrors:
25 | rigImportWarnings:
26 | animationImportErrors:
27 | animationImportWarnings:
28 | animationRetargetingWarnings:
29 | animationDoRetargetingWarnings: 0
30 | animationCompression: 1
31 | animationRotationError: 0.5
32 | animationPositionError: 0.5
33 | animationScaleError: 0.5
34 | animationWrapMode: 0
35 | extraExposedTransformPaths: []
36 | clipAnimations: []
37 | isReadable: 1
38 | meshes:
39 | lODScreenPercentages: []
40 | globalScale: 1
41 | meshCompression: 0
42 | addColliders: 0
43 | importBlendShapes: 1
44 | swapUVChannels: 0
45 | generateSecondaryUV: 1
46 | useFileUnits: 1
47 | optimizeMeshForGPU: 1
48 | keepQuads: 0
49 | weldVertices: 1
50 | secondaryUVAngleDistortion: 8
51 | secondaryUVAreaDistortion: 15.000001
52 | secondaryUVHardAngle: 88
53 | secondaryUVPackMargin: 4
54 | useFileScale: 1
55 | tangentSpace:
56 | normalSmoothAngle: 60
57 | normalImportMode: 0
58 | tangentImportMode: 3
59 | importAnimation: 1
60 | copyAvatar: 0
61 | humanDescription:
62 | serializedVersion: 2
63 | human: []
64 | skeleton: []
65 | armTwist: 0.5
66 | foreArmTwist: 0.5
67 | upperLegTwist: 0.5
68 | legTwist: 0.5
69 | armStretch: 0.05
70 | legStretch: 0.05
71 | feetSpacing: 0
72 | rootMotionBoneName:
73 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
74 | hasTranslationDoF: 0
75 | hasExtraRoot: 0
76 | skeletonHasParents: 1
77 | lastHumanDescriptionAvatarSource: {instanceID: 0}
78 | animationType: 2
79 | humanoidOversampling: 1
80 | additionalBone: 0
81 | userData:
82 | assetBundleName:
83 | assetBundleVariant:
84 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Rock B.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Rock B.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Rock B.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3ecc1e70424b33546b2dc73bb30a5163
3 | timeCreated: 1491914283
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: //RootNode
9 | 400000: //RootNode
10 | 2300000: //RootNode
11 | 3300000: //RootNode
12 | 4300000: LowPolyRock_06
13 | 9500000: //RootNode
14 | materials:
15 | importMaterials: 0
16 | materialName: 0
17 | materialSearch: 1
18 | animations:
19 | legacyGenerateAnimations: 4
20 | bakeSimulation: 0
21 | resampleCurves: 1
22 | optimizeGameObjects: 0
23 | motionNodeName:
24 | rigImportErrors:
25 | rigImportWarnings:
26 | animationImportErrors:
27 | animationImportWarnings:
28 | animationRetargetingWarnings:
29 | animationDoRetargetingWarnings: 0
30 | animationCompression: 1
31 | animationRotationError: 0.5
32 | animationPositionError: 0.5
33 | animationScaleError: 0.5
34 | animationWrapMode: 0
35 | extraExposedTransformPaths: []
36 | clipAnimations: []
37 | isReadable: 1
38 | meshes:
39 | lODScreenPercentages: []
40 | globalScale: 1
41 | meshCompression: 0
42 | addColliders: 0
43 | importBlendShapes: 1
44 | swapUVChannels: 0
45 | generateSecondaryUV: 1
46 | useFileUnits: 1
47 | optimizeMeshForGPU: 1
48 | keepQuads: 0
49 | weldVertices: 1
50 | secondaryUVAngleDistortion: 8
51 | secondaryUVAreaDistortion: 15.000001
52 | secondaryUVHardAngle: 88
53 | secondaryUVPackMargin: 4
54 | useFileScale: 1
55 | tangentSpace:
56 | normalSmoothAngle: 60
57 | normalImportMode: 0
58 | tangentImportMode: 3
59 | importAnimation: 1
60 | copyAvatar: 0
61 | humanDescription:
62 | serializedVersion: 2
63 | human: []
64 | skeleton: []
65 | armTwist: 0.5
66 | foreArmTwist: 0.5
67 | upperLegTwist: 0.5
68 | legTwist: 0.5
69 | armStretch: 0.05
70 | legStretch: 0.05
71 | feetSpacing: 0
72 | rootMotionBoneName:
73 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
74 | hasTranslationDoF: 0
75 | hasExtraRoot: 0
76 | skeletonHasParents: 1
77 | lastHumanDescriptionAvatarSource: {instanceID: 0}
78 | animationType: 2
79 | humanoidOversampling: 1
80 | additionalBone: 0
81 | userData:
82 | assetBundleName:
83 | assetBundleVariant:
84 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Terrain.FBX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Terrain.FBX
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Meshes/LowPoly - Terrain.FBX.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f3dd2dace832efa4fa391170674edcc1
3 | timeCreated: 1517938388
4 | licenseType: Store
5 | ModelImporter:
6 | serializedVersion: 19
7 | fileIDToRecycleName:
8 | 100000: //RootNode
9 | 400000: //RootNode
10 | 2300000: //RootNode
11 | 3300000: //RootNode
12 | 4300000: LowPolyTerrain
13 | materials:
14 | importMaterials: 0
15 | materialName: 0
16 | materialSearch: 1
17 | animations:
18 | legacyGenerateAnimations: 4
19 | bakeSimulation: 0
20 | resampleCurves: 1
21 | optimizeGameObjects: 0
22 | motionNodeName:
23 | rigImportErrors:
24 | rigImportWarnings:
25 | animationImportErrors:
26 | animationImportWarnings:
27 | animationRetargetingWarnings:
28 | animationDoRetargetingWarnings: 0
29 | animationCompression: 1
30 | animationRotationError: 0.5
31 | animationPositionError: 0.5
32 | animationScaleError: 0.5
33 | animationWrapMode: 0
34 | extraExposedTransformPaths: []
35 | clipAnimations: []
36 | isReadable: 1
37 | meshes:
38 | lODScreenPercentages: []
39 | globalScale: 1
40 | meshCompression: 0
41 | addColliders: 0
42 | importBlendShapes: 1
43 | swapUVChannels: 0
44 | generateSecondaryUV: 1
45 | useFileUnits: 1
46 | optimizeMeshForGPU: 1
47 | keepQuads: 0
48 | weldVertices: 1
49 | secondaryUVAngleDistortion: 8
50 | secondaryUVAreaDistortion: 15.000001
51 | secondaryUVHardAngle: 88
52 | secondaryUVPackMargin: 4
53 | useFileScale: 1
54 | tangentSpace:
55 | normalSmoothAngle: 60
56 | normalImportMode: 0
57 | tangentImportMode: 3
58 | importAnimation: 1
59 | copyAvatar: 0
60 | humanDescription:
61 | serializedVersion: 2
62 | human: []
63 | skeleton: []
64 | armTwist: 0.5
65 | foreArmTwist: 0.5
66 | upperLegTwist: 0.5
67 | legTwist: 0.5
68 | armStretch: 0.05
69 | legStretch: 0.05
70 | feetSpacing: 0
71 | rootMotionBoneName:
72 | rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
73 | hasTranslationDoF: 0
74 | hasExtraRoot: 0
75 | skeletonHasParents: 1
76 | lastHumanDescriptionAvatarSource: {instanceID: 0}
77 | animationType: 0
78 | humanoidOversampling: 1
79 | additionalBone: 0
80 | userData:
81 | assetBundleName:
82 | assetBundleVariant:
83 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2dcb8d72d2d50bf4897662c7aa8cfa01
3 | folderAsset: yes
4 | timeCreated: 1517944529
5 | licenseType: Store
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Fence A.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_SourcePrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1051545866392792}
13 | m_IsPrefabAsset: 1
14 | --- !u!1 &1051545866392792
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_CorrespondingSourceObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 6
20 | m_Component:
21 | - component: {fileID: 4622981333497442}
22 | - component: {fileID: 33764989204799150}
23 | - component: {fileID: 23903698892329218}
24 | m_Layer: 0
25 | m_Name: LowPoly - Fence A
26 | m_TagString: Untagged
27 | m_Icon: {fileID: 0}
28 | m_NavMeshLayer: 0
29 | m_StaticEditorFlags: 0
30 | m_IsActive: 1
31 | --- !u!4 &4622981333497442
32 | Transform:
33 | m_ObjectHideFlags: 1
34 | m_CorrespondingSourceObject: {fileID: 0}
35 | m_PrefabInternal: {fileID: 100100000}
36 | m_GameObject: {fileID: 1051545866392792}
37 | m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
38 | m_LocalPosition: {x: 0, y: 0, z: 0}
39 | m_LocalScale: {x: 1, y: 1, z: 1}
40 | m_Children: []
41 | m_Father: {fileID: 0}
42 | m_RootOrder: 0
43 | m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
44 | --- !u!23 &23903698892329218
45 | MeshRenderer:
46 | m_ObjectHideFlags: 1
47 | m_CorrespondingSourceObject: {fileID: 0}
48 | m_PrefabInternal: {fileID: 100100000}
49 | m_GameObject: {fileID: 1051545866392792}
50 | m_Enabled: 1
51 | m_CastShadows: 1
52 | m_ReceiveShadows: 1
53 | m_DynamicOccludee: 1
54 | m_MotionVectors: 1
55 | m_LightProbeUsage: 1
56 | m_ReflectionProbeUsage: 1
57 | m_RenderingLayerMask: 4294967295
58 | m_Materials:
59 | - {fileID: 2100000, guid: ff059fc016fcf8d4a88162b27e334cba, type: 2}
60 | m_StaticBatchInfo:
61 | firstSubMesh: 0
62 | subMeshCount: 0
63 | m_StaticBatchRoot: {fileID: 0}
64 | m_ProbeAnchor: {fileID: 0}
65 | m_LightProbeVolumeOverride: {fileID: 0}
66 | m_ScaleInLightmap: 1
67 | m_PreserveUVs: 0
68 | m_IgnoreNormalsForChartDetection: 0
69 | m_ImportantGI: 0
70 | m_StitchLightmapSeams: 0
71 | m_SelectedEditorRenderState: 3
72 | m_MinimumChartSize: 4
73 | m_AutoUVMaxDistance: 0.5
74 | m_AutoUVMaxAngle: 89
75 | m_LightmapParameters: {fileID: 0}
76 | m_SortingLayerID: 0
77 | m_SortingLayer: 0
78 | m_SortingOrder: 0
79 | --- !u!33 &33764989204799150
80 | MeshFilter:
81 | m_ObjectHideFlags: 1
82 | m_CorrespondingSourceObject: {fileID: 0}
83 | m_PrefabInternal: {fileID: 100100000}
84 | m_GameObject: {fileID: 1051545866392792}
85 | m_Mesh: {fileID: 4300000, guid: 719d923d0fff4604dad00bd968b563b2, type: 3}
86 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Fence A.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dd3ee0c97aab8a7498c9292f3482f60b
3 | timeCreated: 1492248782
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Fence B.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_SourcePrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1772052688877022}
13 | m_IsPrefabAsset: 1
14 | --- !u!1 &1772052688877022
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_CorrespondingSourceObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 6
20 | m_Component:
21 | - component: {fileID: 4026302497858488}
22 | - component: {fileID: 33668776250296818}
23 | - component: {fileID: 23705309985758732}
24 | m_Layer: 0
25 | m_Name: LowPoly - Fence B
26 | m_TagString: Untagged
27 | m_Icon: {fileID: 0}
28 | m_NavMeshLayer: 0
29 | m_StaticEditorFlags: 0
30 | m_IsActive: 1
31 | --- !u!4 &4026302497858488
32 | Transform:
33 | m_ObjectHideFlags: 1
34 | m_CorrespondingSourceObject: {fileID: 0}
35 | m_PrefabInternal: {fileID: 100100000}
36 | m_GameObject: {fileID: 1772052688877022}
37 | m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
38 | m_LocalPosition: {x: 0, y: 0, z: 0}
39 | m_LocalScale: {x: 1, y: 1, z: 1}
40 | m_Children: []
41 | m_Father: {fileID: 0}
42 | m_RootOrder: 0
43 | m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
44 | --- !u!23 &23705309985758732
45 | MeshRenderer:
46 | m_ObjectHideFlags: 1
47 | m_CorrespondingSourceObject: {fileID: 0}
48 | m_PrefabInternal: {fileID: 100100000}
49 | m_GameObject: {fileID: 1772052688877022}
50 | m_Enabled: 1
51 | m_CastShadows: 1
52 | m_ReceiveShadows: 1
53 | m_DynamicOccludee: 1
54 | m_MotionVectors: 1
55 | m_LightProbeUsage: 1
56 | m_ReflectionProbeUsage: 1
57 | m_RenderingLayerMask: 4294967295
58 | m_Materials:
59 | - {fileID: 2100000, guid: ff059fc016fcf8d4a88162b27e334cba, type: 2}
60 | m_StaticBatchInfo:
61 | firstSubMesh: 0
62 | subMeshCount: 0
63 | m_StaticBatchRoot: {fileID: 0}
64 | m_ProbeAnchor: {fileID: 0}
65 | m_LightProbeVolumeOverride: {fileID: 0}
66 | m_ScaleInLightmap: 1
67 | m_PreserveUVs: 0
68 | m_IgnoreNormalsForChartDetection: 0
69 | m_ImportantGI: 0
70 | m_StitchLightmapSeams: 0
71 | m_SelectedEditorRenderState: 3
72 | m_MinimumChartSize: 4
73 | m_AutoUVMaxDistance: 0.5
74 | m_AutoUVMaxAngle: 89
75 | m_LightmapParameters: {fileID: 0}
76 | m_SortingLayerID: 0
77 | m_SortingLayer: 0
78 | m_SortingOrder: 0
79 | --- !u!33 &33668776250296818
80 | MeshFilter:
81 | m_ObjectHideFlags: 1
82 | m_CorrespondingSourceObject: {fileID: 0}
83 | m_PrefabInternal: {fileID: 100100000}
84 | m_GameObject: {fileID: 1772052688877022}
85 | m_Mesh: {fileID: 4300000, guid: 6c41d268699e27248a4354335b2a76ee, type: 3}
86 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Fence B.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b4974e3ae06d3d245a8353b888faed9d
3 | timeCreated: 1492248817
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - FirTree A.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_SourcePrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1069289201138886}
13 | m_IsPrefabAsset: 1
14 | --- !u!1 &1069289201138886
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_CorrespondingSourceObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 6
20 | m_Component:
21 | - component: {fileID: 4775219554002278}
22 | - component: {fileID: 33326053453097746}
23 | - component: {fileID: 23347498147556770}
24 | m_Layer: 0
25 | m_Name: LowPoly - FirTree A
26 | m_TagString: Untagged
27 | m_Icon: {fileID: 0}
28 | m_NavMeshLayer: 0
29 | m_StaticEditorFlags: 0
30 | m_IsActive: 1
31 | --- !u!4 &4775219554002278
32 | Transform:
33 | m_ObjectHideFlags: 1
34 | m_CorrespondingSourceObject: {fileID: 0}
35 | m_PrefabInternal: {fileID: 100100000}
36 | m_GameObject: {fileID: 1069289201138886}
37 | m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
38 | m_LocalPosition: {x: -0, y: 0, z: 0}
39 | m_LocalScale: {x: 1, y: 1, z: 1}
40 | m_Children: []
41 | m_Father: {fileID: 0}
42 | m_RootOrder: 0
43 | m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
44 | --- !u!23 &23347498147556770
45 | MeshRenderer:
46 | m_ObjectHideFlags: 1
47 | m_CorrespondingSourceObject: {fileID: 0}
48 | m_PrefabInternal: {fileID: 100100000}
49 | m_GameObject: {fileID: 1069289201138886}
50 | m_Enabled: 1
51 | m_CastShadows: 1
52 | m_ReceiveShadows: 1
53 | m_DynamicOccludee: 1
54 | m_MotionVectors: 1
55 | m_LightProbeUsage: 1
56 | m_ReflectionProbeUsage: 1
57 | m_RenderingLayerMask: 4294967295
58 | m_Materials:
59 | - {fileID: 2100000, guid: 2a8f9a878cb7cff45b00339938d945ce, type: 2}
60 | - {fileID: 2100000, guid: 138b35dd321622a4d93635b532ae8b8e, type: 2}
61 | m_StaticBatchInfo:
62 | firstSubMesh: 0
63 | subMeshCount: 0
64 | m_StaticBatchRoot: {fileID: 0}
65 | m_ProbeAnchor: {fileID: 0}
66 | m_LightProbeVolumeOverride: {fileID: 0}
67 | m_ScaleInLightmap: 1
68 | m_PreserveUVs: 0
69 | m_IgnoreNormalsForChartDetection: 0
70 | m_ImportantGI: 0
71 | m_StitchLightmapSeams: 0
72 | m_SelectedEditorRenderState: 3
73 | m_MinimumChartSize: 4
74 | m_AutoUVMaxDistance: 0.5
75 | m_AutoUVMaxAngle: 89
76 | m_LightmapParameters: {fileID: 0}
77 | m_SortingLayerID: 0
78 | m_SortingLayer: 0
79 | m_SortingOrder: 0
80 | --- !u!33 &33326053453097746
81 | MeshFilter:
82 | m_ObjectHideFlags: 1
83 | m_CorrespondingSourceObject: {fileID: 0}
84 | m_PrefabInternal: {fileID: 100100000}
85 | m_GameObject: {fileID: 1069289201138886}
86 | m_Mesh: {fileID: 4300000, guid: 7f9b57a02a16e55429c68854f45a8801, type: 3}
87 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - FirTree A.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6b444276162548b4e9107350b71e775a
3 | timeCreated: 1492248886
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - FirTree B.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_SourcePrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1593950697155818}
13 | m_IsPrefabAsset: 1
14 | --- !u!1 &1593950697155818
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_CorrespondingSourceObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 6
20 | m_Component:
21 | - component: {fileID: 4870204933709518}
22 | - component: {fileID: 33933261752202624}
23 | - component: {fileID: 23109063448187470}
24 | m_Layer: 0
25 | m_Name: LowPoly - FirTree B
26 | m_TagString: Untagged
27 | m_Icon: {fileID: 0}
28 | m_NavMeshLayer: 0
29 | m_StaticEditorFlags: 64
30 | m_IsActive: 1
31 | --- !u!4 &4870204933709518
32 | Transform:
33 | m_ObjectHideFlags: 1
34 | m_CorrespondingSourceObject: {fileID: 0}
35 | m_PrefabInternal: {fileID: 100100000}
36 | m_GameObject: {fileID: 1593950697155818}
37 | m_LocalRotation: {x: -0.70394385, y: -0.13434333, z: -0.10358276, w: 0.6896996}
38 | m_LocalPosition: {x: 12.681194, y: -0.0320303, z: -3.0757337}
39 | m_LocalScale: {x: 1, y: 1, z: 1}
40 | m_Children: []
41 | m_Father: {fileID: 0}
42 | m_RootOrder: 0
43 | m_LocalEulerAnglesHint: {x: -92.746994, y: 55.463997, z: -74.841}
44 | --- !u!23 &23109063448187470
45 | MeshRenderer:
46 | m_ObjectHideFlags: 1
47 | m_CorrespondingSourceObject: {fileID: 0}
48 | m_PrefabInternal: {fileID: 100100000}
49 | m_GameObject: {fileID: 1593950697155818}
50 | m_Enabled: 1
51 | m_CastShadows: 1
52 | m_ReceiveShadows: 1
53 | m_DynamicOccludee: 1
54 | m_MotionVectors: 1
55 | m_LightProbeUsage: 1
56 | m_ReflectionProbeUsage: 1
57 | m_RenderingLayerMask: 4294967295
58 | m_Materials:
59 | - {fileID: 2100000, guid: 2a8f9a878cb7cff45b00339938d945ce, type: 2}
60 | - {fileID: 2100000, guid: 0f74119e82d3b3a4d9b2842dbaa2a6ee, type: 2}
61 | m_StaticBatchInfo:
62 | firstSubMesh: 0
63 | subMeshCount: 0
64 | m_StaticBatchRoot: {fileID: 0}
65 | m_ProbeAnchor: {fileID: 0}
66 | m_LightProbeVolumeOverride: {fileID: 0}
67 | m_ScaleInLightmap: 1
68 | m_PreserveUVs: 0
69 | m_IgnoreNormalsForChartDetection: 0
70 | m_ImportantGI: 0
71 | m_StitchLightmapSeams: 0
72 | m_SelectedEditorRenderState: 3
73 | m_MinimumChartSize: 4
74 | m_AutoUVMaxDistance: 0.5
75 | m_AutoUVMaxAngle: 89
76 | m_LightmapParameters: {fileID: 0}
77 | m_SortingLayerID: 0
78 | m_SortingLayer: 0
79 | m_SortingOrder: 0
80 | --- !u!33 &33933261752202624
81 | MeshFilter:
82 | m_ObjectHideFlags: 1
83 | m_CorrespondingSourceObject: {fileID: 0}
84 | m_PrefabInternal: {fileID: 100100000}
85 | m_GameObject: {fileID: 1593950697155818}
86 | m_Mesh: {fileID: 4300000, guid: 769d335a9d1fc3948bfb71adea34202c, type: 3}
87 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - FirTree B.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d2cd02263a1e8084abf81f1324b929be
3 | timeCreated: 1492248959
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Grass A.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_SourcePrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1435467742513656}
13 | m_IsPrefabAsset: 1
14 | --- !u!1 &1435467742513656
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_CorrespondingSourceObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 6
20 | m_Component:
21 | - component: {fileID: 4945391837379990}
22 | - component: {fileID: 33663724485089272}
23 | - component: {fileID: 23638501506627024}
24 | m_Layer: 0
25 | m_Name: LowPoly - Grass A
26 | m_TagString: Untagged
27 | m_Icon: {fileID: 0}
28 | m_NavMeshLayer: 0
29 | m_StaticEditorFlags: 0
30 | m_IsActive: 1
31 | --- !u!4 &4945391837379990
32 | Transform:
33 | m_ObjectHideFlags: 1
34 | m_CorrespondingSourceObject: {fileID: 0}
35 | m_PrefabInternal: {fileID: 100100000}
36 | m_GameObject: {fileID: 1435467742513656}
37 | m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
38 | m_LocalPosition: {x: -3.011242, y: -0.48745683, z: 7.707407}
39 | m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
40 | m_Children: []
41 | m_Father: {fileID: 0}
42 | m_RootOrder: 0
43 | m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
44 | --- !u!23 &23638501506627024
45 | MeshRenderer:
46 | m_ObjectHideFlags: 1
47 | m_CorrespondingSourceObject: {fileID: 0}
48 | m_PrefabInternal: {fileID: 100100000}
49 | m_GameObject: {fileID: 1435467742513656}
50 | m_Enabled: 1
51 | m_CastShadows: 1
52 | m_ReceiveShadows: 1
53 | m_DynamicOccludee: 1
54 | m_MotionVectors: 1
55 | m_LightProbeUsage: 1
56 | m_ReflectionProbeUsage: 1
57 | m_RenderingLayerMask: 4294967295
58 | m_Materials:
59 | - {fileID: 2100000, guid: 6fc6652ed834922468cdd63bb95f7fe2, type: 2}
60 | m_StaticBatchInfo:
61 | firstSubMesh: 0
62 | subMeshCount: 0
63 | m_StaticBatchRoot: {fileID: 0}
64 | m_ProbeAnchor: {fileID: 0}
65 | m_LightProbeVolumeOverride: {fileID: 0}
66 | m_ScaleInLightmap: 1
67 | m_PreserveUVs: 0
68 | m_IgnoreNormalsForChartDetection: 0
69 | m_ImportantGI: 0
70 | m_StitchLightmapSeams: 0
71 | m_SelectedEditorRenderState: 3
72 | m_MinimumChartSize: 4
73 | m_AutoUVMaxDistance: 0.5
74 | m_AutoUVMaxAngle: 89
75 | m_LightmapParameters: {fileID: 0}
76 | m_SortingLayerID: 0
77 | m_SortingLayer: 0
78 | m_SortingOrder: 0
79 | --- !u!33 &33663724485089272
80 | MeshFilter:
81 | m_ObjectHideFlags: 1
82 | m_CorrespondingSourceObject: {fileID: 0}
83 | m_PrefabInternal: {fileID: 100100000}
84 | m_GameObject: {fileID: 1435467742513656}
85 | m_Mesh: {fileID: 4300014, guid: 8af3079b5c79b6b4c825cc71e71ef97d, type: 3}
86 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Grass A.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9b6eba5dea9e77a4abd8f45df1ffffb6
3 | timeCreated: 1492255353
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Grass B.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_SourcePrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1081485305171292}
13 | m_IsPrefabAsset: 1
14 | --- !u!1 &1081485305171292
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_CorrespondingSourceObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 6
20 | m_Component:
21 | - component: {fileID: 4526791939225540}
22 | - component: {fileID: 33255213177223184}
23 | - component: {fileID: 23035406928957794}
24 | m_Layer: 0
25 | m_Name: LowPoly - Grass B
26 | m_TagString: Untagged
27 | m_Icon: {fileID: 0}
28 | m_NavMeshLayer: 0
29 | m_StaticEditorFlags: 0
30 | m_IsActive: 1
31 | --- !u!4 &4526791939225540
32 | Transform:
33 | m_ObjectHideFlags: 1
34 | m_CorrespondingSourceObject: {fileID: 0}
35 | m_PrefabInternal: {fileID: 100100000}
36 | m_GameObject: {fileID: 1081485305171292}
37 | m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
38 | m_LocalPosition: {x: -2.2596135, y: -0.45810187, z: 7.24199}
39 | m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
40 | m_Children: []
41 | m_Father: {fileID: 0}
42 | m_RootOrder: 0
43 | m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
44 | --- !u!23 &23035406928957794
45 | MeshRenderer:
46 | m_ObjectHideFlags: 1
47 | m_CorrespondingSourceObject: {fileID: 0}
48 | m_PrefabInternal: {fileID: 100100000}
49 | m_GameObject: {fileID: 1081485305171292}
50 | m_Enabled: 1
51 | m_CastShadows: 1
52 | m_ReceiveShadows: 1
53 | m_DynamicOccludee: 1
54 | m_MotionVectors: 1
55 | m_LightProbeUsage: 1
56 | m_ReflectionProbeUsage: 1
57 | m_RenderingLayerMask: 4294967295
58 | m_Materials:
59 | - {fileID: 2100000, guid: 6fc6652ed834922468cdd63bb95f7fe2, type: 2}
60 | m_StaticBatchInfo:
61 | firstSubMesh: 0
62 | subMeshCount: 0
63 | m_StaticBatchRoot: {fileID: 0}
64 | m_ProbeAnchor: {fileID: 0}
65 | m_LightProbeVolumeOverride: {fileID: 0}
66 | m_ScaleInLightmap: 1
67 | m_PreserveUVs: 0
68 | m_IgnoreNormalsForChartDetection: 0
69 | m_ImportantGI: 0
70 | m_StitchLightmapSeams: 0
71 | m_SelectedEditorRenderState: 3
72 | m_MinimumChartSize: 4
73 | m_AutoUVMaxDistance: 0.5
74 | m_AutoUVMaxAngle: 89
75 | m_LightmapParameters: {fileID: 0}
76 | m_SortingLayerID: 0
77 | m_SortingLayer: 0
78 | m_SortingOrder: 0
79 | --- !u!33 &33255213177223184
80 | MeshFilter:
81 | m_ObjectHideFlags: 1
82 | m_CorrespondingSourceObject: {fileID: 0}
83 | m_PrefabInternal: {fileID: 100100000}
84 | m_GameObject: {fileID: 1081485305171292}
85 | m_Mesh: {fileID: 4300010, guid: 0860e6fc68e57ae48b5ae6e854f8f6b1, type: 3}
86 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Grass B.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c23a5db78ca1a5b4f921e0109f33128c
3 | timeCreated: 1492255355
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Rock A.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_SourcePrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1927372005322154}
13 | m_IsPrefabAsset: 1
14 | --- !u!1 &1927372005322154
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_CorrespondingSourceObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 6
20 | m_Component:
21 | - component: {fileID: 4838067341564878}
22 | - component: {fileID: 33092966369005018}
23 | - component: {fileID: 23445742227598232}
24 | m_Layer: 0
25 | m_Name: LowPoly - Rock A
26 | m_TagString: Untagged
27 | m_Icon: {fileID: 0}
28 | m_NavMeshLayer: 0
29 | m_StaticEditorFlags: 0
30 | m_IsActive: 1
31 | --- !u!4 &4838067341564878
32 | Transform:
33 | m_ObjectHideFlags: 1
34 | m_CorrespondingSourceObject: {fileID: 0}
35 | m_PrefabInternal: {fileID: 100100000}
36 | m_GameObject: {fileID: 1927372005322154}
37 | m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
38 | m_LocalPosition: {x: 0, y: 0, z: 0}
39 | m_LocalScale: {x: 1, y: 1, z: 1}
40 | m_Children: []
41 | m_Father: {fileID: 0}
42 | m_RootOrder: 0
43 | m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
44 | --- !u!23 &23445742227598232
45 | MeshRenderer:
46 | m_ObjectHideFlags: 1
47 | m_CorrespondingSourceObject: {fileID: 0}
48 | m_PrefabInternal: {fileID: 100100000}
49 | m_GameObject: {fileID: 1927372005322154}
50 | m_Enabled: 1
51 | m_CastShadows: 1
52 | m_ReceiveShadows: 1
53 | m_DynamicOccludee: 1
54 | m_MotionVectors: 1
55 | m_LightProbeUsage: 1
56 | m_ReflectionProbeUsage: 1
57 | m_RenderingLayerMask: 4294967295
58 | m_Materials:
59 | - {fileID: 2100000, guid: 37524ae4594222f4f8acd7b76234f79a, type: 2}
60 | m_StaticBatchInfo:
61 | firstSubMesh: 0
62 | subMeshCount: 0
63 | m_StaticBatchRoot: {fileID: 0}
64 | m_ProbeAnchor: {fileID: 0}
65 | m_LightProbeVolumeOverride: {fileID: 0}
66 | m_ScaleInLightmap: 1
67 | m_PreserveUVs: 0
68 | m_IgnoreNormalsForChartDetection: 0
69 | m_ImportantGI: 0
70 | m_StitchLightmapSeams: 0
71 | m_SelectedEditorRenderState: 3
72 | m_MinimumChartSize: 4
73 | m_AutoUVMaxDistance: 0.5
74 | m_AutoUVMaxAngle: 89
75 | m_LightmapParameters: {fileID: 0}
76 | m_SortingLayerID: 0
77 | m_SortingLayer: 0
78 | m_SortingOrder: 0
79 | --- !u!33 &33092966369005018
80 | MeshFilter:
81 | m_ObjectHideFlags: 1
82 | m_CorrespondingSourceObject: {fileID: 0}
83 | m_PrefabInternal: {fileID: 100100000}
84 | m_GameObject: {fileID: 1927372005322154}
85 | m_Mesh: {fileID: 4300000, guid: 26fb55e8ae34728499f6f45cd0527c73, type: 3}
86 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Rock A.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 39de80c7e7a1a2942820576875608e5d
3 | timeCreated: 1492249124
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Rock B.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1001 &100100000
4 | Prefab:
5 | m_ObjectHideFlags: 1
6 | serializedVersion: 2
7 | m_Modification:
8 | m_TransformParent: {fileID: 0}
9 | m_Modifications: []
10 | m_RemovedComponents: []
11 | m_SourcePrefab: {fileID: 0}
12 | m_RootGameObject: {fileID: 1828138642645558}
13 | m_IsPrefabAsset: 1
14 | --- !u!1 &1828138642645558
15 | GameObject:
16 | m_ObjectHideFlags: 0
17 | m_CorrespondingSourceObject: {fileID: 0}
18 | m_PrefabInternal: {fileID: 100100000}
19 | serializedVersion: 6
20 | m_Component:
21 | - component: {fileID: 4739574486837986}
22 | - component: {fileID: 33887624806533098}
23 | - component: {fileID: 23855685082151098}
24 | m_Layer: 0
25 | m_Name: LowPoly - Rock B
26 | m_TagString: Untagged
27 | m_Icon: {fileID: 0}
28 | m_NavMeshLayer: 0
29 | m_StaticEditorFlags: 0
30 | m_IsActive: 1
31 | --- !u!4 &4739574486837986
32 | Transform:
33 | m_ObjectHideFlags: 1
34 | m_CorrespondingSourceObject: {fileID: 0}
35 | m_PrefabInternal: {fileID: 100100000}
36 | m_GameObject: {fileID: 1828138642645558}
37 | m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
38 | m_LocalPosition: {x: -0, y: 0, z: 0}
39 | m_LocalScale: {x: 1, y: 1, z: 1}
40 | m_Children: []
41 | m_Father: {fileID: 0}
42 | m_RootOrder: 0
43 | m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
44 | --- !u!23 &23855685082151098
45 | MeshRenderer:
46 | m_ObjectHideFlags: 1
47 | m_CorrespondingSourceObject: {fileID: 0}
48 | m_PrefabInternal: {fileID: 100100000}
49 | m_GameObject: {fileID: 1828138642645558}
50 | m_Enabled: 1
51 | m_CastShadows: 1
52 | m_ReceiveShadows: 1
53 | m_DynamicOccludee: 1
54 | m_MotionVectors: 1
55 | m_LightProbeUsage: 1
56 | m_ReflectionProbeUsage: 1
57 | m_RenderingLayerMask: 4294967295
58 | m_Materials:
59 | - {fileID: 2100000, guid: 37524ae4594222f4f8acd7b76234f79a, type: 2}
60 | m_StaticBatchInfo:
61 | firstSubMesh: 0
62 | subMeshCount: 0
63 | m_StaticBatchRoot: {fileID: 0}
64 | m_ProbeAnchor: {fileID: 0}
65 | m_LightProbeVolumeOverride: {fileID: 0}
66 | m_ScaleInLightmap: 1
67 | m_PreserveUVs: 0
68 | m_IgnoreNormalsForChartDetection: 0
69 | m_ImportantGI: 0
70 | m_StitchLightmapSeams: 0
71 | m_SelectedEditorRenderState: 3
72 | m_MinimumChartSize: 4
73 | m_AutoUVMaxDistance: 0.5
74 | m_AutoUVMaxAngle: 89
75 | m_LightmapParameters: {fileID: 0}
76 | m_SortingLayerID: 0
77 | m_SortingLayer: 0
78 | m_SortingOrder: 0
79 | --- !u!33 &33887624806533098
80 | MeshFilter:
81 | m_ObjectHideFlags: 1
82 | m_CorrespondingSourceObject: {fileID: 0}
83 | m_PrefabInternal: {fileID: 100100000}
84 | m_GameObject: {fileID: 1828138642645558}
85 | m_Mesh: {fileID: 4300000, guid: 3ecc1e70424b33546b2dc73bb30a5163, type: 3}
86 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Prefabs/LowPoly - Rock B.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b0622c7c0ff092b46a37f31c718c5eba
3 | timeCreated: 1492249128
4 | licenseType: Store
5 | NativeFormatImporter:
6 | mainObjectFileID: 100100000
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Shaders.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e3f53477d64695f4abc989d59212b280
3 | folderAsset: yes
4 | timeCreated: 1513231762
5 | licenseType: Store
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Shaders/Skybox Cubemap Extended.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 82881a2d011b0964696411c822cdd00b
3 | timeCreated: 1523902010
4 | licenseType: Store
5 | ShaderImporter:
6 | defaultTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Skybox Cubemap Extended.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Skybox Cubemap Extended.pdf
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Skybox Cubemap Extended.pdf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5cbce0d58b9d6d147bde7b2601194b85
3 | timeCreated: 1513541083
4 | licenseType: Store
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Textures.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 622c850911a24ab4c87b6b1cbb58ba1d
3 | folderAsset: yes
4 | timeCreated: 1513236874
5 | licenseType: Store
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Textures/Polyverse Skies - Blue Sky.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Textures/Polyverse Skies - Blue Sky.png
--------------------------------------------------------------------------------
/Assets/BOXOPHOBIC/Skybox Cubemap Extended/Textures/Polyverse Skies - Blue Sky.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: beb1457d375110e468b8d8e1f29fccea
3 | timeCreated: 1513355663
4 | licenseType: Store
5 | TextureImporter:
6 | fileIDToRecycleName:
7 | 8900000: generatedCubemap
8 | serializedVersion: 4
9 | mipmaps:
10 | mipMapMode: 0
11 | enableMipMap: 0
12 | sRGBTexture: 1
13 | linearTexture: 0
14 | fadeOut: 0
15 | borderMipMap: 0
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | grayScaleToAlpha: 0
25 | generateCubemap: 6
26 | cubemapConvolution: 0
27 | seamlessCubemap: 0
28 | textureFormat: 1
29 | maxTextureSize: 2048
30 | textureSettings:
31 | filterMode: 2
32 | aniso: -1
33 | mipBias: -1
34 | wrapMode: -1
35 | nPOTScale: 1
36 | lightmap: 0
37 | compressionQuality: 50
38 | spriteMode: 0
39 | spriteExtrude: 1
40 | spriteMeshType: 1
41 | alignment: 0
42 | spritePivot: {x: 0.5, y: 0.5}
43 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
44 | spritePixelsToUnits: 100
45 | alphaUsage: 1
46 | alphaIsTransparency: 0
47 | spriteTessellationDetail: -1
48 | textureType: 0
49 | textureShape: 2
50 | maxTextureSizeSet: 0
51 | compressionQualitySet: 0
52 | textureFormatSet: 0
53 | platformSettings:
54 | - buildTarget: DefaultTexturePlatform
55 | maxTextureSize: 2048
56 | textureFormat: -1
57 | textureCompression: 0
58 | compressionQuality: 50
59 | crunchedCompression: 0
60 | allowsAlphaSplitting: 0
61 | overridden: 0
62 | - buildTarget: Standalone
63 | maxTextureSize: 2048
64 | textureFormat: -1
65 | textureCompression: 0
66 | compressionQuality: 50
67 | crunchedCompression: 0
68 | allowsAlphaSplitting: 0
69 | overridden: 0
70 | - buildTarget: Android
71 | maxTextureSize: 2048
72 | textureFormat: -1
73 | textureCompression: 0
74 | compressionQuality: 50
75 | crunchedCompression: 0
76 | allowsAlphaSplitting: 0
77 | overridden: 0
78 | - buildTarget: WebGL
79 | maxTextureSize: 2048
80 | textureFormat: -1
81 | textureCompression: 0
82 | compressionQuality: 50
83 | crunchedCompression: 0
84 | allowsAlphaSplitting: 0
85 | overridden: 0
86 | spriteSheet:
87 | serializedVersion: 2
88 | sprites: []
89 | outline: []
90 | spritePackingTag:
91 | userData:
92 | assetBundleName:
93 | assetBundleVariant:
94 |
--------------------------------------------------------------------------------
/Assets/NodeEditor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5f3f229789a7b2f4e9fa573848e5727e
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scenes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4f704ae4b4f98ae41a0bce26658850c1
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scenes/SampleScene.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 99c9720ab356a0642a771bea13969a05
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/SuperBlur.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b49417d487852a543a8c3cef7714c479
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Core.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 21f78686deb742541b775cea733d2802
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Core/SuperBlurBase.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace SuperBlur
4 | {
5 |
6 | [ExecuteInEditMode]
7 | public class SuperBlurBase : MonoBehaviour
8 | {
9 | protected static class Uniforms
10 | {
11 | public static readonly int _Radius = Shader.PropertyToID("_Radius");
12 | public static readonly int _BackgroundTexture = Shader.PropertyToID("_SuperBlurTexture");
13 | }
14 |
15 | public RenderMode renderMode = RenderMode.Screen;
16 |
17 | public BlurKernelSize kernelSize = BlurKernelSize.Small;
18 |
19 | [Range(0f, 1f)]
20 | public float interpolation = 1f;
21 |
22 | [Range(0, 4)]
23 | public int downsample = 1;
24 |
25 | [Range(1, 8)]
26 | public int iterations = 1;
27 |
28 | public bool gammaCorrection = true;
29 |
30 | public Material blurMaterial;
31 |
32 | public Material UIMaterial;
33 |
34 |
35 | protected void Blur (RenderTexture source, RenderTexture destination)
36 | {
37 | if (gammaCorrection)
38 | {
39 | Shader.EnableKeyword("GAMMA_CORRECTION");
40 | }
41 | else
42 | {
43 | Shader.DisableKeyword("GAMMA_CORRECTION");
44 | }
45 |
46 | int kernel = 0;
47 |
48 | switch (kernelSize)
49 | {
50 | case BlurKernelSize.Small:
51 | kernel = 0;
52 | break;
53 | case BlurKernelSize.Medium:
54 | kernel = 2;
55 | break;
56 | case BlurKernelSize.Big:
57 | kernel = 4;
58 | break;
59 | }
60 |
61 | var rt2 = RenderTexture.GetTemporary(source.width, source.height, 0, source.format);
62 |
63 | for (int i = 0; i < iterations; i++)
64 | {
65 | // helps to achieve a larger blur
66 | float radius = (float)i * interpolation + interpolation;
67 | blurMaterial.SetFloat(Uniforms._Radius, radius);
68 |
69 | Graphics.Blit(source, rt2, blurMaterial, 1 + kernel);
70 | source.DiscardContents();
71 |
72 | // is it a last iteration? If so, then blit to destination
73 | if (i == iterations - 1)
74 | {
75 | Graphics.Blit(rt2, destination, blurMaterial, 2 + kernel);
76 | }
77 | else
78 | {
79 | Graphics.Blit(rt2, source, blurMaterial, 2 + kernel);
80 | rt2.DiscardContents();
81 | }
82 | }
83 |
84 | RenderTexture.ReleaseTemporary(rt2);
85 | }
86 |
87 | }
88 |
89 | public enum BlurKernelSize
90 | {
91 | Small,
92 | Medium,
93 | Big
94 | }
95 |
96 | public enum RenderMode
97 | {
98 | Screen,
99 | UI,
100 | OnlyUI
101 | }
102 |
103 | }
104 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Core/SuperBlurBase.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 84977cebcaa598f49a17c3b8cfcb2b07
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Material.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4c5635d9e543c7449a4b603a8c8de02a
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Material/SuperBlurPostEffect.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: SuperBlurPostEffect
10 | m_Shader: {fileID: 4800000, guid: 1927ec9fe05a4b3419923b19bb943fbe, type: 3}
11 | m_ShaderKeywords: _EMISSION
12 | m_LightmapFlags: 1
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BumpMap:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _DetailAlbedoMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailMask:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailNormalMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _EmissionMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _MainTex:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MetallicGlossMap:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _OcclusionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _ParallaxMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | m_Floats:
58 | - _BumpScale: 1
59 | - _Cutoff: 0.5
60 | - _DetailNormalMapScale: 1
61 | - _DstBlend: 0
62 | - _GlossMapScale: 1
63 | - _Glossiness: 0.5
64 | - _GlossyReflections: 1
65 | - _Metallic: 0
66 | - _Mode: 0
67 | - _OcclusionStrength: 1
68 | - _Parallax: 0.02
69 | - _SmoothnessTextureChannel: 0
70 | - _SpecularHighlights: 1
71 | - _SrcBlend: 1
72 | - _UVSec: 0
73 | - _ZWrite: 1
74 | m_Colors:
75 | - _Color: {r: 1, g: 1, b: 1, a: 1}
76 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
77 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Material/SuperBlurPostEffect.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e7f58cbae014f844c89c67f10a39675f
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 0
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Material/SuperBlurUI.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: SuperBlurUI
10 | m_Shader: {fileID: 4800000, guid: c177d8353f5baf341957bb61dac6dc7f, type: 3}
11 | m_ShaderKeywords: _EMISSION
12 | m_LightmapFlags: 1
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: -1
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _BackgroundTexture:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _BlurredBackgroundTexture:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _BumpMap:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailAlbedoMap:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _DetailMask:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _DetailNormalMap:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _DetailTex:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _EmissionMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _MainBump:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | - _MainTex:
58 | m_Texture: {fileID: 0}
59 | m_Scale: {x: 1, y: 1}
60 | m_Offset: {x: 0, y: 0}
61 | - _MetallicGlossMap:
62 | m_Texture: {fileID: 0}
63 | m_Scale: {x: 1, y: 1}
64 | m_Offset: {x: 0, y: 0}
65 | - _OcclusionMap:
66 | m_Texture: {fileID: 0}
67 | m_Scale: {x: 1, y: 1}
68 | m_Offset: {x: 0, y: 0}
69 | - _ParallaxMap:
70 | m_Texture: {fileID: 0}
71 | m_Scale: {x: 1, y: 1}
72 | m_Offset: {x: 0, y: 0}
73 | - _SuperBlurTexture:
74 | m_Texture: {fileID: 0}
75 | m_Scale: {x: 1, y: 1}
76 | m_Offset: {x: 0, y: 0}
77 | m_Floats:
78 | - _BumpScale: 1
79 | - _ColorMask: 15
80 | - _Cutoff: 0.5
81 | - _DetailNormalMapScale: 1
82 | - _DstBlend: 0
83 | - _GlossMapScale: 1
84 | - _Glossiness: 0.5
85 | - _GlossyReflections: 1
86 | - _Metallic: 0
87 | - _Mode: 0
88 | - _OcclusionStrength: 1
89 | - _Parallax: 0.02
90 | - _Shininess: 0.2
91 | - _SmoothnessTextureChannel: 0
92 | - _SpecularHighlights: 1
93 | - _SrcBlend: 1
94 | - _Stencil: 0
95 | - _StencilComp: 8
96 | - _StencilOp: 0
97 | - _StencilReadMask: 255
98 | - _StencilWriteMask: 255
99 | - _Strength: 0.2
100 | - _UVSec: 0
101 | - _UseUIAlphaClip: 0
102 | - _ZWrite: 1
103 | m_Colors:
104 | - _Color: {r: 1, g: 1, b: 1, a: 1}
105 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
106 | - _Specular: {r: 0, g: 0, b: 0, a: 0}
107 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Material/SuperBlurUI.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 12d96cfe6a7bc1f4799ba731339b23cc
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 0
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dad45e3bd3bac834b82276f01ee03450
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Shader/SuperBlurPostEffect.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1927ec9fe05a4b3419923b19bb943fbe
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Shader/SuperBlurUI.shader:
--------------------------------------------------------------------------------
1 | Shader "UI/Super Blur"
2 | {
3 | Properties
4 | {
5 | _SuperBlurTexture ("Background Texture", 2D) = "white" {}
6 |
7 | _Color ("Tint", Color) = (1,1,1,0)
8 |
9 | _StencilComp ("Stencil Comparison", Float) = 8
10 | _Stencil ("Stencil ID", Float) = 0
11 | _StencilOp ("Stencil Operation", Float) = 0
12 | _StencilWriteMask ("Stencil Write Mask", Float) = 255
13 | _StencilReadMask ("Stencil Read Mask", Float) = 255
14 |
15 | _ColorMask ("Color Mask", Float) = 15
16 |
17 | [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0
18 | }
19 |
20 | SubShader
21 | {
22 | Tags
23 | {
24 | "Queue"="Transparent"
25 | "IgnoreProjector"="True"
26 | "RenderType"="Transparent"
27 | "PreviewType"="Plane"
28 | "CanUseSpriteAtlas"="True"
29 | }
30 |
31 | Stencil
32 | {
33 | Ref [_Stencil]
34 | Comp [_StencilComp]
35 | Pass [_StencilOp]
36 | ReadMask [_StencilReadMask]
37 | WriteMask [_StencilWriteMask]
38 | }
39 |
40 | Cull Off
41 | Lighting Off
42 | ZWrite Off
43 | ZTest [unity_GUIZTestMode]
44 | // Blend SrcAlpha OneMinusSrcAlpha
45 | ColorMask [_ColorMask]
46 |
47 | Pass
48 | {
49 | Name "Default"
50 | CGPROGRAM
51 | #pragma vertex vert
52 | #pragma fragment frag
53 | #pragma target 2.0
54 |
55 | #include "UnityCG.cginc"
56 | #include "UnityUI.cginc"
57 |
58 | #pragma multi_compile __ UNITY_UI_ALPHACLIP
59 |
60 | struct appdata_t
61 | {
62 | float4 vertex : POSITION;
63 | float4 color : COLOR;
64 | };
65 |
66 | struct v2f
67 | {
68 | float4 vertex : SV_POSITION;
69 | fixed4 color : COLOR;
70 | float4 worldPosition : TEXCOORD1;
71 | float4 grabPos : TEXCOORD2;
72 | };
73 |
74 | fixed4 _Color;
75 | float4 _ClipRect;
76 |
77 | sampler2D _SuperBlurTexture;
78 | float2 _SuperBlurTexture_TexelSize;
79 |
80 | v2f vert(appdata_t IN)
81 | {
82 | v2f OUT;
83 | OUT.worldPosition = IN.vertex;
84 | OUT.vertex = UnityObjectToClipPos(OUT.worldPosition);
85 |
86 | #ifdef UNITY_HALF_TEXEL_OFFSET
87 | OUT.vertex.xy += (_ScreenParams.zw-1.0) * float2(-1,1) * OUT.vertex.w;
88 | #endif
89 |
90 | OUT.grabPos = ComputeGrabScreenPos(OUT.vertex);
91 |
92 | #if UNITY_UV_STARTS_AT_TOP
93 | OUT.grabPos.y = 1.0 - OUT.grabPos.y;
94 | #endif
95 |
96 | OUT.color = IN.color * _Color;
97 | return OUT;
98 | }
99 |
100 | fixed4 frag(v2f IN) : SV_Target
101 | {
102 | half3 bgcolor = tex2Dproj(_SuperBlurTexture, IN.grabPos).rgb * IN.color;
103 | return half4(bgcolor, 1.0);
104 | }
105 | ENDCG
106 | }
107 | }
108 | }
109 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/Shader/SuperBlurUI.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c177d8353f5baf341957bb61dac6dc7f
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/SuperBlur.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace SuperBlur
4 | {
5 |
6 | [RequireComponent(typeof(Camera))]
7 | [AddComponentMenu("Effects/Super Blur", -1)]
8 | public class SuperBlur : SuperBlurBase
9 | {
10 | [ImageEffectOpaque]
11 | void OnRenderImage (RenderTexture source, RenderTexture destination)
12 | {
13 | if (blurMaterial == null || UIMaterial == null) return;
14 |
15 | int tw = source.width >> downsample;
16 | int th = source.height >> downsample;
17 |
18 | var rt = RenderTexture.GetTemporary(tw, th, 0, source.format);
19 |
20 | Graphics.Blit(source, rt);
21 |
22 | if (renderMode == RenderMode.Screen)
23 | {
24 | Blur(rt, destination);
25 | }
26 | else if (renderMode == RenderMode.UI)
27 | {
28 | Blur(rt, rt);
29 | Shader.SetGlobalTexture(Uniforms._BackgroundTexture, rt);
30 | Graphics.Blit(source, destination);
31 | }
32 | else if (renderMode == RenderMode.OnlyUI)
33 | {
34 | Blur(rt, rt);
35 | UIMaterial.SetTexture(Uniforms._BackgroundTexture, rt);
36 | }
37 |
38 | RenderTexture.ReleaseTemporary(rt);
39 | }
40 |
41 | }
42 |
43 | }
44 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/SuperBlur.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 02319f7d651dc754a896de7e1f1bee31
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/SuperBlur/SuperBlurFast.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace SuperBlur
4 | {
5 |
6 | [RequireComponent(typeof(Camera))]
7 | [AddComponentMenu("Effects/Super Blur Fast", -1)]
8 | public class SuperBlurFast : SuperBlurBase
9 | {
10 |
11 | Camera m_Camera = null;
12 | RenderTexture rt = null;
13 |
14 | void OnEnable ()
15 | {
16 | m_Camera = GetComponent();
17 | }
18 |
19 | void OnPreCull ()
20 | {
21 | if (blurMaterial == null || UIMaterial == null) return;
22 |
23 | int tw = Screen.width >> downsample;
24 | int th = Screen.height >> downsample;
25 |
26 | rt = RenderTexture.GetTemporary(tw, th, 24, RenderTextureFormat.Default);
27 |
28 | m_Camera.targetTexture = rt;
29 | }
30 |
31 | void OnPostRender ()
32 | {
33 | if (blurMaterial == null || UIMaterial == null) return;
34 |
35 | m_Camera.targetTexture = null;
36 |
37 | if (renderMode == RenderMode.Screen)
38 | {
39 | Blur(rt, null);
40 | }
41 | else if (renderMode == RenderMode.UI)
42 | {
43 | Blur(rt, rt);
44 | UIMaterial.SetTexture(Uniforms._BackgroundTexture, rt);
45 | Graphics.Blit(rt, null, blurMaterial, 0);
46 | }
47 | else if (renderMode == RenderMode.OnlyUI)
48 | {
49 | Blur(rt, rt);
50 | UIMaterial.SetTexture(Uniforms._BackgroundTexture, rt);
51 | }
52 |
53 | RenderTexture.ReleaseTemporary(rt);
54 | }
55 |
56 | }
57 |
58 | }
--------------------------------------------------------------------------------
/Assets/SuperBlur/SuperBlurFast.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 675a8d9361c514b4cba3656f42359874
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 76d3ee2dcf13911458d2ea6c03b04788
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Examples.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2ea801417fa1d874d9c6e21be8f64bb4
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Examples/Demo.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 67adac43bcf286444be612074ab04f75
3 | timeCreated: 1517938592
4 | licenseType: Store
5 | DefaultImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Examples/Example Graph.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0628ac58612174649bccf5784bb1a37e
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Materials.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1cfbec9f5e391a94c8a02955fe2936dc
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Materials/Blur Screen Sprite.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInternal: {fileID: 0}
9 | m_Name: Blur Screen Sprite
10 | m_Shader: {fileID: 4800000, guid: b8f9e27324fc2444a9a5decea41a1a5b, type: 3}
11 | m_ShaderKeywords: ETC1_EXTERNAL_ALPHA
12 | m_LightmapFlags: 4
13 | m_EnableInstancingVariants: 0
14 | m_DoubleSidedGI: 0
15 | m_CustomRenderQueue: 3000
16 | stringTagMap: {}
17 | disabledShaderPasses: []
18 | m_SavedProperties:
19 | serializedVersion: 3
20 | m_TexEnvs:
21 | - _AlphaTex:
22 | m_Texture: {fileID: 0}
23 | m_Scale: {x: 1, y: 1}
24 | m_Offset: {x: 0, y: 0}
25 | - _BumpMap:
26 | m_Texture: {fileID: 0}
27 | m_Scale: {x: 1, y: 1}
28 | m_Offset: {x: 0, y: 0}
29 | - _DetailAlbedoMap:
30 | m_Texture: {fileID: 0}
31 | m_Scale: {x: 1, y: 1}
32 | m_Offset: {x: 0, y: 0}
33 | - _DetailMask:
34 | m_Texture: {fileID: 0}
35 | m_Scale: {x: 1, y: 1}
36 | m_Offset: {x: 0, y: 0}
37 | - _DetailNormalMap:
38 | m_Texture: {fileID: 0}
39 | m_Scale: {x: 1, y: 1}
40 | m_Offset: {x: 0, y: 0}
41 | - _EmissionMap:
42 | m_Texture: {fileID: 0}
43 | m_Scale: {x: 1, y: 1}
44 | m_Offset: {x: 0, y: 0}
45 | - _MainTex:
46 | m_Texture: {fileID: 0}
47 | m_Scale: {x: 1, y: 1}
48 | m_Offset: {x: 0, y: 0}
49 | - _MetallicGlossMap:
50 | m_Texture: {fileID: 0}
51 | m_Scale: {x: 1, y: 1}
52 | m_Offset: {x: 0, y: 0}
53 | - _OcclusionMap:
54 | m_Texture: {fileID: 0}
55 | m_Scale: {x: 1, y: 1}
56 | m_Offset: {x: 0, y: 0}
57 | - _ParallaxMap:
58 | m_Texture: {fileID: 0}
59 | m_Scale: {x: 1, y: 1}
60 | m_Offset: {x: 0, y: 0}
61 | m_Floats:
62 | - PixelSnap: 0
63 | - _BumpScale: 1
64 | - _Cutoff: 0.5
65 | - _DetailNormalMapScale: 1
66 | - _DstBlend: 0
67 | - _EnableExternalAlpha: 0
68 | - _GlossMapScale: 1
69 | - _Glossiness: 0.5
70 | - _GlossyReflections: 1
71 | - _Metallic: 0
72 | - _Mode: 0
73 | - _OcclusionStrength: 1
74 | - _Parallax: 0.02
75 | - _SmoothnessTextureChannel: 0
76 | - _SpecularHighlights: 1
77 | - _SrcBlend: 1
78 | - _UVSec: 0
79 | - _ZWrite: 1
80 | m_Colors:
81 | - _Color: {r: 1, g: 1, b: 1, a: 1}
82 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
83 | - _Flip: {r: 1, g: 1, b: 1, a: 1}
84 | - _RendererColor: {r: 1, g: 1, b: 1, a: 1}
85 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Materials/Blur Screen Sprite.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cb7b580c54b4d6e409232688d77ac198
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 2100000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e6413c2f0ed76194789ea54877552fcc
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e434525e2a9f9c04c9c5ea8eb702c943
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Editor/UIGraphObjectInspector.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using NodeEditor;
4 | using UINodeEditor;
5 | using UnityEditor;
6 | using UnityEngine;
7 | using UnityEngine.Rendering;
8 |
9 | [CustomEditor(typeof(UIGraphObject))]
10 | public class UIGraphObjectInspector : Editor
11 | {
12 | private Vector2 scrollPos;
13 |
14 | private SerializedProperty m_SerializedReferences;
15 |
16 | private UIGraphRenderer m_Renderer;
17 | private CommandBuffer m_CommandBuffer;
18 |
19 | private void OnEnable()
20 | {
21 | m_SerializedReferences = serializedObject.FindProperty("m_SerializedReferences");
22 |
23 | m_Renderer = new UIGraphRenderer();
24 | m_CommandBuffer = new CommandBuffer(){name = target.name + " Preview"};
25 | }
26 |
27 | private void OnDisable()
28 | {
29 | m_CommandBuffer.Dispose();
30 | m_Renderer.Dispose();
31 | }
32 |
33 | public override void OnInspectorGUI()
34 | {
35 | base.OnInspectorGUI();
36 |
37 | scrollPos = GUILayout.BeginScrollView(scrollPos);
38 |
39 | EditorGUI.BeginDisabledGroup(true);
40 | for (int i = 0; i < m_SerializedReferences.arraySize; i++)
41 | {
42 | var element = m_SerializedReferences.GetArrayElementAtIndex(i);
43 |
44 | var guid = element.FindPropertyRelative("guid");
45 | byte[] guidArray = new byte[guid.arraySize];
46 | for (int j = 0; j < guid.arraySize; j++)
47 | {
48 | guidArray[j] = (byte)guid.GetArrayElementAtIndex(j).intValue;
49 | }
50 | var guidValue = new Guid(guidArray);
51 |
52 |
53 | EditorGUILayout.PropertyField(element.FindPropertyRelative("obj"), new GUIContent(guidValue.ToString()));
54 | }
55 |
56 | EditorGUI.EndDisabledGroup();
57 |
58 | GUILayout.EndScrollView();
59 | }
60 |
61 | public override bool HasPreviewGUI()
62 | {
63 | return true;
64 | }
65 |
66 | public override void OnPreviewGUI(Rect r, GUIStyle background)
67 | {
68 | if (Event.current.type == EventType.Repaint)
69 | {
70 | var graphObject = (UIGraphObject) target;
71 |
72 | GUI.BeginClip(r);
73 | Matrix4x4 rotateMatrix = Matrix4x4.TRS(new Vector3(0, r.height), Quaternion.Euler(0, 0, 0), new Vector3(1, -1, 1));
74 |
75 | m_CommandBuffer.Clear();
76 | m_Renderer.PopulateCommandBuffer(false,r, rotateMatrix, graphObject.graph.GetNodes(), m_CommandBuffer);
77 |
78 | Graphics.ExecuteCommandBuffer(m_CommandBuffer);
79 | GUI.EndClip();
80 | }
81 | }
82 | }
83 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Editor/UIGraphObjectInspector.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bc079f5d9492dbd4cb645d6fc4b2decb
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Editor/UINodeEditor-Editor.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "UINodeEditor-Editor",
3 | "references": [
4 | "GUID:fe8f2b39119de0041a2f3ec51a5559ff",
5 | "GUID:d291df36c71d47e4bbe54fc907b21837",
6 | "GUID:cbb877376518c7347a6aceedec60645e"
7 | ],
8 | "includePlatforms": [],
9 | "excludePlatforms": [],
10 | "allowUnsafeCode": false,
11 | "overrideReferences": false,
12 | "precompiledReferences": [],
13 | "autoReferenced": true,
14 | "defineConstraints": [],
15 | "versionDefines": []
16 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Editor/UINodeEditor-Editor.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a86df20eac6b0fd4188d07a3525de1dd
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/MeshRepository.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Concurrent;
3 | using System.Collections.Generic;
4 | using UnityEngine;
5 | using Object = UnityEngine.Object;
6 |
7 | namespace UINodeEditor
8 | {
9 | ///
10 | /// A mesh repository that stores meshes for later rendering.
11 | /// Each mesh, material property block and UIVertex helper is referenced by a GUID.
12 | /// It also has an internal pool for meshes, property blocks and vertex helpers.
13 | /// Used by .
14 | /// As the repository uses an internal mesh pool it needs to be disposed for them to be deleted as well.
15 | ///
16 | public class MeshRepository : IDisposable
17 | {
18 | private Dictionary m_CurrentMeshes = new Dictionary();
19 |
20 | private Dictionary m_CurrentPropertyBlocks = new Dictionary();
21 |
22 | private Dictionary m_CurrentVertexHelpers = new Dictionary();
23 |
24 | private Stack m_MeshPool = new Stack();
25 |
26 | private Stack m_PropertyBlockPool = new Stack();
27 |
28 | private ConcurrentStack m_VertexHelpersPool = new ConcurrentStack();
29 |
30 | ///
31 | /// Get a new or existing mesh with a specified guid.
32 | ///
33 | /// The guid of the mesh.
34 | /// The new or existing mesh.
35 | public Mesh GetMesh(Guid guid)
36 | {
37 | if (!m_CurrentMeshes.TryGetValue(guid, out Mesh mesh))
38 | {
39 | mesh = m_MeshPool.Count > 0 ? m_MeshPool.Pop() : new Mesh();
40 | m_CurrentMeshes.Add(guid, mesh);
41 | }
42 |
43 | return mesh;
44 | }
45 |
46 | ///
47 | /// Get a new or existing material property block with a specified guid.
48 | ///
49 | /// The guid of the material property block.
50 | /// The new or existing material property block.
51 | public MaterialPropertyBlock GetPropertyBLock(Guid guid)
52 | {
53 | if (!m_CurrentPropertyBlocks.TryGetValue(guid, out MaterialPropertyBlock block))
54 | {
55 | block = m_PropertyBlockPool.Count > 0 ? m_PropertyBlockPool.Pop() : new MaterialPropertyBlock();
56 | m_CurrentPropertyBlocks.Add(guid,block);
57 | }
58 |
59 | return block;
60 | }
61 |
62 | ///
63 | /// Thread safe way of getting a new or existing vertex helper with a specified guid.
64 | ///
65 | /// The guid of the vertex helper.
66 | /// The new or existing vertex helper.
67 | public UIVertexHelper GetVertexHelper(Guid guid)
68 | {
69 | if (!m_CurrentVertexHelpers.TryGetValue(guid, out UIVertexHelper vertexHelper))
70 | {
71 | if (!m_VertexHelpersPool.TryPop(out vertexHelper))
72 | {
73 | vertexHelper = new UIVertexHelper();
74 | m_CurrentVertexHelpers.Add(guid,vertexHelper);
75 | }
76 | }
77 |
78 | return vertexHelper;
79 | }
80 |
81 | ///
82 | /// Clear all current meshes, property blocks and vertex helpers.
83 | ///
84 | /// Should pooling be enabled or should all elements be deleted.
85 | public void ClearCurrent(bool delete = false)
86 | {
87 | foreach (var kvp in m_CurrentMeshes)
88 | {
89 | if (delete)
90 | {
91 | Object.DestroyImmediate(kvp.Value);
92 | }
93 | else
94 | {
95 | m_MeshPool.Push(kvp.Value);
96 | }
97 | }
98 |
99 | if (!delete)
100 | {
101 | foreach (var kvp in m_CurrentPropertyBlocks)
102 | {
103 | m_PropertyBlockPool.Push(kvp.Value);
104 | kvp.Value.Clear();
105 | }
106 |
107 | foreach (var kvp in m_CurrentPropertyBlocks)
108 | {
109 | m_PropertyBlockPool.Push(kvp.Value);
110 | kvp.Value.Clear();
111 | }
112 | }
113 |
114 | m_CurrentMeshes.Clear();
115 | m_CurrentPropertyBlocks.Clear();
116 | m_CurrentVertexHelpers.Clear();
117 | }
118 |
119 | ///
120 | /// Deletes all current elements as well as pooled ones.
121 | ///
122 | public void Dispose()
123 | {
124 | foreach (var kvp in m_CurrentMeshes)
125 | {
126 | Object.DestroyImmediate(kvp.Value);
127 | }
128 |
129 | m_CurrentMeshes.Clear();
130 | m_CurrentPropertyBlocks.Clear();
131 | m_CurrentVertexHelpers.Clear();
132 |
133 | foreach (var mesh in m_MeshPool)
134 | {
135 | Object.DestroyImmediate(mesh);
136 | }
137 |
138 | m_MeshPool.Clear();
139 | m_PropertyBlockPool.Clear();
140 | m_VertexHelpersPool.Clear();
141 | }
142 | }
143 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/MeshRepository.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4d5853c8d02249e1aba734187028fc46
3 | timeCreated: 1568382403
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ad3f622035cd4a10a5619be8f0bafa2b
3 | timeCreated: 1534864455
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/AbstractUINode.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using NodeEditor;
3 | using UnityEngine;
4 | using UnityEngine.UI;
5 |
6 | namespace UINodeEditor
7 | {
8 | ///
9 | /// The base class for all nodes that are in a .
10 | ///
11 | public class AbstractUINode : AbstractNode
12 | {
13 | private UIDirtyType m_Dity;
14 |
15 | public AbstractUINode()
16 | {
17 |
18 | }
19 |
20 | public override void SetOwner(IGraph graph)
21 | {
22 | base.SetOwner(graph);
23 | ownerObject = graph.owner as UIGraphObject;
24 | }
25 |
26 | public SlotChangeListener CreateSlotListener(ISlot slot, Action listener)
27 | {
28 | return new SlotChangeListener(slot, listener);
29 | }
30 |
31 | protected UIGraphObject ownerObject { get; private set; }
32 |
33 | protected void OnMeshDirty()
34 | {
35 | m_Dity |= UIDirtyType.Mesh;
36 | }
37 |
38 | protected void OnAllDirty()
39 | {
40 | m_Dity = UIDirtyType.Mesh | UIDirtyType.Layout;
41 | }
42 |
43 | internal void ClearDirty()
44 | {
45 | m_Dity = UIDirtyType.None;
46 | }
47 |
48 | protected UIDirtyType isDirty
49 | {
50 | get { return m_Dity; }
51 | }
52 | }
53 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/AbstractUINode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e2f87f48aa6943e5be4d5e87ec3b7a26
3 | timeCreated: 1535029305
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/CameraNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using UnityEngine;
3 |
4 | namespace UINodeEditor
5 | {
6 | ///
7 | /// The camera node provides properties from the main camera.
8 | ///
9 | [Title("Input","Camera")]
10 | public class CameraNode : AbstractNode
11 | {
12 | public CameraNode()
13 | {
14 | CreateOutputSlot>("Position").SetGetter(() => Camera.main.transform.position);
15 | CreateOutputSlot>("Rotation").SetGetter(() => Camera.main.transform.rotation);
16 | CreateOutputSlot>("CameraToWorld").SetGetter(() => Camera.main.cameraToWorldMatrix);
17 | CreateOutputSlot>("WorldToCamera").SetGetter(() => Camera.main.worldToCameraMatrix);
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/CameraNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 85fa0e5e25ea4cac91c6b00a40fb503b
3 | timeCreated: 1534875746
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 30da29b174ac489cb394b9695ef18c9e
3 | timeCreated: 1535028720
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/FilledImageNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ba1fa891418942da942e6d90f68357d6
3 | timeCreated: 1535199103
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/GraphicNode.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using NodeEditor;
3 | using NodeEditor.Slots;
4 | using UINodeEditor;
5 | using UINodeEditor.Elements;
6 | using UnityEngine;
7 |
8 | ///
9 | /// Base node for all graphic elements.
10 | ///
11 | public abstract class GraphicNode : UIElementNode, IOnAssetEnabled
12 | {
13 | private static Material m_DefaultMaterial;
14 |
15 | protected ValueSlot m_Pivot;
16 | protected ValueSlot m_Color;
17 | protected DefaultValueSlot m_Matrix;
18 | protected DefaultValueSlot m_Material;
19 | protected ValueSlot m_ZOffset;
20 |
21 | protected int m_MainTexProp;
22 |
23 | protected GraphicNode()
24 | {
25 | m_Pivot = CreateInputSlot>("Pivot %").SetValue(Vector2.one * 0.5f).SetShowControl();
26 | m_Color = CreateInputSlot>("Color").SetValue(Color.white).SetShowControl();
27 | m_Matrix = CreateInputSlot>("Matrix").SetDefaultValue(Matrix4x4.identity);
28 | m_Material = CreateInputSlot>("Material");
29 | m_ZOffset = CreateInputSlot>("zOffset","Z Offset").SetShowControl();
30 |
31 | CreateOutputSlot>>("UI Event").SetValue(Execute);
32 | }
33 |
34 | public void OnEnable()
35 | {
36 | m_MainTexProp = Shader.PropertyToID("_MainTex");
37 | if (m_DefaultMaterial == null) m_DefaultMaterial = new Material(Shader.Find("Sprites/Default")){hideFlags = HideFlags.DontSave};
38 | if (m_Material.value == null) m_Material.SetDefaultValue(m_DefaultMaterial);
39 | }
40 |
41 | /// Image's dimensions used for drawing. X = left, Y = bottom, Z = right, W = top.
42 | protected Vector4 GetDrawingDimensions(Vector4 padding,Vector2 size,Vector2 pivot,Rect rect,bool shouldPreserveAspect)
43 | {
44 | Rect r = rect;
45 | // Debug.Log(string.Format("r:{2}, size:{0}, padding:{1}", size, padding, r));
46 |
47 | int spriteW = Mathf.RoundToInt(size.x);
48 | int spriteH = Mathf.RoundToInt(size.y);
49 |
50 | var v = new Vector4(
51 | padding.x / spriteW,
52 | padding.y / spriteH,
53 | (spriteW - padding.z) / spriteW,
54 | (spriteH - padding.w) / spriteH);
55 |
56 | if (shouldPreserveAspect && size.sqrMagnitude > 0.0f)
57 | {
58 | PreserveSpriteAspectRatio(ref r, size, pivot);
59 | }
60 |
61 | v = new Vector4(
62 | r.x + r.width * v.x,
63 | r.y + r.height * v.y,
64 | r.x + r.width * v.z,
65 | r.y + r.height * v.w
66 | );
67 |
68 | return v;
69 | }
70 |
71 | private void PreserveSpriteAspectRatio(ref Rect rect, Vector2 spriteSize,Vector2 pivot)
72 | {
73 | var spriteRatio = spriteSize.x / spriteSize.y;
74 | var rectRatio = rect.width / rect.height;
75 |
76 | if (spriteRatio > rectRatio)
77 | {
78 | var oldHeight = rect.height;
79 | rect.height = rect.width * (1.0f / spriteRatio);
80 | rect.y += (oldHeight - rect.height) * pivot.y;
81 | }
82 | else
83 | {
84 | var oldWidth = rect.width;
85 | rect.width = rect.height * spriteRatio;
86 | rect.x += (oldWidth - rect.width) * pivot.x;
87 | }
88 | }
89 |
90 |
91 | protected static void AddQuad(UIVertexHelper vertexHelper, Vector3[] quadPositions, Color32 color, Vector3[] quadUVs)
92 | {
93 | int startIndex = vertexHelper.currentVertCount;
94 |
95 | for (int i = 0; i < 4; ++i)
96 | vertexHelper.AddVert(quadPositions[i], color, quadUVs[i]);
97 |
98 | vertexHelper.AddTriangle(startIndex, startIndex + 1, startIndex + 2);
99 | vertexHelper.AddTriangle(startIndex + 2, startIndex + 3, startIndex);
100 | }
101 |
102 | protected static void AddQuad(UIVertexHelper vertexHelper, Vector2 posMin, Vector2 posMax, Color32 color, Vector2 uvMin, Vector2 uvMax)
103 | {
104 | int startIndex = vertexHelper.currentVertCount;
105 |
106 | vertexHelper.AddVert(new Vector3(posMin.x, posMin.y, 0), color, new Vector2(uvMin.x, uvMin.y));
107 | vertexHelper.AddVert(new Vector3(posMin.x, posMax.y, 0), color, new Vector2(uvMin.x, uvMax.y));
108 | vertexHelper.AddVert(new Vector3(posMax.x, posMax.y, 0), color, new Vector2(uvMax.x, uvMax.y));
109 | vertexHelper.AddVert(new Vector3(posMax.x, posMin.y, 0), color, new Vector2(uvMax.x, uvMin.y));
110 |
111 | vertexHelper.AddTriangle(startIndex, startIndex + 1, startIndex + 2);
112 | vertexHelper.AddTriangle(startIndex + 2, startIndex + 3, startIndex);
113 | }
114 | }
115 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/GraphicNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f7ad0e22b385980468ef6f56d2a6995c
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/SimpleImageNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 81ab68e300b44da7a48994bb9e86d36b
3 | timeCreated: 1535197718
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/SlicedImageNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using NodeEditor.Controls;
3 | using UnityEngine;
4 | using UnityEngine.Sprites;
5 |
6 | namespace UINodeEditor.Elements
7 | {
8 | ///
9 | /// Sliced image node that is similar to with the sliced image option enabled.
10 | /// It draws a sprite image that can have corners and draw a sliced sprite.
11 | ///
12 | [Title("Elements","Image (Sliced)")]
13 | public class SlicedImageNode : GraphicNode
14 | {
15 | [SerializeField] private bool m_FillCenter = true;
16 |
17 | private struct SpriteData
18 | {
19 | public bool hasSprite;
20 | public Vector4 padding;
21 | public Vector4 outerUv;
22 | public Vector4 innerUv;
23 | public Vector4 border;
24 | }
25 |
26 | [DefaultControl(label = "Fill Center")]
27 | public bool fillCenter
28 | {
29 | get { return m_FillCenter; }
30 | set
31 | {
32 | m_FillCenter = value;
33 | OnMeshDirty();
34 | }
35 | }
36 |
37 | private SlotChangeListener m_SpriteInput;
38 | private SpriteData m_SpriteData;
39 |
40 | public SlicedImageNode()
41 | {
42 | name = "Sliced Image";
43 | m_SpriteInput = CreateSlotListener(CreateInputSlot>("Sprite"), OnMeshDirty);
44 | }
45 |
46 | protected override void Execute(UIEventData eData, Rect rect)
47 | {
48 | if (eData.EventType == UIEventType.Layout)
49 | {
50 | var sprite = m_SpriteInput[this];
51 | if (sprite != null)
52 | m_SpriteData = new SpriteData()
53 | {
54 | padding = DataUtility.GetPadding(sprite),
55 | outerUv = DataUtility.GetOuterUV(sprite),
56 | innerUv = DataUtility.GetInnerUV(sprite),
57 | border = sprite.border,
58 | hasSprite = true
59 | };
60 | else
61 | m_SpriteData = new SpriteData();
62 | }
63 | else if (eData.EventType == UIEventType.PreRepaint)
64 | {
65 | var color = m_Color[this];
66 | var pivot = m_Pivot[this];
67 | var vertexHelper = eData.MeshRepository.GetVertexHelper(guid);
68 | var localRect = new Rect(-pivot.x * rect.width, -pivot.y * rect.height, rect.width,rect.height);
69 | GenerateSlicedSprite(vertexHelper, m_SpriteData, localRect, color);
70 | }
71 | else if (eData.EventType == UIEventType.Repaint)
72 | {
73 | var sprite = m_SpriteInput[this];
74 | var matrix = m_Matrix[this];
75 | var mat = m_Material[this];
76 | var pivot = m_Pivot[this];
77 |
78 | var vertexHelper = eData.MeshRepository.GetVertexHelper(guid);
79 | var mesh = eData.MeshRepository.GetMesh(guid);
80 | MaterialPropertyBlock propertyBlock = null;
81 | vertexHelper.FillMesh(mesh);
82 |
83 | if (sprite != null)
84 | {
85 | propertyBlock = eData.MeshRepository.GetPropertyBLock(guid);
86 | propertyBlock.SetTexture(m_MainTexProp, sprite.texture);
87 | }
88 |
89 | eData.RenderBuffer.Render(mesh, Matrix4x4.Translate(new Vector3(rect.x + pivot.x * rect.width, rect.y + pivot.y * rect.height, m_ZOffset[this])) * matrix, mat, propertyBlock);
90 | }
91 | base.Execute(eData, rect);
92 | }
93 |
94 | private readonly Vector2[] s_VertScratch = new Vector2[4];
95 | private readonly Vector2[] s_UVScratch = new Vector2[4];
96 |
97 | private void GenerateSlicedSprite(UIVertexHelper vertexHelper, SpriteData sprite, Rect rect, Color color)
98 | {
99 | Vector4 outer = sprite.outerUv;
100 | Vector4 inner = sprite.innerUv;
101 | Vector4 padding = sprite.padding;
102 | Vector4 border = sprite.border;
103 |
104 | Vector4 adjustedBorders = border;
105 |
106 | s_VertScratch[0] = new Vector2(padding.x, padding.y);
107 | s_VertScratch[3] = new Vector2(rect.width - padding.z, rect.height - padding.w);
108 |
109 | s_VertScratch[1].x = adjustedBorders.x;
110 | s_VertScratch[1].y = adjustedBorders.y;
111 |
112 | s_VertScratch[2].x = rect.width - adjustedBorders.z;
113 | s_VertScratch[2].y = rect.height - adjustedBorders.w;
114 |
115 | for (int i = 0; i < 4; ++i)
116 | {
117 | s_VertScratch[i].x += rect.x;
118 | s_VertScratch[i].y += rect.y;
119 | }
120 |
121 | s_UVScratch[0] = new Vector2(outer.x, outer.y);
122 | s_UVScratch[1] = new Vector2(inner.x, inner.y);
123 | s_UVScratch[2] = new Vector2(inner.z, inner.w);
124 | s_UVScratch[3] = new Vector2(outer.z, outer.w);
125 |
126 | vertexHelper.Clear();
127 |
128 | for (int x = 0; x < 3; ++x)
129 | {
130 | int x2 = x + 1;
131 |
132 | for (int y = 0; y < 3; ++y)
133 | {
134 | if (!m_FillCenter && x == 1 && y == 1)
135 | continue;
136 |
137 | int y2 = y + 1;
138 |
139 |
140 | AddQuad(vertexHelper,
141 | new Vector2(s_VertScratch[x].x, s_VertScratch[y].y),
142 | new Vector2(s_VertScratch[x2].x, s_VertScratch[y2].y),
143 | color,
144 | new Vector2(s_UVScratch[x].x, s_UVScratch[y].y),
145 | new Vector2(s_UVScratch[x2].x, s_UVScratch[y2].y));
146 | }
147 | }
148 | }
149 | }
150 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/SlicedImageNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 147708cd7595429083585ab76e3ac11f
3 | timeCreated: 1535198329
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/TextNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2d8d1a91fe4e4ad19ed506bc91b9bd25
3 | timeCreated: 1535028750
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/TiledImageNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d33d3351346844d089bb7a736b5fc0cc
3 | timeCreated: 1535198881
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/UIElementNode.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Threading;
4 | using NodeEditor;
5 | using UnityEngine;
6 |
7 | namespace UINodeEditor.Elements
8 | {
9 | ///
10 | /// Base class for all UI elements.
11 | /// It has UI position and offset values as well as an Execute methods that calculates the rects of all children.
12 | ///
13 | public class UIElementNode : AbstractUINode
14 | {
15 | private EmptySlot> m_Event;
16 | protected ValueSlot m_Position;
17 | protected ValueSlot m_Size;
18 | protected ValueSlot m_OffsetMin;
19 | protected ValueSlot m_OffsetMax;
20 | protected ValueSlot m_AnchorMin;
21 | protected ValueSlot m_AnchorMax;
22 | private List> m_ValuesTmp = new List>();
23 |
24 | public UIElementNode()
25 | {
26 | m_Event = CreateInputSlot>>("Event");
27 | m_Event.SetAllowMultipleConnections(true);
28 | m_Position = CreateInputSlot>("pos","Position").SetShowControl();
29 | m_Size = CreateInputSlot>("size","Size").SetValue(new Vector2(100, 100)).SetShowControl();
30 | m_OffsetMin = CreateInputSlot>("minOffset","Offset Min").SetShowControl();
31 | m_OffsetMax = CreateInputSlot>("maxOffset","Offset Max").SetShowControl();
32 | m_AnchorMin = CreateInputSlot>("minAnchor","Anchor Min %").SetValue(new Vector2(0.5f,0.5f)).SetShowControl();
33 | m_AnchorMax = CreateInputSlot>("maxAnchor","Anchor Max %").SetValue(new Vector2(0.5f, 0.5f)).SetShowControl();
34 | }
35 |
36 | protected void Execute(UIEventData eventData)
37 | {
38 | try
39 | {
40 | var position = m_Position[this];
41 | var size = m_Size[this];
42 | var offsetMin = m_OffsetMin[this];
43 | var offsetMax = m_OffsetMax[this];
44 | var anchorMin = m_AnchorMin[this];
45 | var anchorMax = m_AnchorMax[this];
46 |
47 | var parentRect = eventData.Rect;
48 | Vector2 min = new Vector2();
49 | Vector2 max = new Vector2();
50 |
51 | min.x = parentRect.x + position.x + anchorMin.x * parentRect.width + offsetMin.x;
52 | min.y = parentRect.y + position.y + anchorMin.y * parentRect.height + offsetMin.y;
53 | max.x = parentRect.x + position.x + size.x + parentRect.width * anchorMax.x - offsetMax.x;
54 | max.y = parentRect.y + position.y + size.y + parentRect.height * anchorMax.y - offsetMax.y;
55 |
56 | try
57 | {
58 | Execute(eventData, new Rect(min.x, min.y, max.x - min.x, max.y - min.y));
59 | }
60 | catch (Exception e)
61 | {
62 | Debug.LogException(e);
63 | }
64 | }
65 | finally
66 | {
67 | if (eventData.WaitHandle != null) eventData.WaitHandle.MarkDone();
68 | }
69 | }
70 |
71 | ///
72 | /// Execute a UI event.
73 | /// Events can be of multiple types .
74 | /// Some events are ran on a different thread.
75 | ///
76 | ///
77 | ///
78 | protected virtual void Execute(UIEventData eventData,Rect rect)
79 | {
80 | eventData.Rect = new Rect(rect.position, rect.size);
81 | try
82 | {
83 | GetSlotValues(m_Event, m_ValuesTmp);
84 | if (eventData.WaitHandle != null)
85 | {
86 | foreach (var action in m_ValuesTmp)
87 | {
88 | eventData.WaitHandle.AddWait();
89 | ThreadPool.QueueUserWorkItem(c => action.Invoke((UIEventData)c), eventData);
90 | }
91 | }
92 | else
93 | {
94 | foreach (var action in m_ValuesTmp)
95 | {
96 | action.Invoke(eventData);
97 | }
98 | }
99 | }
100 | finally
101 | {
102 | m_ValuesTmp.Clear();
103 | }
104 | }
105 | }
106 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Elements/UIElementNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1ce19c95edbb4577856f27cdd36af7c9
3 | timeCreated: 1535120065
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/ExecutionFilterNode.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Threading;
4 | using NodeEditor;
5 | using NodeEditor.Slots;
6 | using UnityEngine;
7 |
8 | namespace UINodeEditor
9 | {
10 | ///
11 | /// A node that acts like a filter for UI elements. If the filter input is false then no children will be executed.
12 | ///
13 | [Title("Util","Execution Filter")]
14 | public class ExecutionFilterNode : AbstractNode
15 | {
16 | private EmptySlot> m_Event;
17 | private ValueSlot m_Filter;
18 | private List> m_ValuesTmp = new List>();
19 |
20 | public ExecutionFilterNode()
21 | {
22 | m_Event = CreateInputSlot>>("Event");
23 | m_Event.SetAllowMultipleConnections(true);
24 | m_Filter = CreateInputSlot>("Filter").SetShowControl();
25 | CreateOutputSlot>>("UI Event").SetDefaultValue(Execute);
26 | }
27 |
28 | private void Execute(UIEventData eventData)
29 | {
30 | try
31 | {
32 | Execute(eventData, eventData.Rect);
33 | }
34 | finally
35 | {
36 | if (eventData.WaitHandle != null) eventData.WaitHandle.MarkDone();
37 | }
38 | }
39 |
40 | protected virtual void Execute(UIEventData eventData, Rect rect)
41 | {
42 | if(!m_Filter[this]) return;
43 |
44 | try
45 | {
46 | GetSlotValues(m_Event, m_ValuesTmp);
47 | if (eventData.WaitHandle != null)
48 | {
49 | foreach (var action in m_ValuesTmp)
50 | {
51 | eventData.WaitHandle.AddWait();
52 | ThreadPool.QueueUserWorkItem(c => action.Invoke((UIEventData)c), eventData);
53 | }
54 | }
55 | else
56 | {
57 | foreach (var action in m_ValuesTmp)
58 | {
59 | action.Invoke(eventData);
60 | }
61 | }
62 | }
63 | finally
64 | {
65 | m_ValuesTmp.Clear();
66 | }
67 | }
68 | }
69 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/ExecutionFilterNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ca52a9831fed413eb9a2ea2198e6587e
3 | timeCreated: 1535296929
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/ExecutionNode.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using NodeEditor;
3 |
4 | namespace UINodeEditor
5 | {
6 | ///
7 | /// A simple execute node.
8 | ///
9 | [Title("Execution Node")]
10 | public class ExecutionNode : AbstractNode
11 | {
12 | private ValueSlot Input;
13 |
14 | public ExecutionNode()
15 | {
16 | Input = CreateInputSlot>("Input");
17 | }
18 |
19 | public void Execute()
20 | {
21 | var action = Input[this];
22 | if(action != null) action.Invoke();
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/ExecutionNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3bfd635659954856b8d097485b24f114
3 | timeCreated: 1534851652
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Input.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 06bc899e3aff42e3b07861f907e98408
3 | timeCreated: 1535109408
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Input/MousePositionNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using UnityEngine;
3 |
4 | namespace UINodeEditor
5 | {
6 | ///
7 | /// Node that provides the 2D and 3D mouse position gotten straight from .
8 | ///
9 | [Title("Input","Mouse Position")]
10 | public class MousePositionNode : AbstractNode
11 | {
12 | public MousePositionNode()
13 | {
14 | name = "Mouse Position";
15 | CreateOutputSlot>("2D").SetGetter(() => Input.mousePosition);
16 | CreateOutputSlot>("3D").SetGetter(() => Input.mousePosition);
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Input/MousePositionNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fffe6a726ef44edcba69d06f417814ec
3 | timeCreated: 1534873901
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Input/RectTransformNode.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using NodeEditor;
3 | using NodeEditor.Controls;
4 | using UnityEngine;
5 |
6 | namespace UINodeEditor
7 | {
8 | ///
9 | /// A rect transform node that calculates a rect value based on the anchor, offset, position and size.
10 | ///
11 | [Title("Builder","Rect Transform")]
12 | public class RectTransformNode : AbstractUINode
13 | {
14 | [SerializeField] private Vector2 m_AnchorMin = new Vector2(0.5f,0.5f);
15 | [SerializeField] private Vector2 m_AnchorMax = new Vector2(0.5f,0.5f);
16 | [SerializeField] private Vector2 m_OffsetMin = new Vector2(0, 0);
17 | [SerializeField] private Vector2 m_OffsetMax = new Vector2(0, 0);
18 | [SerializeField] private Vector2 m_Position = new Vector2(0,0);
19 | [SerializeField] private Vector2 m_Size = new Vector2(100,100);
20 |
21 | [DefaultControl(label = "Anchor Min")]
22 | public Vector2 anchorMin
23 | {
24 | get { return m_AnchorMin; }
25 | set { m_AnchorMin = value; }
26 | }
27 |
28 | [DefaultControl(label = "Anchor Max")]
29 | public Vector2 anchorMax
30 | {
31 | get { return m_AnchorMax; }
32 | set { m_AnchorMax = value; }
33 | }
34 |
35 | [DefaultControl(label = "Offset Min")]
36 | public Vector2 offsetMin
37 | {
38 | get { return m_OffsetMin; }
39 | set { m_OffsetMin = value; }
40 | }
41 |
42 | [DefaultControl(label = "Offset Max")]
43 | public Vector2 offsetMax
44 | {
45 | get { return m_OffsetMax; }
46 | set { m_OffsetMax = value; }
47 | }
48 |
49 | /*[DefaultControl(label = "Position")]
50 | public Vector2 position
51 | {
52 | get { return m_Position; }
53 | set { m_Position = value; }
54 | }
55 |
56 | [DefaultControl(label = "Size")]
57 | public Vector2 size
58 | {
59 | get { return m_Size; }
60 | set { m_Size = value; }
61 | }*/
62 |
63 | [SerializeField]
64 | private ValueSlot m_OutRect;
65 | private ValueSlot> m_EventOut;
66 |
67 | public RectTransformNode()
68 | {
69 | m_EventOut = CreateOutputSlot>>("outEvent", "Event").SetValue(CalculateRect);
70 | m_OutRect = CreateOutputSlot>("outRect","Rect");
71 | }
72 |
73 | private void CalculateRect(UIEventData eventData)
74 | {
75 | if (eventData.EventType == UIEventType.Layout)
76 | {
77 | var parentRect = eventData.Rect;
78 | var outRect = new Rect
79 | {
80 | x = m_AnchorMin.x * parentRect.width + m_OffsetMin.x,
81 | y = m_AnchorMin.y * parentRect.height + m_OffsetMin.y,
82 | width = m_AnchorMax.x * parentRect.width - m_OffsetMax.x - m_AnchorMin.x * parentRect.width - m_OffsetMin.x,
83 | height = m_AnchorMax.y * parentRect.height - m_OffsetMax.y - m_AnchorMin.y * parentRect.height - m_OffsetMin.y
84 | };
85 |
86 | m_OutRect.SetValue(outRect);
87 | }
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Input/RectTransformNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4aff4d92d8f84ad08660d4a624c644a0
3 | timeCreated: 1535192395
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Input/ScreenMatrixNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using NodeEditor.Controls;
3 | using UnityEngine;
4 |
5 | namespace UINodeEditor
6 | {
7 | ///
8 | /// A matrix node that provides a screen matrix that can be used in a to draw elements in screen space.
9 | /// With a rect as big as the camera's pixels.
10 | /// It uses the main camera from .
11 | ///
12 | [Title("Input","Screen Matrix")]
13 | public class ScreenMatrixNode : AbstractNode, ITickableNode
14 | {
15 | [SerializeField] private float m_Distance = 1;
16 | private ValueSlot m_Output;
17 | private GetterSlot m_Camera;
18 | private ValueSlot m_ScreenRect;
19 | private Camera m_CachedCamera;
20 |
21 | ///
22 | /// The distance of the UI elements from the camera.
23 | /// Elements are scaled based on this distance so they appear the same size in screen space.
24 | ///
25 | [DefaultControl(label = "Distance")]
26 | public float distance
27 | {
28 | get { return m_Distance; }
29 | set
30 | {
31 | m_Distance = value;
32 | Dirty(ModificationScope.Node);
33 | }
34 | }
35 |
36 | public ScreenMatrixNode()
37 | {
38 | m_Camera = CreateOutputSlot>("Camera").SetGetter(()=> m_CachedCamera);
39 | m_ScreenRect = CreateOutputSlot>("ScreenRect").SetValue(new Rect(0, 0, 256, 256));
40 | m_Output = CreateOutputSlot>("Mat").SetValue(Matrix4x4.identity);
41 | }
42 |
43 | private Matrix4x4 CalculateMatrix()
44 | {
45 | var frustumHeight = 2.0f * m_Distance * Mathf.Tan(m_CachedCamera.fieldOfView * 0.5f * Mathf.Deg2Rad);
46 | var frustumWidth = frustumHeight * m_CachedCamera.aspect;
47 | return m_CachedCamera.cameraToWorldMatrix * Matrix4x4.Translate(new Vector3(-frustumWidth * 0.5f, -frustumHeight * 0.5f, -m_Distance)) * Matrix4x4.Scale(new Vector3(frustumWidth / m_CachedCamera.pixelWidth, frustumHeight / m_CachedCamera.pixelHeight));
48 | }
49 |
50 | public void Tick()
51 | {
52 | if(m_CachedCamera == null) m_CachedCamera = Camera.main;
53 | m_Output.SetValue(CalculateMatrix());
54 | m_ScreenRect.SetValue(m_CachedCamera.pixelRect);
55 | }
56 | }
57 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Input/ScreenMatrixNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9f7cedf31077458ba378f0464dfe3136
3 | timeCreated: 1534877154
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Math.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3ca2596473ff4527a689d46c6c449e0f
3 | timeCreated: 1534876035
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Math/MultiplyNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using UnityEngine;
3 |
4 | namespace UINodeEditor.Math
5 | {
6 | ///
7 | /// Matrix4x4 multiplication node.
8 | ///
9 | [Title("Math", "Multiply", "Multiply: Matrix4x4")]
10 | public class MatrixMultiply : MultiplyNode
11 | {
12 | protected override Matrix4x4 Multiply(Matrix4x4 lhs, Matrix4x4 rhs)
13 | {
14 | return lhs * rhs;
15 | }
16 | }
17 |
18 | ///
19 | /// Base class for all multiplications nodes.
20 | ///
21 | ///
22 | public abstract class MultiplyNode : AbstractNode
23 | {
24 | private EmptySlot m_Input0;
25 | private EmptySlot m_Input1;
26 |
27 | protected MultiplyNode()
28 | {
29 | m_Input0 = CreateInputSlot>("0");
30 | m_Input1 = CreateInputSlot>("1");
31 | CreateOutputSlot>("Out").SetGetter(MultiplyInternal);
32 | }
33 |
34 | private T MultiplyInternal()
35 | {
36 | return Multiply(m_Input0[this], m_Input1[this]);
37 | }
38 |
39 | ///
40 | /// Called when the output is accessed.
41 | ///
42 | /// Value 1.
43 | /// Value 2.
44 | /// The multiplication of and
45 | protected abstract T Multiply(T lhs, T rhs);
46 | }
47 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Math/MultiplyNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5057fe1694bd4f4aaeeb1abfa639f3eb
3 | timeCreated: 1534876046
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Math/Scale.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using UnityEngine;
3 |
4 | namespace UINodeEditor.Math
5 | {
6 | ///
7 | /// Vector4 Scale node. Scaled by a float.
8 | ///
9 | [Title("Math", "4D", "Scale: 4D")]
10 | public class ScaleVector4 : AbstractNode
11 | {
12 | public ScaleVector4()
13 | {
14 | name = "Scale Vector4";
15 | var inVec = CreateInputSlot>("In");
16 | var scale = CreateInputSlot>("Scale").SetValue(1).SetShowControl();
17 | CreateOutputSlot>("Out").SetGetter(() => inVec[this] * scale[this]);
18 | }
19 | }
20 |
21 | ///
22 | /// Vector3 scale node. Scaled by a float.
23 | ///
24 | [Title("Math","3D","Scale: 3D")]
25 | public class ScaleVector3 : AbstractNode
26 | {
27 | public ScaleVector3()
28 | {
29 | name = "Scale Vector3";
30 | var inVec = CreateInputSlot>("In");
31 | var scale = CreateInputSlot>("Scale").SetValue(1).SetShowControl();
32 | CreateOutputSlot>("Out").SetGetter(()=> inVec[this] * scale[this]);
33 | }
34 | }
35 |
36 | ///
37 | /// Vector2 scale node. Scaled by a float.
38 | ///
39 | [Title("Math", "2D", "Scale: 2D")]
40 | public class ScaleVector2 : AbstractNode
41 | {
42 | public ScaleVector2()
43 | {
44 | name = "Scale Vector2";
45 | var inVec = CreateInputSlot>("In");
46 | var scale = CreateInputSlot>("Scale").SetValue(1).SetShowControl();
47 | CreateOutputSlot>("Out").SetGetter(() => inVec[this] * scale[this]);
48 | }
49 | }
50 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/Math/Scale.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6093daa68739418a9f0cd6d06af4c909
3 | timeCreated: 1534878799
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/MatrixBuilderNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using UnityEngine;
3 |
4 | namespace UINodeEditor
5 | {
6 | ///
7 | /// A node that builds a matrix4x4 from position, rotation and scale.
8 | ///
9 | [Title("Builder","Matrix4x4")]
10 | public class MatrixBuilderNode : AbstractNode
11 | {
12 | private ValueSlot m_Pos;
13 | private ValueSlot m_Rot;
14 | private ValueSlot m_Scale;
15 |
16 | public MatrixBuilderNode()
17 | {
18 | name = "Matrix Builder";
19 | CreateOutputSlot>("Out").SetGetter(() => Matrix4x4.TRS(m_Pos[this], m_Rot[this], m_Scale[this]));
20 | m_Pos = CreateInputSlot>("Position").SetShowControl();
21 | m_Rot = CreateInputSlot>("Rotation").SetValue(Quaternion.identity).SetShowControl();
22 | m_Scale = CreateInputSlot>("Scale").SetValue(Vector3.one).SetShowControl();
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/MatrixBuilderNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e59ceff5207d4e0e9035ecbf4228c70a
3 | timeCreated: 1534874165
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/RectMatrixBuilderNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using UnityEngine;
3 |
4 | namespace UINodeEditor
5 | {
6 | ///
7 | /// Builds a matrix from rect position and size.
8 | ///
9 | [Title("Builder","Rect Matrix")]
10 | public class RectMatrixBuilderNode : AbstractNode
11 | {
12 | private ValueSlot m_Position;
13 | private ValueSlot m_Size;
14 |
15 | public RectMatrixBuilderNode()
16 | {
17 | name = "Rect Matrix";
18 | m_Position = CreateInputSlot>("Position").SetShowControl();
19 | m_Size = CreateInputSlot>("Size").SetShowControl();
20 | CreateOutputSlot>("Out").SetGetter(BuildMatrix);
21 | }
22 |
23 | private Matrix4x4 BuildMatrix()
24 | {
25 | var pos = m_Position[this];
26 | var size = m_Size[this];
27 |
28 | return Matrix4x4.TRS(pos, Quaternion.identity, size);
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/RectMatrixBuilderNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c445ebd6b0a641b2a9b338ff3eb84c6f
3 | timeCreated: 1535027185
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/SlotChangeListener.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using NodeEditor;
4 |
5 | namespace UINodeEditor
6 | {
7 | ///
8 | /// A slot change listener can access a slot value from a node and compare it with an old cached value to see if new values differs.
9 | ///
10 | ///
11 | public class SlotChangeListener
12 | {
13 | private ISlot m_Slot;
14 | private Action m_ChangeListener;
15 | private T m_OldValue;
16 |
17 | public SlotChangeListener(ISlot slot, Action action)
18 | {
19 | m_Slot = slot;
20 | m_ChangeListener = action;
21 | }
22 |
23 | ///
24 | /// Get the slot value from a given node.
25 | ///
26 | /// The node that the slot belongs to.
27 | /// The current value of the slot.
28 | public T this[AbstractNode node]
29 | {
30 | get
31 | {
32 | var newValue = node.GetSlotValue(m_Slot);
33 | if (!EqualityComparer.Default.Equals(newValue,m_OldValue))
34 | {
35 | m_OldValue = newValue;
36 | if(m_ChangeListener != null) m_ChangeListener.Invoke();
37 | }
38 | return newValue;
39 |
40 | }
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/SlotChangeListener.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 77dbedde5cc44181aed2c11fa23dacf4
3 | timeCreated: 1535047659
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/TimerNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using NodeEditor.Controls;
3 | using NodeEditor.Slots;
4 | using UnityEngine;
5 |
6 | namespace UINodeEditor
7 | {
8 | ///
9 | /// A timer node increments a float based on a speed input.
10 | /// This is used if speed needs to change and the can't handle variable speed.
11 | ///
12 | [Title("Input", "Timer")]
13 | public class TimerNode : AbstractNode, ITickableNode
14 | {
15 | [SerializeField] private bool m_unscaled;
16 |
17 | ///
18 | /// If true timer will be increased by unscaled delta time.
19 | /// If false timer will be increased by scaled delta time.
20 | ///
21 | [DefaultControl(label = "Unscaled")]
22 | public bool unscaled
23 | {
24 | get => m_unscaled;
25 | set => m_unscaled = value;
26 | }
27 |
28 | private ValueSlot m_Speed;
29 | private DefaultValueSlot m_Time;
30 |
31 | public TimerNode()
32 | {
33 | m_Speed = CreateInputSlot>("Speed").SetValue(1).SetShowControl();
34 | m_Time = CreateOutputSlot>("Time");
35 | }
36 |
37 | void ITickableNode.Tick()
38 | {
39 | m_Time.SetDefaultValue(m_Time.value + (m_unscaled ? Time.unscaledDeltaTime : Time.deltaTime) * m_Speed[this]);
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/TimerNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 506256936e054f49af62fa475e08f799
3 | timeCreated: 1568973602
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/To2DNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using UnityEngine;
3 |
4 | namespace UINodeEditor
5 | {
6 | ///
7 | /// Node that converts a Vector2 input to Vector3.
8 | ///
9 | [Title("Conversion", "To 2D")]
10 | public class To2DNode : AbstractNode
11 | {
12 | public To2DNode()
13 | {
14 | var input = CreateInputSlot>("In");
15 | CreateOutputSlot>("Out").SetGetter(() => input[this]);
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/To2DNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 774a3ed4bc8940b5b3ffbf2b7e7d2376
3 | timeCreated: 1534875477
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/To3DNode.cs:
--------------------------------------------------------------------------------
1 | using NodeEditor;
2 | using UnityEngine;
3 |
4 | namespace UINodeEditor
5 | {
6 | ///
7 | /// A node that converts a Vector2 into a Vector3
8 | ///
9 | [Title("Conversion","To 3D")]
10 | public class To3DNode : AbstractNode
11 | {
12 | private EmptySlot m_Input;
13 |
14 | public To3DNode()
15 | {
16 | m_Input = CreateInputSlot>("In");
17 | CreateOutputSlot>("Out").SetGetter(() => m_Input[this]);
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/To3DNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bbf32d0b85734482ba1c2463793c6382
3 | timeCreated: 1534875109
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/UIDirtyType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace UINodeEditor
4 | {
5 | ///
6 | /// Flags that indicated by what kind of operation was a UI dirtied by.
7 | ///
8 | [Flags]
9 | public enum UIDirtyType
10 | {
11 | None = 0,
12 | Mesh = 1,
13 | Layout = 2
14 | }
15 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/UIDirtyType.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a102227709b045a691d69b904a631053
3 | timeCreated: 1535047365
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/UIMasterNode.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using NodeEditor;
4 | using NodeEditor.Slots;
5 | using UnityEngine;
6 |
7 | namespace UINodeEditor
8 | {
9 | ///
10 | /// Master node is the main node in each graph. It acts like a canvas for the UI.
11 | /// It executes the calculations and gets the values from all children connected to it.
12 | /// It also has the rect and matrix of the "canvas".
13 | ///
14 | [Title("UI Master Node")]
15 | public class UIMasterNode : AbstractNode
16 | {
17 | private EmptySlot> m_Input;
18 | private DefaultValueSlot m_Matrix;
19 | private ValueSlot m_Rect;
20 | private List> m_TmpSlots;
21 |
22 | public Matrix4x4 matrix => m_Matrix[this];
23 | public Rect rect => m_Rect[this];
24 |
25 | public UIMasterNode()
26 | {
27 | name = "UI Master Node";
28 | m_Input = CreateInputSlot>>("UI Event");
29 | m_Input.SetAllowMultipleConnections(true);
30 | m_Rect = CreateInputSlot>("Rect").SetShowControl();
31 | m_Matrix = CreateInputSlot>("Matrix").SetDefaultValue(Matrix4x4.identity);
32 | }
33 |
34 | public void GetInputValues(IList> values)
35 | {
36 | GetSlotValues(m_Input, values);
37 | }
38 | }
39 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/Nodes/UIMasterNode.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c438e98837014c4c8c9528955842e558
3 | timeCreated: 1534864683
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIEventType.cs:
--------------------------------------------------------------------------------
1 | namespace UINodeEditor
2 | {
3 | ///
4 | /// The type of UI event that a will execute.
5 | ///
6 | ///
7 | public enum UIEventType
8 | {
9 | ///
10 | /// Layout event is ran first on main thread.
11 | ///
12 | Layout,
13 | ///
14 | /// Pre Repaint is ran second on multiple threads
15 | ///
16 | PreRepaint,
17 | ///
18 | /// Repaint is ran final on main thread.
19 | ///
20 | Repaint
21 | }
22 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIEventType.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d9a6c6c99e4b438db21911187ecda32e
3 | timeCreated: 1535118897
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIGraphComponent.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using NodeEditor;
3 | using UnityEngine;
4 | using UnityEngine.Profiling;
5 | using UnityEngine.Rendering;
6 |
7 | namespace UINodeEditor
8 | {
9 | ///
10 | /// A component tha can be placed in a scene and will render all UI elements from a .
11 | /// It uses a local that handles pooling.
12 | ///
13 | [RequireComponent(typeof(Camera))]
14 | [ImageEffectAllowedInSceneView]
15 | public class UIGraphComponent : MonoBehaviour
16 | {
17 | [SerializeField,Range(0,600)] private float m_Health;
18 | [SerializeField] private UIGraphObject m_Graph;
19 | [SerializeField] private bool m_Threaded;
20 | private Guid m_HealthId = StringToGUID.Get("health");
21 | private CommandBuffer m_CommandBuffer;
22 | private UIGraphRenderer m_Renderer;
23 |
24 | private void Awake()
25 | {
26 | m_CommandBuffer = new CommandBuffer {name = name};
27 | m_Renderer = new UIGraphRenderer();
28 | }
29 |
30 | private void OnEnable()
31 | {
32 | GetComponent().AddCommandBuffer(CameraEvent.AfterForwardAlpha,m_CommandBuffer);
33 | }
34 |
35 | private void OnDisable()
36 | {
37 | GetComponent().RemoveCommandBuffer(CameraEvent.AfterForwardAlpha, m_CommandBuffer);
38 | }
39 |
40 | private void OnDestroy()
41 | {
42 | m_CommandBuffer.Dispose();
43 | m_Renderer.Dispose();
44 | }
45 |
46 | private void Update()
47 | {
48 | UpdateInternal();
49 | }
50 |
51 | private void UpdateInternal()
52 | {
53 | GlobalProperties.SetValue(m_HealthId, m_Health);
54 |
55 | Profiler.BeginSample("UIGraph");
56 | Profiler.BeginSample("UIGraph Tick");
57 | var nodes = m_Graph.graph.GetNodes();
58 | foreach (var node in nodes)
59 | (node as ITickableNode)?.Tick();
60 | Profiler.EndSample();
61 | m_Renderer.PopulateCommandBuffer(m_Threaded, nodes,m_CommandBuffer);
62 | Profiler.EndSample();
63 | foreach (var node in nodes)
64 | (node as AbstractUINode)?.ClearDirty();
65 | }
66 | }
67 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIGraphComponent.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c6c38918b95047a193bde0241cb6c7fb
3 | timeCreated: 1534865328
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIGraphObject.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using NodeEditor;
5 | using UnityEngine;
6 | using Object = UnityEngine.Object;
7 |
8 | namespace UINodeEditor
9 | {
10 | ///
11 | /// A graph object that holds all UI nodes as well as exposed references.
12 | ///
13 | [CreateAssetMenu]
14 | public class UIGraphObject : GraphObjectBase, IReferenceTable, ISerializationCallbackReceiver, IPropertyTable
15 | {
16 | private Dictionary m_References = new Dictionary();
17 |
18 | [SerializeField, HideInInspector]
19 | private List m_SerializedReferences = new List();
20 |
21 | [SerializeField, HideInInspector] private TextAsset m_DataAsset;
22 | [SerializeField, HideInInspector] private string m_SerializedGraph;
23 |
24 | IGraph m_DeserializedGraph;
25 |
26 | [Serializable]
27 | public struct ReferenceEntry
28 | {
29 | public byte[] guid;
30 | public Object obj;
31 | }
32 |
33 | ///
34 | /// Set an exposed reference values.
35 | ///
36 | /// The exposed reference id.
37 | /// The new value of the exposed reference.
38 | public void SetReferenceValue(Guid id, Object value)
39 | {
40 | if (m_References.ContainsKey(id))
41 | {
42 | m_References[id] = value;
43 | }
44 | else
45 | {
46 | m_References.Add(id, value);
47 | }
48 | #if UNITY_EDITOR
49 | UnityEditor.EditorUtility.SetDirty(this);
50 | #endif
51 | }
52 |
53 | ///
54 | /// Get a value for an exposed reference.
55 | ///
56 | /// The id of the reference.
57 | /// Does the reference exist.
58 | /// The exposed reference value.
59 | public Object GetReferenceValue(Guid id, out bool idValid)
60 | {
61 | Object val;
62 | idValid = m_References.TryGetValue(id, out val);
63 | return val;
64 | }
65 |
66 | ///
67 | /// Remove an exposed reference with a given id.
68 | ///
69 | /// The id of the reference to remove.
70 | public void ClearReferenceValue(Guid id)
71 | {
72 | m_References.Remove(id);
73 | }
74 |
75 | ///
76 | /// Get a global property value. It just calls .
77 | ///
78 | /// The type of global property.
79 | /// The id of the global property.
80 | /// Does the id exist.
81 | ///
82 | public T GetPropertyValue(Guid id, out bool validId)
83 | {
84 | T val;
85 | validId = GlobalProperties.TryGetValue(id, out val);
86 | return val;
87 | }
88 |
89 | public void ClearPropertyValue(Guid id)
90 | {
91 | GlobalProperties.RemoveKey(id);
92 | }
93 |
94 | public void SetPropertyValue(Guid id, T val)
95 | {
96 | GlobalProperties.SetValue(id, val);
97 | }
98 |
99 | protected IGraph CreateGraph()
100 | {
101 | return new NodeGraph();
102 | }
103 |
104 | protected override void OnObjectEnable()
105 | {
106 | if (graph == null)
107 | {
108 | graph = CreateGraph();
109 | }
110 | }
111 |
112 | void ISerializationCallbackReceiver.OnBeforeSerialize()
113 | {
114 | var elementData = SerializationHelper.Serialize(graph);
115 | m_SerializedGraph = JsonUtility.ToJson(elementData);
116 |
117 | m_SerializedReferences.Clear();
118 | foreach (var o in m_References)
119 | {
120 | m_SerializedReferences.Add(new ReferenceEntry() {guid = o.Key.ToByteArray(), obj = o.Value});
121 | }
122 | }
123 |
124 | void ISerializationCallbackReceiver.OnAfterDeserialize()
125 | {
126 | try
127 | {
128 | var deserializedGraph = SerializationHelper.Deserialize(
129 | JsonUtility.FromJson(m_SerializedGraph), null);
130 | if (graph == null)
131 | graph = deserializedGraph;
132 | else
133 | m_DeserializedGraph = deserializedGraph;
134 | }
135 | catch (Exception e)
136 | {
137 | graph = CreateGraph();
138 | graph.OnEnable();
139 | graph.ValidateGraph();
140 | graph.onNodeAdded += OnNodeAdded;
141 | }
142 |
143 | m_References.Clear();
144 | foreach (var referenceEntry in m_SerializedReferences)
145 | {
146 | m_References.Add(new Guid(referenceEntry.guid), referenceEntry.obj);
147 | }
148 |
149 | m_SerializedReferences.Clear();
150 | }
151 |
152 | protected override void UndoRedoPerformed()
153 | {
154 | if (m_DeserializedGraph != null)
155 | {
156 | graph.ReplaceWith(m_DeserializedGraph);
157 | m_DeserializedGraph = null;
158 | }
159 | }
160 |
161 | protected override void Validate()
162 | {
163 | foreach (var mReference in m_References.Keys.ToArray())
164 | {
165 | if (!graph.ContainsNodeGuid(mReference)) m_References.Remove(mReference);
166 | }
167 | }
168 | }
169 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIGraphObject.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d9861d7d57b94868bb275014800c5cd5
3 | timeCreated: 1534867396
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIGraphRenderer.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Threading;
4 | using NodeEditor;
5 | using UnityEngine;
6 | using UnityEngine.Rendering;
7 |
8 | namespace UINodeEditor
9 | {
10 | ///
11 | /// A graph renderer helper that populates a command buffer from a master node by processing all of it's children.
12 | /// It uses a to store meshes outside of the nodes.
13 | /// had an internal mesh pool so the renderer helper needs to be disposed for these meshes to be destroyed.
14 | ///
15 | public class UIGraphRenderer : IDisposable
16 | {
17 | private List> m_ValuesTmp = new List>();
18 |
19 | private UIRenderBuffer m_RenderBuffer = new UIRenderBuffer();
20 |
21 | private MeshRepository m_MeshRepository = new MeshRepository();
22 |
23 | private UIThreadWaitHandle m_WaitHandle = new UIThreadWaitHandle();
24 |
25 | ///
26 | /// Calculates values and meshes for all nodes.
27 | ///
28 | /// The render buffer that will hold all render instructions.
29 | /// The command buffer that will have all the final mesh rendering instruction that were extracted from a .
30 | private void ExecuteMasterNode(bool threaded, Rect rect,Matrix4x4 globalMatrix, UIMasterNode masterNode,CommandBuffer commandBuffer)
31 | {
32 | masterNode.GetInputValues(m_ValuesTmp);
33 |
34 | Rect localRect = new Rect(Vector2.zero, rect.size);
35 |
36 | //can only be ran on main thread
37 | foreach (var value in m_ValuesTmp)
38 | {
39 | value.Invoke(new UIEventData() { EventType = UIEventType.Layout, Rect = localRect });
40 | }
41 |
42 | //can run on multiple threads
43 | if (threaded)
44 | {
45 | m_WaitHandle.Reset(m_ValuesTmp.Count);
46 |
47 | foreach (var a in m_ValuesTmp)
48 | {
49 | var a1 = a;
50 | ThreadPool.QueueUserWorkItem(c => a1.Invoke((UIEventData)c), new UIEventData() { EventType = UIEventType.PreRepaint, Rect = localRect, RenderBuffer = m_RenderBuffer, WaitHandle = m_WaitHandle });
51 | }
52 |
53 | m_WaitHandle.WaitAll();
54 | }
55 | else
56 | {
57 | foreach (var action in m_ValuesTmp)
58 | {
59 | action.Invoke(new UIEventData() { EventType = UIEventType.PreRepaint, Rect = localRect, RenderBuffer = m_RenderBuffer,MeshRepository = m_MeshRepository });
60 | }
61 | }
62 |
63 | //can run only on main thread.
64 | foreach (var action in m_ValuesTmp)
65 | {
66 | action.Invoke(new UIEventData() { EventType = UIEventType.Repaint, Rect = localRect, RenderBuffer = m_RenderBuffer,MeshRepository = m_MeshRepository });
67 | }
68 |
69 | var matrix = globalMatrix * Matrix4x4.Translate(rect.position);
70 | m_RenderBuffer.Populate(commandBuffer, matrix);
71 |
72 | m_ValuesTmp.Clear();
73 | }
74 |
75 | public void PopulateCommandBuffer(bool threaded, Rect rect, Matrix4x4 globalMatrix, IEnumerable nodes, CommandBuffer commandBuffer)
76 | {
77 | foreach (var node in nodes)
78 | {
79 | if (node is UIMasterNode masterNode)
80 | {
81 | commandBuffer.Clear();
82 | try
83 | {
84 | ExecuteMasterNode(threaded, rect, globalMatrix, masterNode, commandBuffer);
85 | }
86 | finally
87 | {
88 | m_RenderBuffer.Clear();
89 | m_MeshRepository.ClearCurrent();
90 | }
91 | break;
92 | }
93 | }
94 | }
95 |
96 | ///
97 | /// Calculates all master nodes and fills the given command buffer.
98 | ///
99 | /// Should ne executed on multiple threads.
100 | /// All the nodes to go over.
101 | ///
102 | /// The command buffer to execute.
103 | public void PopulateCommandBuffer(bool threaded,IEnumerable nodes,CommandBuffer commandBuffer)
104 | {
105 | foreach (var node in nodes)
106 | {
107 | if (node is UIMasterNode masterNode)
108 | {
109 | commandBuffer.Clear();
110 | try
111 | {
112 | ExecuteMasterNode(threaded, masterNode.rect, masterNode.matrix, masterNode, commandBuffer);
113 | }
114 | finally
115 | {
116 | m_RenderBuffer.Clear();
117 | m_MeshRepository.ClearCurrent();
118 | }
119 | break;
120 | }
121 | }
122 | }
123 |
124 | public void Dispose()
125 | {
126 | m_ValuesTmp.Clear();
127 | m_RenderBuffer.Clear();
128 | m_WaitHandle.MarkDone();
129 | }
130 | }
131 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIGraphRenderer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8b067d7b5d454450a3d7324557018df6
3 | timeCreated: 1568377254
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UINodeEditor.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "UINodeEditor",
3 | "references": [
4 | "NodeEditor"
5 | ],
6 | "optionalUnityReferences": [],
7 | "includePlatforms": [],
8 | "excludePlatforms": [],
9 | "allowUnsafeCode": false
10 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UINodeEditor.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fe8f2b39119de0041a2f3ec51a5559ff
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIRenderBuffer.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using UnityEngine;
3 | using UnityEngine.Rendering;
4 |
5 | namespace UINodeEditor
6 | {
7 | ///
8 | /// Render buffer is a middle step between the node calculations and the final command buffer that is used by unity.
9 | /// It holds info on meshes to be rendered.
10 | ///
11 | public class UIRenderBuffer
12 | {
13 | private struct RenderElement
14 | {
15 | public Mesh Mesh;
16 | public Material Material;
17 | public Matrix4x4 Matrix;
18 | public MaterialPropertyBlock PropertyBlock;
19 | }
20 |
21 | private Queue m_RenderElements = new Queue();
22 |
23 | ///
24 | /// Queue a mesh for rendering.
25 | ///
26 | /// The mesh to render.
27 | /// The position of the mesh.
28 | /// The material of the mesh.
29 | /// The property block to be used. Can be null.
30 | public void Render(Mesh mesh, Vector2 pos, Material material, MaterialPropertyBlock propertyBlock)
31 | {
32 | m_RenderElements.Enqueue(new RenderElement() { Mesh = mesh, Material = material, Matrix = Matrix4x4.Translate(pos), PropertyBlock = propertyBlock });
33 | }
34 |
35 | ///
36 | /// Queue a mesh for rendering.
37 | ///
38 | /// The mesh to render.
39 | /// The position of the mesh.
40 | /// The material of the mesh.
41 | public void Render(Mesh mesh, Vector2 pos, Material material)
42 | {
43 | m_RenderElements.Enqueue(new RenderElement() { Mesh = mesh, Material = material, Matrix = Matrix4x4.Translate(pos) });
44 | }
45 |
46 | ///
47 | /// Queue a mesh for rendering.
48 | ///
49 | /// The mesh to render.
50 | /// The matrix of the mesh.
51 | /// The material of the mesh.
52 | /// The property block to be used. Can be null.
53 | public void Render(Mesh mesh, Matrix4x4 matrix, Material material, MaterialPropertyBlock propertyBlock)
54 | {
55 | m_RenderElements.Enqueue(new RenderElement(){Mesh = mesh,Material = material,Matrix = matrix,PropertyBlock = propertyBlock});
56 | }
57 |
58 | ///
59 | /// Render a mesh;
60 | ///
61 | /// The mesh to render.
62 | /// The matrix of the mesh.
63 | /// The material of the mesh.
64 | public void Render(Mesh mesh, Matrix4x4 matrix, Material material)
65 | {
66 | m_RenderElements.Enqueue(new RenderElement() { Mesh = mesh, Material = material, Matrix = matrix});
67 | }
68 |
69 | ///
70 | /// Populate a command buffer used by unity with all the render actions enqueued.
71 | ///
72 | /// Note that the command buffer is not cleared and should be done so before calling this method.
73 | /// The command buffer to populate.
74 | /// The global matrix that will multiple all render actions.
75 | public void Populate(CommandBuffer commandBuffer,Matrix4x4 matrix)
76 | {
77 | foreach (var element in m_RenderElements)
78 | {
79 | commandBuffer.DrawMesh(element.Mesh, matrix * element.Matrix, element.Material,0,0,element.PropertyBlock);
80 | }
81 | }
82 |
83 | ///
84 | /// Clear all queued render actions.
85 | ///
86 | public void Clear()
87 | {
88 | m_RenderElements.Clear();
89 | }
90 | }
91 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIRenderBuffer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f660d5966ff5417cb0e78fd8fc4ae965
3 | timeCreated: 1535108186
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIRepaintBuildEventData.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using UnityEngine.UI;
3 |
4 | namespace UINodeEditor
5 | {
6 | ///
7 | /// Event data used by all UI nodes when rendering, or during layout.
8 | ///
9 | public struct UIEventData
10 | {
11 | ///
12 | /// The global world rect of the current event.
13 | ///
14 | public Rect Rect;
15 |
16 | ///
17 | /// The current type of the event.
18 | ///
19 | public UIEventType EventType;
20 |
21 | ///
22 | /// The global wait handle for the master node.
23 | /// Each node should add a wait.
24 | ///
25 | public UIThreadWaitHandle WaitHandle;
26 |
27 | ///
28 | /// The global render buffer for the current graph.
29 | ///
30 | public UIRenderBuffer RenderBuffer;
31 |
32 | ///
33 | /// The global mesh repository for the current graph.
34 | ///
35 | public MeshRepository MeshRepository;
36 |
37 | public Rect GetRect(Rect child)
38 | {
39 | child.position += Rect.position;
40 | return child;
41 | }
42 | }
43 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIRepaintBuildEventData.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5b8868cf2f4b4460a314ad6e39ac7365
3 | timeCreated: 1534887137
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIThreadWaitHandle.cs:
--------------------------------------------------------------------------------
1 | using System.Threading;
2 |
3 | namespace UINodeEditor
4 | {
5 | ///
6 | /// A wait handle for UI element nodes.
7 | ///
8 | public class UIThreadWaitHandle
9 | {
10 | private int m_ActiveCount;
11 |
12 | public void Reset(int activeCount)
13 | {
14 | m_ActiveCount = activeCount;
15 | }
16 |
17 | public void MarkDone()
18 | {
19 | Interlocked.Decrement(ref m_ActiveCount);
20 | }
21 |
22 | public void AddWait()
23 | {
24 | Interlocked.Increment(ref m_ActiveCount);
25 | }
26 |
27 | public void WaitAll()
28 | {
29 | while (m_ActiveCount > 0)
30 | {
31 | Thread.SpinWait(0);
32 | }
33 | }
34 | }
35 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIThreadWaitHandle.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4b494c6eedc343808a6b9a2357ff6811
3 | timeCreated: 1535144680
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Scripts/UIVertexHelper.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 07c5c53a83c84be19f6d02a3fd48a9f1
3 | timeCreated: 1535125453
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Shaders.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0a505b5e2cd80dc4280304193327d16b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Shaders/Sprites-Default.shader:
--------------------------------------------------------------------------------
1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
2 |
3 | Shader "Sprites/Blur"
4 | {
5 | Properties
6 | {
7 | [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
8 | _Color ("Tint", Color) = (1,1,1,1)
9 | [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0
10 | [HideInInspector] _RendererColor ("RendererColor", Color) = (1,1,1,1)
11 | [HideInInspector] _Flip ("Flip", Vector) = (1,1,1,1)
12 | [PerRendererData] _AlphaTex ("External Alpha", 2D) = "white" {}
13 | [PerRendererData] _EnableExternalAlpha ("Enable External Alpha", Float) = 0
14 | }
15 |
16 | SubShader
17 | {
18 | Tags
19 | {
20 | "Queue"="Transparent"
21 | "IgnoreProjector"="True"
22 | "RenderType"="Transparent"
23 | "PreviewType"="Plane"
24 | "CanUseSpriteAtlas"="True"
25 | }
26 |
27 | Cull Off
28 | Lighting Off
29 | ZWrite Off
30 | Blend One OneMinusSrcAlpha
31 |
32 | Pass
33 | {
34 | CGPROGRAM
35 | #pragma vertex SpriteCustomVert
36 | #pragma fragment SpriteCustomFrag
37 | #pragma target 2.0
38 | #pragma multi_compile_instancing
39 | #pragma multi_compile _ PIXELSNAP_ON
40 | #pragma multi_compile _ ETC1_EXTERNAL_ALPHA
41 | #include "UnitySprites.cginc"
42 |
43 | sampler2D _SuperBlurTexture;
44 | float2 _SuperBlurTexture_TexelSize;
45 |
46 | struct v2fc
47 | {
48 | float4 vertex : SV_POSITION;
49 | fixed4 color : COLOR;
50 | float2 texcoord : TEXCOORD0;
51 | float4 grabPos : TEXCOORD1;
52 | UNITY_VERTEX_OUTPUT_STEREO
53 | };
54 |
55 | v2fc SpriteCustomVert(appdata_t IN)
56 | {
57 | v2fc OUT;
58 |
59 | UNITY_SETUP_INSTANCE_ID (IN);
60 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT);
61 |
62 | OUT.vertex = UnityFlipSprite(IN.vertex, _Flip);
63 | OUT.vertex = UnityObjectToClipPos(OUT.vertex);
64 | OUT.texcoord = IN.texcoord;
65 | OUT.color = IN.color * _Color * _RendererColor;
66 |
67 | OUT.grabPos = ComputeGrabScreenPos(OUT.vertex);
68 |
69 |
70 |
71 | #ifdef PIXELSNAP_ON
72 | OUT.vertex = UnityPixelSnap (OUT.vertex);
73 | #endif
74 |
75 | return OUT;
76 | }
77 |
78 | fixed4 SpriteCustomFrag(v2fc IN) : SV_Target
79 | {
80 | half3 bgcolor = tex2Dproj(_SuperBlurTexture, IN.grabPos).rgb * lerp(1,IN.color.rgb,IN.color.a);
81 | return half4(bgcolor, 1.0);
82 | }
83 |
84 | ENDCG
85 | }
86 | }
87 | }
88 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Shaders/Sprites-Default.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b8f9e27324fc2444a9a5decea41a1a5b
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Textures.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8b56bc0fa2a87114e95e64738b85874a
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Textures/heartbeat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Assets/UINodeEditor/Textures/heartbeat.png
--------------------------------------------------------------------------------
/Assets/UINodeEditor/Textures/heartbeat.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c1d0deb3f28c747428f78f5f6402d368
3 | TextureImporter:
4 | fileIDToRecycleName: {}
5 | externalObjects: {}
6 | serializedVersion: 7
7 | mipmaps:
8 | mipMapMode: 0
9 | enableMipMap: 0
10 | sRGBTexture: 1
11 | linearTexture: 0
12 | fadeOut: 0
13 | borderMipMap: 0
14 | mipMapsPreserveCoverage: 0
15 | alphaTestReferenceValue: 0.5
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | streamingMipmaps: 0
25 | streamingMipmapsPriority: 0
26 | grayScaleToAlpha: 0
27 | generateCubemap: 6
28 | cubemapConvolution: 0
29 | seamlessCubemap: 0
30 | textureFormat: 1
31 | maxTextureSize: 2048
32 | textureSettings:
33 | serializedVersion: 2
34 | filterMode: -1
35 | aniso: -1
36 | mipBias: -100
37 | wrapU: 1
38 | wrapV: 1
39 | wrapW: -1
40 | nPOTScale: 0
41 | lightmap: 0
42 | compressionQuality: 50
43 | spriteMode: 1
44 | spriteExtrude: 1
45 | spriteMeshType: 1
46 | alignment: 0
47 | spritePivot: {x: 0.5, y: 0.5}
48 | spritePixelsToUnits: 100
49 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
50 | spriteGenerateFallbackPhysicsShape: 1
51 | alphaUsage: 1
52 | alphaIsTransparency: 1
53 | spriteTessellationDetail: -1
54 | textureType: 8
55 | textureShape: 1
56 | singleChannelComponent: 0
57 | maxTextureSizeSet: 0
58 | compressionQualitySet: 0
59 | textureFormatSet: 0
60 | platformSettings:
61 | - serializedVersion: 2
62 | buildTarget: DefaultTexturePlatform
63 | maxTextureSize: 2048
64 | resizeAlgorithm: 0
65 | textureFormat: -1
66 | textureCompression: 1
67 | compressionQuality: 50
68 | crunchedCompression: 0
69 | allowsAlphaSplitting: 0
70 | overridden: 0
71 | androidETC2FallbackOverride: 0
72 | - serializedVersion: 2
73 | buildTarget: Standalone
74 | maxTextureSize: 2048
75 | resizeAlgorithm: 0
76 | textureFormat: -1
77 | textureCompression: 1
78 | compressionQuality: 50
79 | crunchedCompression: 0
80 | allowsAlphaSplitting: 0
81 | overridden: 0
82 | androidETC2FallbackOverride: 0
83 | spriteSheet:
84 | serializedVersion: 2
85 | sprites: []
86 | outline: []
87 | physicsShape: []
88 | bones: []
89 | spriteID:
90 | vertices: []
91 | indices:
92 | edges: []
93 | weights: []
94 | spritePackingTag:
95 | pSDRemoveMatte: 0
96 | pSDShowRemoveMatteOption: 0
97 | userData:
98 | assetBundleName:
99 | assetBundleVariant:
100 |
--------------------------------------------------------------------------------
/Assets/UINodeEditor/UIEventData.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace UINodeEditor
4 | {
5 | public struct UIEventData
6 | {
7 | public EventType EventType;
8 | }
9 | }
--------------------------------------------------------------------------------
/Assets/UINodeEditor/UIEventData.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 65c8a7e04fd44fadb96ec15b99760901
3 | timeCreated: 1534886906
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 Simeon Radivoev
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Logs/Packages-Update.log:
--------------------------------------------------------------------------------
1 |
2 | === Fri Sep 13 11:02:47 2019
3 |
4 | Packages were changed.
5 | Update Mode: updateDependencies
6 |
7 | The following packages were added:
8 | com.unity.2d.tilemap@1.0.0
9 | com.unity.collab-proxy@1.2.16
10 | com.unity.ext.nunit@1.0.0
11 | com.unity.test-framework@1.0.13
12 | com.unity.timeline@1.1.0
13 | com.unity.2d.sprite@1.0.0
14 | com.unity.ide.vscode@1.1.0
15 | com.unity.ide.rider@1.1.0
16 | com.unity.ugui@1.0.0
17 | com.unity.modules.androidjni@1.0.0
18 | com.unity.multiplayer-hlapi@1.0.2
19 | com.unity.xr.legacyinputhelpers@2.0.2
20 | The following packages were updated:
21 | com.unity.analytics from version 2.0.16 to 3.3.2
22 | com.unity.package-manager-ui from version 1.9.11 to 2.2.0
23 | com.unity.purchasing from version 2.0.3 to 2.0.6
24 | com.unity.textmeshpro from version 1.2.4 to 2.0.1
25 |
--------------------------------------------------------------------------------
/NodeEditor.csproj.DotSettings:
--------------------------------------------------------------------------------
1 |
2 | True
--------------------------------------------------------------------------------
/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.2d.sprite": "1.0.0",
4 | "com.unity.2d.tilemap": "1.0.0",
5 | "com.unity.ads": "2.0.8",
6 | "com.unity.analytics": "3.3.2",
7 | "com.unity.collab-proxy": "1.2.16",
8 | "com.unity.ext.nunit": "1.0.0",
9 | "com.unity.ide.rider": "1.1.0",
10 | "com.unity.ide.vscode": "1.1.0",
11 | "com.unity.multiplayer-hlapi": "1.0.2",
12 | "com.unity.package-manager-ui": "2.2.0",
13 | "com.unity.purchasing": "2.0.6",
14 | "com.unity.test-framework": "1.0.13",
15 | "com.unity.textmeshpro": "2.0.1",
16 | "com.unity.timeline": "1.1.0",
17 | "com.unity.ugui": "1.0.0",
18 | "com.unity.xr.legacyinputhelpers": "2.0.2",
19 | "com.unity.modules.ai": "1.0.0",
20 | "com.unity.modules.androidjni": "1.0.0",
21 | "com.unity.modules.animation": "1.0.0",
22 | "com.unity.modules.assetbundle": "1.0.0",
23 | "com.unity.modules.audio": "1.0.0",
24 | "com.unity.modules.cloth": "1.0.0",
25 | "com.unity.modules.director": "1.0.0",
26 | "com.unity.modules.imageconversion": "1.0.0",
27 | "com.unity.modules.imgui": "1.0.0",
28 | "com.unity.modules.jsonserialize": "1.0.0",
29 | "com.unity.modules.particlesystem": "1.0.0",
30 | "com.unity.modules.physics": "1.0.0",
31 | "com.unity.modules.physics2d": "1.0.0",
32 | "com.unity.modules.screencapture": "1.0.0",
33 | "com.unity.modules.terrain": "1.0.0",
34 | "com.unity.modules.terrainphysics": "1.0.0",
35 | "com.unity.modules.tilemap": "1.0.0",
36 | "com.unity.modules.ui": "1.0.0",
37 | "com.unity.modules.uielements": "1.0.0",
38 | "com.unity.modules.umbra": "1.0.0",
39 | "com.unity.modules.unityanalytics": "1.0.0",
40 | "com.unity.modules.unitywebrequest": "1.0.0",
41 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
42 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
43 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
44 | "com.unity.modules.unitywebrequestwww": "1.0.0",
45 | "com.unity.modules.vehicles": "1.0.0",
46 | "com.unity.modules.video": "1.0.0",
47 | "com.unity.modules.vr": "1.0.0",
48 | "com.unity.modules.wind": "1.0.0",
49 | "com.unity.modules.xr": "1.0.0"
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/ProjectSettings/AudioManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!11 &1
4 | AudioManager:
5 | m_ObjectHideFlags: 0
6 | m_Volume: 1
7 | Rolloff Scale: 1
8 | Doppler Factor: 1
9 | Default Speaker Mode: 2
10 | m_SampleRate: 0
11 | m_DSPBufferSize: 1024
12 | m_VirtualVoiceCount: 512
13 | m_RealVoiceCount: 32
14 | m_SpatializerPlugin:
15 | m_AmbisonicDecoderPlugin:
16 | m_DisableAudio: 0
17 | m_VirtualizeEffects: 1
18 |
--------------------------------------------------------------------------------
/ProjectSettings/ClusterInputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!236 &1
4 | ClusterInputManager:
5 | m_ObjectHideFlags: 0
6 | m_Inputs: []
7 |
--------------------------------------------------------------------------------
/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 7
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_SleepThreshold: 0.005
11 | m_DefaultContactOffset: 0.01
12 | m_DefaultSolverIterations: 6
13 | m_DefaultSolverVelocityIterations: 1
14 | m_QueriesHitBackfaces: 0
15 | m_QueriesHitTriggers: 1
16 | m_EnableAdaptiveForce: 0
17 | m_ClothInterCollisionDistance: 0
18 | m_ClothInterCollisionStiffness: 0
19 | m_ContactsGeneration: 1
20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
21 | m_AutoSimulation: 1
22 | m_AutoSyncTransforms: 1
23 | m_ClothInterCollisionSettingsToggle: 0
24 | m_ContactPairsMode: 0
25 | m_BroadphaseType: 0
26 | m_WorldBounds:
27 | m_Center: {x: 0, y: 0, z: 0}
28 | m_Extent: {x: 250, y: 250, z: 250}
29 | m_WorldSubdivisions: 8
30 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorBuildSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1045 &1
4 | EditorBuildSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Scenes:
8 | - enabled: 1
9 | path: Assets/Scenes/SampleScene.unity
10 | guid: 99c9720ab356a0642a771bea13969a05
11 | m_configObjects: {}
12 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!159 &1
4 | EditorSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 7
7 | m_ExternalVersionControlSupport: Visible Meta Files
8 | m_SerializationMode: 2
9 | m_LineEndingsForNewScripts: 2
10 | m_DefaultBehaviorMode: 0
11 | m_SpritePackerMode: 0
12 | m_SpritePackerPaddingPower: 1
13 | m_EtcTextureCompressorBehavior: 1
14 | m_EtcTextureFastCompressor: 1
15 | m_EtcTextureNormalCompressor: 2
16 | m_EtcTextureBestCompressor: 4
17 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd
18 | m_ProjectGenerationRootNamespace:
19 | m_UserGeneratedProjectSuffix:
20 | m_CollabEditorSettings:
21 | inProgressEnabled: 1
22 |
--------------------------------------------------------------------------------
/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!30 &1
4 | GraphicsSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 12
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_AlwaysIncludedShaders:
32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
38 | m_PreloadedShaders: []
39 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
40 | type: 0}
41 | m_CustomRenderPipeline: {fileID: 0}
42 | m_TransparencySortMode: 0
43 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
44 | m_DefaultRenderingPath: 1
45 | m_DefaultMobileRenderingPath: 1
46 | m_TierSettings: []
47 | m_LightmapStripping: 0
48 | m_FogStripping: 0
49 | m_InstancingStripping: 0
50 | m_LightmapKeepPlain: 1
51 | m_LightmapKeepDirCombined: 1
52 | m_LightmapKeepDynamicPlain: 1
53 | m_LightmapKeepDynamicDirCombined: 1
54 | m_LightmapKeepShadowMask: 1
55 | m_LightmapKeepSubtractive: 1
56 | m_FogKeepLinear: 1
57 | m_FogKeepExp: 1
58 | m_FogKeepExp2: 1
59 | m_AlbedoSwatchInfos: []
60 | m_LightsUseLinearIntensity: 0
61 | m_LightsUseColorTemperature: 0
62 |
--------------------------------------------------------------------------------
/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | debug:
89 | m_Flags: 0
90 | m_SettingNames:
91 | - Humanoid
92 |
--------------------------------------------------------------------------------
/ProjectSettings/NetworkManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!149 &1
4 | NetworkManager:
5 | m_ObjectHideFlags: 0
6 | m_DebugLevel: 0
7 | m_Sendrate: 15
8 | m_AssetToPrefab: {}
9 |
--------------------------------------------------------------------------------
/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 3
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_AutoSimulation: 1
23 | m_QueriesHitTriggers: 1
24 | m_QueriesStartInColliders: 1
25 | m_ChangeStopsCallbacks: 0
26 | m_CallbacksOnDisable: 1
27 | m_AutoSyncTransforms: 1
28 | m_AlwaysShowColliders: 0
29 | m_ShowColliderSleep: 1
30 | m_ShowColliderContacts: 0
31 | m_ShowColliderAABB: 0
32 | m_ContactArrowScale: 0.2
33 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
34 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
35 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
36 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
37 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
38 |
--------------------------------------------------------------------------------
/ProjectSettings/PresetManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1386491679 &1
4 | PresetManager:
5 | m_ObjectHideFlags: 0
6 | m_DefaultList:
7 | - type:
8 | m_NativeTypeID: 108
9 | m_ManagedTypePPtr: {fileID: 0}
10 | m_ManagedTypeFallback:
11 | defaultPresets:
12 | - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea,
13 | type: 2}
14 | - type:
15 | m_NativeTypeID: 1020
16 | m_ManagedTypePPtr: {fileID: 0}
17 | m_ManagedTypeFallback:
18 | defaultPresets:
19 | - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6,
20 | type: 2}
21 | - type:
22 | m_NativeTypeID: 1006
23 | m_ManagedTypePPtr: {fileID: 0}
24 | m_ManagedTypeFallback:
25 | defaultPresets:
26 | - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9,
27 | type: 2}
28 |
--------------------------------------------------------------------------------
/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2019.2.3f1
2 | m_EditorVersionWithRevision: 2019.2.3f1 (8e55c27a4621)
3 |
--------------------------------------------------------------------------------
/ProjectSettings/TagManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!78 &1
4 | TagManager:
5 | serializedVersion: 2
6 | tags: []
7 | layers:
8 | - Default
9 | - TransparentFX
10 | - Ignore Raycast
11 | -
12 | - Water
13 | - UI
14 | -
15 | -
16 | - PostProcessing
17 | -
18 | -
19 | -
20 | -
21 | -
22 | -
23 | -
24 | -
25 | -
26 | -
27 | -
28 | -
29 | -
30 | -
31 | -
32 | -
33 | -
34 | -
35 | -
36 | -
37 | -
38 | -
39 | -
40 | m_SortingLayers:
41 | - name: Default
42 | uniqueID: 0
43 | locked: 0
44 |
--------------------------------------------------------------------------------
/ProjectSettings/TimeManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!5 &1
4 | TimeManager:
5 | m_ObjectHideFlags: 0
6 | Fixed Timestep: 0.02
7 | Maximum Allowed Timestep: 0.1
8 | m_TimeScale: 1
9 | Maximum Particle Timestep: 0.03
10 |
--------------------------------------------------------------------------------
/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 1
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_TestInitMode: 0
13 | CrashReportingSettings:
14 | m_EventUrl: https://perf-events.cloud.unity3d.com
15 | m_Enabled: 0
16 | m_LogBufferSize: 10
17 | m_CaptureEditorExceptions: 1
18 | UnityPurchasingSettings:
19 | m_Enabled: 0
20 | m_TestMode: 0
21 | UnityAnalyticsSettings:
22 | m_Enabled: 0
23 | m_TestMode: 0
24 | m_InitializeOnStartup: 1
25 | UnityAdsSettings:
26 | m_Enabled: 0
27 | m_InitializeOnStartup: 1
28 | m_TestMode: 0
29 | m_IosGameId:
30 | m_AndroidGameId:
31 | m_GameIds: {}
32 | m_GameId:
33 | PerformanceReportingSettings:
34 | m_Enabled: 0
35 |
--------------------------------------------------------------------------------
/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/ProjectSettings/VFXManager.asset
--------------------------------------------------------------------------------
/ProjectSettings/XRSettings.asset:
--------------------------------------------------------------------------------
1 | {
2 | "m_SettingKeys": [
3 | "VR Device Disabled",
4 | "VR Device User Alert"
5 | ],
6 | "m_SettingValues": [
7 | "False",
8 | "False"
9 | ]
10 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # UI Node Editor
2 | A Unity node editor for making Immediate mode UIs.
3 |
4 | 
5 | 
6 |
7 | # Features
8 |
9 | ### Inspector Preview
10 | 
11 |
12 | # Installation
13 |
14 | The UI node editor has a git sub module that needs to be initialized. For more info on submodules check [here](https://git-scm.com/book/en/v2/Git-Tools-Submodules)
15 | Once cloned, run the following commands:
16 |
17 | ```
18 | git submodule init
19 | git submodule update
20 |
21 | ```
22 |
23 | # Instructions
24 |
25 | Open the Demo scene in `UINodeEditor/Examples`
26 | To open the node editor double click the example graph asset located in the same folder
27 |
28 | This project includes BOXOPHOBIC's FREE Skybox - Cubemap Extended asset for preview purposes
29 |
30 | # Inspiration
31 | [](https://www.youtube.com/watch?v=H1MLtML0np0)
32 |
--------------------------------------------------------------------------------
/Screenshots/Editor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Screenshots/Editor.png
--------------------------------------------------------------------------------
/Screenshots/Inspector Preview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Screenshots/Inspector Preview.png
--------------------------------------------------------------------------------
/Screenshots/UI.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/simeonradivoev/UI-Node-Editor/2bb9fd8ecfd64fb328dfeb0e5c722aecd2223016/Screenshots/UI.png
--------------------------------------------------------------------------------
/UIElementsSchema/UIElements.xsd:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/UINodeEditor.csproj.DotSettings:
--------------------------------------------------------------------------------
1 |
2 | CSharp70
3 | True
--------------------------------------------------------------------------------