diff --git a/Assets/Prefabs/Cinemachine.prefab b/Assets/Prefabs/Cinemachine.prefab index 5089669..2d5399a 100644 --- a/Assets/Prefabs/Cinemachine.prefab +++ b/Assets/Prefabs/Cinemachine.prefab @@ -570,6 +570,7 @@ GameObject: - component: {fileID: 5609352768173468343} - component: {fileID: 7847799551035619544} - component: {fileID: 3837216061230793568} + - component: {fileID: 8510394576666186474} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera @@ -585,8 +586,8 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6163557566655415017} serializedVersion: 2 - m_LocalRotation: {x: -0.011396202, y: 0.98857015, z: -0.1103237, w: -0.10211718} - m_LocalPosition: {x: 8.5044365, y: 3.5927956, z: 10.26652} + m_LocalRotation: {x: -0.02546724, y: 0.9636698, z: -0.2465418, w: -0.09954502} + m_LocalPosition: {x: 10.297432, y: 12.445195, z: 18.85268} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] @@ -742,8 +743,70 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: cam: {fileID: 7435709693246867821} - scrollSpeed: 2 + scrollSpeed: 2.5 + stopAfterTime: 15 + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1.710919 + outSlope: 1.710919 + tangentMode: 34 + weightedMode: 0 + inWeight: 0 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.2991759 + value: 0.51186574 + inSlope: 0.50856996 + outSlope: 0.50856996 + tangentMode: 0 + weightedMode: 0 + inWeight: 1 + outWeight: 0.30844653 + - serializedVersion: 3 + time: 0.6705839 + value: 0.6387135 + inSlope: 0.078333884 + outSlope: 0.078333884 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.37746048 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1.0967482 + outSlope: 1.0967482 + tangentMode: 34 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 sens: {x: 300, y: 3} +--- !u!114 &8510394576666186474 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6163557566655415017} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2d4e884ed2ba0944bfe55454353bc2d, type: 3} + m_Name: + m_EditorClassIdentifier: + mainCamera: {fileID: 3255403189825384754} + layerMask: + serializedVersion: 2 + m_Bits: 1024 + selectLayer: + serializedVersion: 2 + m_Bits: 256 --- !u!1 &6734946956435011452 GameObject: m_ObjectHideFlags: 0 @@ -952,7 +1015,7 @@ MonoBehaviour: m_SpeedMode: 0 m_MaxSpeed: 0 m_AccelTime: 0.2 - m_DecelTime: 0.1 + m_DecelTime: 0.25 m_InputAxisName: Mouse Y m_InputAxisValue: 0 m_InvertInput: 1 @@ -976,7 +1039,7 @@ MonoBehaviour: m_SpeedMode: 0 m_MaxSpeed: 0 m_AccelTime: 0.1 - m_DecelTime: 0.1 + m_DecelTime: 0.25 m_InputAxisName: Mouse X m_InputAxisValue: 0 m_InvertInput: 0 @@ -1027,9 +1090,8 @@ MonoBehaviour: m_EditorClassIdentifier: target: {fileID: 5419760417237671588} origin: {fileID: 7435709693246867821} - prevObject: {fileID: 0} - defaultMaterial: {fileID: 2100000, guid: 1fb12e769af8dfc4b9c47b291e1da192, type: 2} - hitMaterial: {fileID: 2100000, guid: 487f1aaeb1fd5674a8842eab66d03872, type: 2} + hideFadeSpeed: 7 + showFadeSpeed: 2 sphereRadius: 2 maxSphereRayDistanceOffset: {x: 0, y: 3, z: 0} --- !u!114 &7757173428948913319 diff --git a/Assets/Prefabs/PlacementSystem/SlotHolder.prefab b/Assets/Prefabs/PlacementSystem/SlotHolder.prefab index df60517..0506916 100644 --- a/Assets/Prefabs/PlacementSystem/SlotHolder.prefab +++ b/Assets/Prefabs/PlacementSystem/SlotHolder.prefab @@ -12,7 +12,7 @@ GameObject: - component: {fileID: 8262130276470859262} - component: {fileID: 39033916665346183} - component: {fileID: 4956097427804774761} - m_Layer: 6 + m_Layer: 10 m_Name: Slot m_TagString: Untagged m_Icon: {fileID: 0} @@ -116,7 +116,7 @@ GameObject: m_Component: - component: {fileID: 7515572981473435671} - component: {fileID: 5087905053802543442} - m_Layer: 6 + m_Layer: 10 m_Name: SlotHolder m_TagString: Untagged m_Icon: {fileID: 0} @@ -165,7 +165,7 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 3521410157466494107} - m_Layer: 6 + m_Layer: 10 m_Name: TowerSpawnPoint m_TagString: Untagged m_Icon: {fileID: 0} diff --git a/Assets/Prefabs/Towers/BaseTower.prefab b/Assets/Prefabs/Towers/BaseTower.prefab index f614500..ab58f6c 100644 --- a/Assets/Prefabs/Towers/BaseTower.prefab +++ b/Assets/Prefabs/Towers/BaseTower.prefab @@ -63,6 +63,11 @@ PrefabInstance: propertyPath: m_Name value: BaseTower objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: eb5e13df78999ef878da1db5c63224e2, + type: 3} + propertyPath: m_Layer + value: 8 + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: - {fileID: -3133498875991405556, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} @@ -77,6 +82,10 @@ PrefabInstance: type: 3} insertIndex: -1 addedObject: {fileID: 5565472806559733162} + - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: eb5e13df78999ef878da1db5c63224e2, + type: 3} + insertIndex: -1 + addedObject: {fileID: -4368249141776341009} m_SourcePrefab: {fileID: 100100000, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} --- !u!1 &872127579833310669 stripped GameObject: @@ -136,3 +145,21 @@ BoxCollider: serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &-4368249141776341009 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 872127579833310669} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5fea29bb7c508c244a1f805a5fd3fc4d, type: 3} + m_Name: + m_EditorClassIdentifier: + outlineMode: 0 + outlineColor: {r: 1, g: 1, b: 1, a: 1} + outlineWidth: 10 + precomputeOutline: 0 + bakeKeys: [] + bakeValues: [] diff --git a/Assets/Prefabs/Towers/BlackHole.prefab b/Assets/Prefabs/Towers/BlackHole.prefab index 1485b82..3b594b0 100644 --- a/Assets/Prefabs/Towers/BlackHole.prefab +++ b/Assets/Prefabs/Towers/BlackHole.prefab @@ -11,7 +11,7 @@ GameObject: - component: {fileID: 6791947043022790992} - component: {fileID: 283773815913351468} - component: {fileID: 7403195583508196174} - m_Layer: 0 + m_Layer: 8 m_Name: Sphere m_TagString: Untagged m_Icon: {fileID: 0} @@ -94,7 +94,7 @@ GameObject: - component: {fileID: 5119260969314287638} - component: {fileID: 6992152662476368078} - component: {fileID: 8324639096253395440} - m_Layer: 0 + m_Layer: 8 m_Name: Cylinder.002 m_TagString: Untagged m_Icon: {fileID: 0} diff --git a/Assets/Prefabs/Towers/Turret.prefab b/Assets/Prefabs/Towers/Turret.prefab index d2c26b9..77987d4 100644 --- a/Assets/Prefabs/Towers/Turret.prefab +++ b/Assets/Prefabs/Towers/Turret.prefab @@ -11,7 +11,7 @@ GameObject: - component: {fileID: 7260327517591084354} - component: {fileID: 5566712258885047037} - component: {fileID: 3451839468339987846} - m_Layer: 0 + m_Layer: 8 m_Name: Base m_TagString: Untagged m_Icon: {fileID: 0} @@ -96,13 +96,13 @@ GameObject: - component: {fileID: 3688593234855359137} - component: {fileID: 7215452495559205732} - component: {fileID: 8981486734084153558} - m_Layer: 0 + m_Layer: 8 m_Name: HorizontalArc m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &3688593234855359137 Transform: m_ObjectHideFlags: 0 @@ -252,7 +252,7 @@ GameObject: - component: {fileID: 432796252682377629} - component: {fileID: 3370533879401949812} - component: {fileID: 1398471167256814047} - m_Layer: 0 + m_Layer: 8 m_Name: SliderKnob m_TagString: Untagged m_Icon: {fileID: 0} @@ -367,7 +367,7 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 3410229124093629554} - m_Layer: 0 + m_Layer: 8 m_Name: Tip m_TagString: Untagged m_Icon: {fileID: 0} @@ -402,7 +402,7 @@ GameObject: - component: {fileID: 271800776993535811} - component: {fileID: 1616640625290415239} - component: {fileID: 8756968480882234867} - m_Layer: 0 + m_Layer: 8 m_Name: SliderKnob m_TagString: Untagged m_Icon: {fileID: 0} @@ -508,37 +508,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 9998882d4b72010a9b0ca2d8bd35835e, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1 &3857615556319596175 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2164222606230954140} - m_Layer: 0 - m_Name: Tip - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &2164222606230954140 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3857615556319596175} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -0, y: 0, z: 0.00771} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 9116936080776508834} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &7405500333329299342 GameObject: m_ObjectHideFlags: 0 @@ -551,7 +520,7 @@ GameObject: - component: {fileID: 1325528991062417693} - component: {fileID: 7013367250967747671} - component: {fileID: 2740722787380423134} - m_Layer: 0 + m_Layer: 8 m_Name: Barrel m_TagString: Untagged m_Icon: {fileID: 0} @@ -649,13 +618,13 @@ GameObject: - component: {fileID: 4508182228569071021} - component: {fileID: 1366289561210151836} - component: {fileID: 5247639431516572416} - m_Layer: 0 + m_Layer: 8 m_Name: VerticalArc m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &4508182228569071021 Transform: m_ObjectHideFlags: 0 @@ -802,13 +771,13 @@ GameObject: m_Component: - component: {fileID: 2141594701022449211} - component: {fileID: 3987931586699850031} - m_Layer: 0 + m_Layer: 8 m_Name: TrajectoryLine m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &2141594701022449211 Transform: m_ObjectHideFlags: 0 @@ -1057,10 +1026,6 @@ PrefabInstance: type: 3} insertIndex: -1 addedObject: {fileID: 3688593234855359137} - - targetCorrespondingSourceObject: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, - type: 3} - insertIndex: -1 - addedObject: {fileID: 2164222606230954140} m_AddedComponents: - targetCorrespondingSourceObject: {fileID: 872127579833310669, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} @@ -1111,6 +1076,9 @@ MonoBehaviour: type: 3} trajectoryLine: {fileID: 3987931586699850031} trajectoryObjectPoolSize: 25 + wallMask: + serializedVersion: 2 + m_Bits: 257 attackSecondsDelay: 1 projectileSequence: - Arc: 0 diff --git a/Assets/QuickOutline.meta b/Assets/QuickOutline.meta new file mode 100644 index 0000000..32397b8 --- /dev/null +++ b/Assets/QuickOutline.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2b16d9c7742c51c43bb052f81ebda33e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Readme.txt b/Assets/QuickOutline/Readme.txt new file mode 100644 index 0000000..183ae24 --- /dev/null +++ b/Assets/QuickOutline/Readme.txt @@ -0,0 +1,37 @@ +Quick Outline +============= + +Developed by Chris Nolet (c) 2018 + + +Instructions +------------ + +To add an outline to an object, drag-and-drop the Outline.cs +script onto the object. The outline materials will be loaded +at runtime. + +You can also add outlines programmatically with: + + var outline = gameObject.AddComponent(); + + outline.OutlineMode = Outline.Mode.OutlineAll; + outline.OutlineColor = Color.yellow; + outline.OutlineWidth = 5f; + +The outline script does a small amount of work in Awake(). +For best results, use outline.enabled to toggle the outline. +Avoid removing and re-adding the component if possible. + +For large meshes, you may also like to enable 'Precompute +Outline' in the editor. This will reduce the amount of work +performed in Awake(). + + +Troubleshooting +--------------- + +If the outline appears off-center, please try the following: + +1. Set 'Read/Write Enabled' on each model's import settings. +2. Disable 'Optimize Mesh Data' in the player settings. diff --git a/Assets/QuickOutline/Readme.txt.meta b/Assets/QuickOutline/Readme.txt.meta new file mode 100644 index 0000000..56560a7 --- /dev/null +++ b/Assets/QuickOutline/Readme.txt.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5933bfd39d7a5b843a0ed821f85bca19 +timeCreated: 1522619008 +licenseType: Store +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Resources.meta b/Assets/QuickOutline/Resources.meta new file mode 100644 index 0000000..6135a95 --- /dev/null +++ b/Assets/QuickOutline/Resources.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 70fd40674751a8042a8b9b2e8d9f915f +folderAsset: yes +timeCreated: 1522559128 +licenseType: Store +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Resources/Materials.meta b/Assets/QuickOutline/Resources/Materials.meta new file mode 100644 index 0000000..2508b0f --- /dev/null +++ b/Assets/QuickOutline/Resources/Materials.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 80ac8e52d3c31a94babd161e86bc6b97 +folderAsset: yes +timeCreated: 1522559139 +licenseType: Store +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Resources/Materials/OutlineFill.mat b/Assets/QuickOutline/Resources/Materials/OutlineFill.mat new file mode 100644 index 0000000..cb02164 --- /dev/null +++ b/Assets/QuickOutline/Resources/Materials/OutlineFill.mat @@ -0,0 +1,25 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: OutlineFill + m_Shader: {fileID: 4800000, guid: 4e76d4023d7e0411297c670f878973e2, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: [] + m_Floats: + - _OutlineWidth: 2 + - _ZTest: 8 + m_Colors: + - _OutlineColor: {r: 1, g: 1, b: 1, a: 1} diff --git a/Assets/QuickOutline/Resources/Materials/OutlineFill.mat.meta b/Assets/QuickOutline/Resources/Materials/OutlineFill.mat.meta new file mode 100644 index 0000000..5ea7f69 --- /dev/null +++ b/Assets/QuickOutline/Resources/Materials/OutlineFill.mat.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 311313efa011949e98b6761d652ad13c +timeCreated: 1520576285 +licenseType: Store +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Resources/Materials/OutlineMask.mat b/Assets/QuickOutline/Resources/Materials/OutlineMask.mat new file mode 100644 index 0000000..80d49fa --- /dev/null +++ b/Assets/QuickOutline/Resources/Materials/OutlineMask.mat @@ -0,0 +1,23 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: OutlineMask + m_Shader: {fileID: 4800000, guid: 341b058cd7dee4f5cba5cc59a513619e, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: [] + m_Floats: + - _ZTest: 8 + m_Colors: [] diff --git a/Assets/QuickOutline/Resources/Materials/OutlineMask.mat.meta b/Assets/QuickOutline/Resources/Materials/OutlineMask.mat.meta new file mode 100644 index 0000000..0f5ed27 --- /dev/null +++ b/Assets/QuickOutline/Resources/Materials/OutlineMask.mat.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 106f3ff43a17d4967a2b64c7a92e49ec +timeCreated: 1520576276 +licenseType: Store +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Resources/Shaders.meta b/Assets/QuickOutline/Resources/Shaders.meta new file mode 100644 index 0000000..91118d5 --- /dev/null +++ b/Assets/QuickOutline/Resources/Shaders.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 6a63caa2b0e993043a42c11f35ff2d1a +folderAsset: yes +timeCreated: 1522559134 +licenseType: Store +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Resources/Shaders/OutlineFill.shader b/Assets/QuickOutline/Resources/Shaders/OutlineFill.shader new file mode 100644 index 0000000..f546473 --- /dev/null +++ b/Assets/QuickOutline/Resources/Shaders/OutlineFill.shader @@ -0,0 +1,81 @@ +// +// OutlineFill.shader +// QuickOutline +// +// Created by Chris Nolet on 2/21/18. +// Copyright © 2018 Chris Nolet. All rights reserved. +// + +Shader "Custom/Outline Fill" { + Properties { + [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest("ZTest", Float) = 0 + + _OutlineColor("Outline Color", Color) = (1, 1, 1, 1) + _OutlineWidth("Outline Width", Range(0, 10)) = 2 + } + + SubShader { + Tags { + "Queue" = "Transparent+110" + "RenderType" = "Transparent" + "DisableBatching" = "True" + } + + Pass { + Name "Fill" + Cull Off + ZTest [_ZTest] + ZWrite Off + Blend SrcAlpha OneMinusSrcAlpha + ColorMask RGB + + Stencil { + Ref 1 + Comp NotEqual + } + + CGPROGRAM + #include "UnityCG.cginc" + + #pragma vertex vert + #pragma fragment frag + + struct appdata { + float4 vertex : POSITION; + float3 normal : NORMAL; + float3 smoothNormal : TEXCOORD3; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct v2f { + float4 position : SV_POSITION; + fixed4 color : COLOR; + UNITY_VERTEX_OUTPUT_STEREO + }; + + uniform fixed4 _OutlineColor; + uniform float _OutlineWidth; + + v2f vert(appdata input) { + v2f output; + + UNITY_SETUP_INSTANCE_ID(input); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + float3 normal = any(input.smoothNormal) ? input.smoothNormal : input.normal; + float3 viewPosition = UnityObjectToViewPos(input.vertex); + float3 viewNormal = normalize(mul((float3x3)UNITY_MATRIX_IT_MV, normal)); + + output.position = UnityViewToClipPos(viewPosition + viewNormal * -viewPosition.z * _OutlineWidth / 1000.0); + output.color = _OutlineColor; + + return output; + } + + fixed4 frag(v2f input) : SV_Target { + return input.color; + } + ENDCG + } + } +} diff --git a/Assets/QuickOutline/Resources/Shaders/OutlineFill.shader.meta b/Assets/QuickOutline/Resources/Shaders/OutlineFill.shader.meta new file mode 100644 index 0000000..408fa9a --- /dev/null +++ b/Assets/QuickOutline/Resources/Shaders/OutlineFill.shader.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 4e76d4023d7e0411297c670f878973e2 +timeCreated: 1520575782 +licenseType: Store +ShaderImporter: + externalObjects: {} + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Resources/Shaders/OutlineMask.shader b/Assets/QuickOutline/Resources/Shaders/OutlineMask.shader new file mode 100644 index 0000000..530d8c0 --- /dev/null +++ b/Assets/QuickOutline/Resources/Shaders/OutlineMask.shader @@ -0,0 +1,33 @@ +// +// OutlineMask.shader +// QuickOutline +// +// Created by Chris Nolet on 2/21/18. +// Copyright © 2018 Chris Nolet. All rights reserved. +// + +Shader "Custom/Outline Mask" { + Properties { + [Enum(UnityEngine.Rendering.CompareFunction)] _ZTest("ZTest", Float) = 0 + } + + SubShader { + Tags { + "Queue" = "Transparent+100" + "RenderType" = "Transparent" + } + + Pass { + Name "Mask" + Cull Off + ZTest [_ZTest] + ZWrite Off + ColorMask 0 + + Stencil { + Ref 1 + Pass Replace + } + } + } +} diff --git a/Assets/QuickOutline/Resources/Shaders/OutlineMask.shader.meta b/Assets/QuickOutline/Resources/Shaders/OutlineMask.shader.meta new file mode 100644 index 0000000..38db7c5 --- /dev/null +++ b/Assets/QuickOutline/Resources/Shaders/OutlineMask.shader.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 341b058cd7dee4f5cba5cc59a513619e +timeCreated: 1520575773 +licenseType: Store +ShaderImporter: + externalObjects: {} + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Samples.meta b/Assets/QuickOutline/Samples.meta new file mode 100644 index 0000000..7d6c23d --- /dev/null +++ b/Assets/QuickOutline/Samples.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 932f8193e5396db4babac4756c406dee +folderAsset: yes +timeCreated: 1522559213 +licenseType: Store +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Samples/Materials.meta b/Assets/QuickOutline/Samples/Materials.meta new file mode 100644 index 0000000..cb14819 --- /dev/null +++ b/Assets/QuickOutline/Samples/Materials.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 2b0040b0ed7fbd64693e9195d13d25f9 +folderAsset: yes +timeCreated: 1522615600 +licenseType: Store +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Samples/Materials/Plane.mat b/Assets/QuickOutline/Samples/Materials/Plane.mat new file mode 100644 index 0000000..06fa1aa --- /dev/null +++ b/Assets/QuickOutline/Samples/Materials/Plane.mat @@ -0,0 +1,76 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_Name: Plane + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 1 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.2509804, g: 0.2509804, b: 0.5019608, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git a/Assets/QuickOutline/Samples/Materials/Plane.mat.meta b/Assets/QuickOutline/Samples/Materials/Plane.mat.meta new file mode 100644 index 0000000..665a9d6 --- /dev/null +++ b/Assets/QuickOutline/Samples/Materials/Plane.mat.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: f58cf65ea995c4b45be95713bdea8134 +timeCreated: 1522540975 +licenseType: Store +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Samples/Scenes.meta b/Assets/QuickOutline/Samples/Scenes.meta new file mode 100644 index 0000000..7f5c774 --- /dev/null +++ b/Assets/QuickOutline/Samples/Scenes.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 3916faa55c6a94248959031ee0ad499f +folderAsset: yes +timeCreated: 1522615614 +licenseType: Store +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Samples/Scenes/QuickOutline.unity b/Assets/QuickOutline/Samples/Scenes/QuickOutline.unity new file mode 100644 index 0000000..33911b7 --- /dev/null +++ b/Assets/QuickOutline/Samples/Scenes/QuickOutline.unity @@ -0,0 +1,778 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 8 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 820273532} + m_IndirectSpecularColor: {r: 0.18028383, g: 0.22571409, b: 0.30692282, a: 1} +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 8 + m_Resolution: 2 + m_BakeResolution: 40 + m_TextureWidth: 1024 + m_TextureHeight: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 3 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFiltering: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousColorSigma: 1 + m_PVRFilteringAtrousNormalSigma: 1 + m_PVRFilteringAtrousPositionSigma: 1 + m_LightingDataAsset: {fileID: 0} + m_ShadowMaskMode: 2 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &122269556 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 122269561} + - component: {fileID: 122269560} + - component: {fileID: 122269558} + - component: {fileID: 122269557} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &122269557 +AudioListener: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 122269556} + m_Enabled: 1 +--- !u!124 &122269558 +Behaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 122269556} + m_Enabled: 1 +--- !u!20 &122269560 +Camera: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 122269556} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 + m_StereoMirrorMode: 0 +--- !u!4 &122269561 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 122269556} + m_LocalRotation: {x: 0.3420201, y: 0, z: 0, w: 0.9396927} + m_LocalPosition: {x: 0, y: 3, z: -4} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 40, y: 0, z: 0} +--- !u!1 &124162633 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 124162634} + - component: {fileID: 124162638} + - component: {fileID: 124162636} + - component: {fileID: 124162635} + m_Layer: 0 + m_Name: Outline Hidden + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &124162634 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 124162633} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2, y: 0, z: 0} + m_LocalScale: {x: 1, y: 0.5, z: 1} + m_Children: [] + m_Father: {fileID: 935070115} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &124162635 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 124162633} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5fea29bb7c508c244a1f805a5fd3fc4d, type: 3} + m_Name: + m_EditorClassIdentifier: + outlineMode: 2 + outlineColor: {r: 1, g: 0.2509804, b: 0.2509804, a: 1} + outlineWidth: 6 +--- !u!23 &124162636 +MeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 124162633} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 1 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &124162638 +MeshFilter: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 124162633} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &796971894 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 796971895} + - component: {fileID: 796971899} + - component: {fileID: 796971897} + - component: {fileID: 796971896} + m_Layer: 0 + m_Name: Outline And Silhouette + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &796971895 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 796971894} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2, y: 0, z: 0} + m_LocalScale: {x: 1, y: 0.5, z: 1} + m_Children: [] + m_Father: {fileID: 935070115} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &796971896 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 796971894} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5fea29bb7c508c244a1f805a5fd3fc4d, type: 3} + m_Name: + m_EditorClassIdentifier: + outlineMode: 3 + outlineColor: {r: 0.2509804, g: 1, b: 1, a: 1} + outlineWidth: 6 +--- !u!23 &796971897 +MeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 796971894} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 1 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &796971899 +MeshFilter: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 796971894} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &820273531 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 820273533} + - component: {fileID: 820273532} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &820273532 +Light: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 820273531} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &820273533 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 820273531} + m_LocalRotation: {x: 0.40821788, y: 0.23456976, z: -0.10938167, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 50, y: 30, z: 0} +--- !u!1 &935070114 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 935070115} + m_Layer: 0 + m_Name: Outlined Objects + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &935070115 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 935070114} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1781008194} + - {fileID: 124162634} + - {fileID: 1346396411} + - {fileID: 796971895} + - {fileID: 1083549395} + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1083549394 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1083549395} + - component: {fileID: 1083549399} + - component: {fileID: 1083549397} + - component: {fileID: 1083549396} + m_Layer: 0 + m_Name: Outline Visible + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1083549395 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1083549394} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 935070115} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1083549396 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1083549394} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5fea29bb7c508c244a1f805a5fd3fc4d, type: 3} + m_Name: + m_EditorClassIdentifier: + outlineMode: 1 + outlineColor: {r: 0.2509804, g: 1, b: 0.2509804, a: 1} + outlineWidth: 6 +--- !u!23 &1083549397 +MeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1083549394} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 1 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &1083549399 +MeshFilter: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1083549394} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1346396410 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1346396411} + - component: {fileID: 1346396415} + - component: {fileID: 1346396413} + - component: {fileID: 1346396412} + m_Layer: 0 + m_Name: Outline All + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1346396411 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1346396410} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 935070115} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1346396412 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1346396410} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5fea29bb7c508c244a1f805a5fd3fc4d, type: 3} + m_Name: + m_EditorClassIdentifier: + outlineMode: 0 + outlineColor: {r: 1, g: 1, b: 0.2509804, a: 1} + outlineWidth: 6 +--- !u!23 &1346396413 +MeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1346396410} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 1 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &1346396415 +MeshFilter: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1346396410} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1580478821 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1580478825} + - component: {fileID: 1580478824} + - component: {fileID: 1580478822} + m_Layer: 0 + m_Name: Plane + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!23 &1580478822 +MeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1580478821} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_Materials: + - {fileID: 2100000, guid: f58cf65ea995c4b45be95713bdea8134, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 1 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &1580478824 +MeshFilter: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1580478821} + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1580478825 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1580478821} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 10, y: 1, z: 10} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1781008193 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1781008194} + - component: {fileID: 1781008198} + - component: {fileID: 1781008196} + - component: {fileID: 1781008195} + m_Layer: 0 + m_Name: Silhouette Only + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1781008194 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1781008193} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -4, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 935070115} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1781008195 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1781008193} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5fea29bb7c508c244a1f805a5fd3fc4d, type: 3} + m_Name: + m_EditorClassIdentifier: + outlineMode: 4 + outlineColor: {r: 1, g: 1, b: 1, a: 1} + outlineWidth: 6 +--- !u!23 &1781008196 +MeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1781008193} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 1 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!33 &1781008198 +MeshFilter: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1781008193} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} diff --git a/Assets/QuickOutline/Samples/Scenes/QuickOutline.unity.meta b/Assets/QuickOutline/Samples/Scenes/QuickOutline.unity.meta new file mode 100644 index 0000000..2e6c9c3 --- /dev/null +++ b/Assets/QuickOutline/Samples/Scenes/QuickOutline.unity.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f23712c79adc910408e872b127e825cf +timeCreated: 1522615825 +licenseType: Store +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Scripts.meta b/Assets/QuickOutline/Scripts.meta new file mode 100644 index 0000000..2f7793d --- /dev/null +++ b/Assets/QuickOutline/Scripts.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 3ddbd65d69a9f0b48bab4fe96a1fe099 +folderAsset: yes +timeCreated: 1522559122 +licenseType: Store +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/QuickOutline/Scripts/Outline.cs b/Assets/QuickOutline/Scripts/Outline.cs new file mode 100644 index 0000000..26d8788 --- /dev/null +++ b/Assets/QuickOutline/Scripts/Outline.cs @@ -0,0 +1,309 @@ +// +// Outline.cs +// QuickOutline +// +// Created by Chris Nolet on 3/30/18. +// Copyright © 2018 Chris Nolet. All rights reserved. +// + +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; + +[DisallowMultipleComponent] + +public class Outline : MonoBehaviour { + private static HashSet registeredMeshes = new HashSet(); + + public enum Mode { + OutlineAll, + OutlineVisible, + OutlineHidden, + OutlineAndSilhouette, + SilhouetteOnly + } + + public Mode OutlineMode { + get { return outlineMode; } + set { + outlineMode = value; + needsUpdate = true; + } + } + + public Color OutlineColor { + get { return outlineColor; } + set { + outlineColor = value; + needsUpdate = true; + } + } + + public float OutlineWidth { + get { return outlineWidth; } + set { + outlineWidth = value; + needsUpdate = true; + } + } + + [Serializable] + private class ListVector3 { + public List data; + } + + [SerializeField] + private Mode outlineMode; + + [SerializeField] + private Color outlineColor = Color.white; + + [SerializeField, Range(0f, 10f)] + private float outlineWidth = 2f; + + [Header("Optional")] + + [SerializeField, Tooltip("Precompute enabled: Per-vertex calculations are performed in the editor and serialized with the object. " + + "Precompute disabled: Per-vertex calculations are performed at runtime in Awake(). This may cause a pause for large meshes.")] + private bool precomputeOutline; + + [SerializeField, HideInInspector] + private List bakeKeys = new List(); + + [SerializeField, HideInInspector] + private List bakeValues = new List(); + + private Renderer[] renderers; + private Material outlineMaskMaterial; + private Material outlineFillMaterial; + + private bool needsUpdate; + + void Awake() { + + // Cache renderers + renderers = GetComponentsInChildren(); + + // Instantiate outline materials + outlineMaskMaterial = Instantiate(Resources.Load(@"Materials/OutlineMask")); + outlineFillMaterial = Instantiate(Resources.Load(@"Materials/OutlineFill")); + + outlineMaskMaterial.name = "OutlineMask (Instance)"; + outlineFillMaterial.name = "OutlineFill (Instance)"; + + // Retrieve or generate smooth normals + LoadSmoothNormals(); + + // Apply material properties immediately + needsUpdate = true; + } + + void OnEnable() { + foreach (var renderer in renderers) { + + // Append outline shaders + var materials = renderer.sharedMaterials.ToList(); + + materials.Add(outlineMaskMaterial); + materials.Add(outlineFillMaterial); + + renderer.materials = materials.ToArray(); + } + } + + void OnValidate() { + + // Update material properties + needsUpdate = true; + + // Clear cache when baking is disabled or corrupted + if (!precomputeOutline && bakeKeys.Count != 0 || bakeKeys.Count != bakeValues.Count) { + bakeKeys.Clear(); + bakeValues.Clear(); + } + + // Generate smooth normals when baking is enabled + if (precomputeOutline && bakeKeys.Count == 0) { + Bake(); + } + } + + void Update() { + if (needsUpdate) { + needsUpdate = false; + + UpdateMaterialProperties(); + } + } + + void OnDisable() { + foreach (var renderer in renderers) { + + // Remove outline shaders + var materials = renderer.sharedMaterials.ToList(); + + materials.Remove(outlineMaskMaterial); + materials.Remove(outlineFillMaterial); + + renderer.materials = materials.ToArray(); + } + } + + void OnDestroy() { + + // Destroy material instances + Destroy(outlineMaskMaterial); + Destroy(outlineFillMaterial); + } + + void Bake() { + + // Generate smooth normals for each mesh + var bakedMeshes = new HashSet(); + + foreach (var meshFilter in GetComponentsInChildren()) { + + // Skip duplicates + if (!bakedMeshes.Add(meshFilter.sharedMesh)) { + continue; + } + + // Serialize smooth normals + var smoothNormals = SmoothNormals(meshFilter.sharedMesh); + + bakeKeys.Add(meshFilter.sharedMesh); + bakeValues.Add(new ListVector3() { data = smoothNormals }); + } + } + + void LoadSmoothNormals() { + + // Retrieve or generate smooth normals + foreach (var meshFilter in GetComponentsInChildren()) { + + // Skip if smooth normals have already been adopted + if (!registeredMeshes.Add(meshFilter.sharedMesh)) { + continue; + } + + // Retrieve or generate smooth normals + var index = bakeKeys.IndexOf(meshFilter.sharedMesh); + var smoothNormals = (index >= 0) ? bakeValues[index].data : SmoothNormals(meshFilter.sharedMesh); + + // Store smooth normals in UV3 + meshFilter.sharedMesh.SetUVs(3, smoothNormals); + + // Combine submeshes + var renderer = meshFilter.GetComponent(); + + if (renderer != null) { + CombineSubmeshes(meshFilter.sharedMesh, renderer.sharedMaterials); + } + } + + // Clear UV3 on skinned mesh renderers + foreach (var skinnedMeshRenderer in GetComponentsInChildren()) { + + // Skip if UV3 has already been reset + if (!registeredMeshes.Add(skinnedMeshRenderer.sharedMesh)) { + continue; + } + + // Clear UV3 + skinnedMeshRenderer.sharedMesh.uv4 = new Vector2[skinnedMeshRenderer.sharedMesh.vertexCount]; + + // Combine submeshes + CombineSubmeshes(skinnedMeshRenderer.sharedMesh, skinnedMeshRenderer.sharedMaterials); + } + } + + List SmoothNormals(Mesh mesh) { + + // Group vertices by location + var groups = mesh.vertices.Select((vertex, index) => new KeyValuePair(vertex, index)).GroupBy(pair => pair.Key); + + // Copy normals to a new list + var smoothNormals = new List(mesh.normals); + + // Average normals for grouped vertices + foreach (var group in groups) { + + // Skip single vertices + if (group.Count() == 1) { + continue; + } + + // Calculate the average normal + var smoothNormal = Vector3.zero; + + foreach (var pair in group) { + smoothNormal += smoothNormals[pair.Value]; + } + + smoothNormal.Normalize(); + + // Assign smooth normal to each vertex + foreach (var pair in group) { + smoothNormals[pair.Value] = smoothNormal; + } + } + + return smoothNormals; + } + + void CombineSubmeshes(Mesh mesh, Material[] materials) { + + // Skip meshes with a single submesh + if (mesh.subMeshCount == 1) { + return; + } + + // Skip if submesh count exceeds material count + if (mesh.subMeshCount > materials.Length) { + return; + } + + // Append combined submesh + mesh.subMeshCount++; + mesh.SetTriangles(mesh.triangles, mesh.subMeshCount - 1); + } + + void UpdateMaterialProperties() { + + // Apply properties according to mode + outlineFillMaterial.SetColor("_OutlineColor", outlineColor); + + switch (outlineMode) { + case Mode.OutlineAll: + outlineMaskMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.Always); + outlineFillMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.Always); + outlineFillMaterial.SetFloat("_OutlineWidth", outlineWidth); + break; + + case Mode.OutlineVisible: + outlineMaskMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.Always); + outlineFillMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.LessEqual); + outlineFillMaterial.SetFloat("_OutlineWidth", outlineWidth); + break; + + case Mode.OutlineHidden: + outlineMaskMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.Always); + outlineFillMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.Greater); + outlineFillMaterial.SetFloat("_OutlineWidth", outlineWidth); + break; + + case Mode.OutlineAndSilhouette: + outlineMaskMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.LessEqual); + outlineFillMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.Always); + outlineFillMaterial.SetFloat("_OutlineWidth", outlineWidth); + break; + + case Mode.SilhouetteOnly: + outlineMaskMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.LessEqual); + outlineFillMaterial.SetFloat("_ZTest", (float)UnityEngine.Rendering.CompareFunction.Greater); + outlineFillMaterial.SetFloat("_OutlineWidth", 0f); + break; + } + } +} diff --git a/Assets/QuickOutline/Scripts/Outline.cs.meta b/Assets/QuickOutline/Scripts/Outline.cs.meta new file mode 100644 index 0000000..ffa272d --- /dev/null +++ b/Assets/QuickOutline/Scripts/Outline.cs.meta @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 5fea29bb7c508c244a1f805a5fd3fc4d +timeCreated: 1522369084 +licenseType: Store +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/CameraTestScene.unity b/Assets/Scenes/CameraTestScene.unity index 528ab90..b7ff814 100644 --- a/Assets/Scenes/CameraTestScene.unity +++ b/Assets/Scenes/CameraTestScene.unity @@ -359,6 +359,30 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: c2cdf8a35ccaacc4695675d2ada4aecf, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1 &889658971 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 4611178744751000815, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + m_PrefabInstance: {fileID: 1822225124} + m_PrefabAsset: {fileID: 0} +--- !u!114 &889658972 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 889658971} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5fea29bb7c508c244a1f805a5fd3fc4d, type: 3} + m_Name: + m_EditorClassIdentifier: + outlineMode: 0 + outlineColor: {r: 1, g: 1, b: 1, a: 1} + outlineWidth: 2 + precomputeOutline: 0 + bakeKeys: [] + bakeValues: [] --- !u!1 &1257773688 GameObject: m_ObjectHideFlags: 0 @@ -477,12 +501,6 @@ MonoBehaviour: m_LightCookieSize: {x: 1, y: 1} m_LightCookieOffset: {x: 0, y: 0} m_SoftShadowQuality: 0 ---- !u!1 &1267316003 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 7435709693246867821, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - m_PrefabInstance: {fileID: 1774990605473331699} - m_PrefabAsset: {fileID: 0} --- !u!1 &1425080745 GameObject: m_ObjectHideFlags: 0 @@ -874,6 +892,88 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: c2cdf8a35ccaacc4695675d2ada4aecf, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1001 &1822225124 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalPosition.x + value: -13.233323 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalPosition.y + value: 8.973126 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalPosition.z + value: 7.3137584 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3798190417997420117, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4611178744751000815, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_Name + value: BlackHole + objectReference: {fileID: 0} + - target: {fileID: 8324639096253395440, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_Materials.Array.size + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 8324639096253395440, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + propertyPath: m_Materials.Array.data[3] + value: + objectReference: {fileID: 2100000, guid: 1de4c3a8e8c911e44ad6ae7a2921ac27, type: 2} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 4611178744751000815, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, + type: 3} + insertIndex: -1 + addedObject: {fileID: 889658972} + m_SourcePrefab: {fileID: 100100000, guid: 1d7949721a9f0bc9ba1a8c49ca5fd099, type: 3} --- !u!1 &1915595172 GameObject: m_ObjectHideFlags: 0 @@ -1005,191 +1105,6 @@ PrefabInstance: propertyPath: m_Name value: Cinemachine objectReference: {fileID: 0} - - target: {fileID: 3313768392743891090, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: fadeSpeed - value: 5.05 - objectReference: {fileID: 0} - - target: {fileID: 3313768392743891090, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: hideFadeSpeed - value: 7 - objectReference: {fileID: 0} - - target: {fileID: 3313768392743891090, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: showFadeSpeed - value: 2 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: cam - value: - objectReference: {fileID: 1267316003} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: sens.x - value: 300 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: sens.y - value: 3 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: scrollSpeed - value: 2 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: stopAfterTime - value: 15 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: stopStiffness - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: decelerationMultiplier - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.size - value: 4 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[1].time - value: 0.2991759 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[2].time - value: 0.6705839 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[3].time - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[1].value - value: 0.51186574 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[2].value - value: 0.6387135 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[3].value - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[0].inSlope - value: 1.710919 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[1].inSlope - value: 0.50856996 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[2].inSlope - value: 0.078333884 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[3].inSlope - value: 1.0967482 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[0].outSlope - value: 1.710919 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[1].inWeight - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[1].outSlope - value: 0.50856996 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[2].inWeight - value: 0.37746048 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[2].outSlope - value: 0.078333884 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[3].inWeight - value: 0.33333334 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[3].outSlope - value: 1.0967482 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[0].outWeight - value: 0.33333334 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[1].outWeight - value: 0.30844653 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[2].outWeight - value: 0.33333334 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[0].tangentMode - value: 34 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[1].tangentMode - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[2].tangentMode - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: curve.m_Curve.Array.data[3].tangentMode - value: 34 - objectReference: {fileID: 0} - - target: {fileID: 5664717836218291588, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: m_XAxis.m_DecelTime - value: 0.25 - objectReference: {fileID: 0} - - target: {fileID: 5664717836218291588, guid: fd9f9b61c0ebb324ebc9f929e26706bc, - type: 3} - propertyPath: m_YAxis.m_DecelTime - value: 0.25 - objectReference: {fileID: 0} - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, type: 3} propertyPath: m_LocalPosition.x @@ -1252,3 +1167,4 @@ SceneRoots: - {fileID: 1257773690} - {fileID: 1696531492} - {fileID: 1774990605473331699} + - {fileID: 1822225124} diff --git a/Assets/Scenes/GameScene.unity b/Assets/Scenes/GameScene.unity new file mode 100644 index 0000000..395c38f --- /dev/null +++ b/Assets/Scenes/GameScene.unity @@ -0,0 +1,1326 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.18028378, g: 0.22571412, b: 0.30692285, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &203396308 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 968288136} + m_Modifications: + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalPosition.x + value: -7.313 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.208 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalPosition.z + value: -7.307 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3798840069121289071, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: GridSize.x + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 3798840069121289071, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: GridSize.y + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 4738812082694162819, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + propertyPath: m_Name + value: GridSpawner + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0c13e24f92c86f84a85c76e0bca22830, type: 3} +--- !u!1 &224165741 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 224165742} + - component: {fileID: 224165745} + - component: {fileID: 224165744} + - component: {fileID: 224165743} + - component: {fileID: 224165746} + m_Layer: 0 + m_Name: Roof + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &224165742 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 224165741} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 10, z: 0} + m_LocalScale: {x: 15, y: 0.2, z: 15} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1515922345} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &224165743 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 224165741} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &224165744 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 224165741} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 1fb12e769af8dfc4b9c47b291e1da192, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &224165745 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 224165741} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &224165746 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 224165741} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2cdf8a35ccaacc4695675d2ada4aecf, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &280779768 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 280779772} + - component: {fileID: 280779771} + - component: {fileID: 280779770} + - component: {fileID: 280779769} + - component: {fileID: 280779773} + m_Layer: 0 + m_Name: Wall +z + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!65 &280779769 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 280779768} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &280779770 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 280779768} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 1fb12e769af8dfc4b9c47b291e1da192, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &280779771 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 280779768} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &280779772 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 280779768} + serializedVersion: 2 + m_LocalRotation: {x: 0.5, y: 0.5, z: 0.5, w: 0.5} + m_LocalPosition: {x: 0, y: 5.1, z: 7.4} + m_LocalScale: {x: 10, y: 0.20000002, z: 15} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1515922345} + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 90} +--- !u!114 &280779773 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 280779768} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2cdf8a35ccaacc4695675d2ada4aecf, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &339673435 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 339673439} + - component: {fileID: 339673438} + - component: {fileID: 339673437} + - component: {fileID: 339673436} + - component: {fileID: 339673440} + m_Layer: 0 + m_Name: Wall -z + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!65 &339673436 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 339673435} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &339673437 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 339673435} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 1fb12e769af8dfc4b9c47b291e1da192, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &339673438 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 339673435} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &339673439 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 339673435} + serializedVersion: 2 + m_LocalRotation: {x: 0.5, y: 0.5, z: 0.5, w: 0.5} + m_LocalPosition: {x: 0, y: 5.1, z: -7.4} + m_LocalScale: {x: 10, y: 0.20000002, z: 15} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1515922345} + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 90} +--- !u!114 &339673440 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 339673435} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2cdf8a35ccaacc4695675d2ada4aecf, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &779612215 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 779612216} + - component: {fileID: 779612219} + - component: {fileID: 779612218} + - component: {fileID: 779612217} + - component: {fileID: 779612220} + m_Layer: 0 + m_Name: 'Wall -x ' + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &779612216 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779612215} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} + m_LocalPosition: {x: -7.4, y: 5.1, z: 0} + m_LocalScale: {x: 10, y: 0.20000002, z: 14.6} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1515922345} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} +--- !u!65 &779612217 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779612215} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &779612218 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779612215} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 1fb12e769af8dfc4b9c47b291e1da192, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &779612219 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779612215} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &779612220 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779612215} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2cdf8a35ccaacc4695675d2ada4aecf, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &922758185 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 922758187} + - component: {fileID: 922758186} + - component: {fileID: 922758188} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &922758186 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 922758185} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &922758187 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 922758185} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!114 &922758188 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 922758185} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Version: 3 + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_LightLayerMask: 1 + m_RenderingLayers: 1 + m_CustomShadowLayers: 0 + m_ShadowLayerMask: 1 + m_ShadowRenderingLayers: 1 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 +--- !u!1001 &929277189 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1127111119625446846, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_Name + value: Cinemachine + objectReference: {fileID: 0} + - target: {fileID: 2465233980315321778, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.w + value: -0.1002336 + objectReference: {fileID: 0} + - target: {fileID: 2465233980315321778, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0.022605719 + objectReference: {fileID: 0} + - target: {fileID: 2465233980315321778, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9703356 + objectReference: {fileID: 0} + - target: {fileID: 2465233980315321778, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0.21884014 + objectReference: {fileID: 0} + - target: {fileID: 2981308973353539976, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalPosition.x + value: 10.297432 + objectReference: {fileID: 0} + - target: {fileID: 2981308973353539976, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalPosition.y + value: 12.445195 + objectReference: {fileID: 0} + - target: {fileID: 2981308973353539976, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalPosition.z + value: 18.85268 + objectReference: {fileID: 0} + - target: {fileID: 2981308973353539976, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.w + value: -0.09954502 + objectReference: {fileID: 0} + - target: {fileID: 2981308973353539976, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0.02546724 + objectReference: {fileID: 0} + - target: {fileID: 2981308973353539976, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9636698 + objectReference: {fileID: 0} + - target: {fileID: 2981308973353539976, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0.2465418 + objectReference: {fileID: 0} + - target: {fileID: 3313768392743891090, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: sphereRadius + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 3665490202611795451, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalPosition.y + value: 7.6427956 + objectReference: {fileID: 0} + - target: {fileID: 5664717836218291588, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_Orbits.Array.data[0].m_Height + value: 20 + objectReference: {fileID: 0} + - target: {fileID: 5664717836218291588, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_Orbits.Array.data[1].m_Height + value: 7.5 + objectReference: {fileID: 0} + - target: {fileID: 5664717836218291588, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_Orbits.Array.data[2].m_Height + value: -5 + objectReference: {fileID: 0} + - target: {fileID: 5753661378891917460, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.w + value: -0.09954503 + objectReference: {fileID: 0} + - target: {fileID: 5753661378891917460, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0.025467241 + objectReference: {fileID: 0} + - target: {fileID: 5753661378891917460, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9636698 + objectReference: {fileID: 0} + - target: {fileID: 5753661378891917460, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0.24654177 + objectReference: {fileID: 0} + - target: {fileID: 7348612162646443967, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7348612162646443967, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.w + value: -0.09876942 + objectReference: {fileID: 0} + - target: {fileID: 7348612162646443967, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0.028326692 + objectReference: {fileID: 0} + - target: {fileID: 7348612162646443967, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.956161 + objectReference: {fileID: 0} + - target: {fileID: 7348612162646443967, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0.27422333 + objectReference: {fileID: 0} + - target: {fileID: 7757173428948913319, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_Offset.z + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalPosition.x + value: -6.051462 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.14279556 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalPosition.z + value: 1.480094 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: fd9f9b61c0ebb324ebc9f929e26706bc, type: 3} +--- !u!1 &968288134 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 968288136} + - component: {fileID: 968288135} + m_Layer: 0 + m_Name: PlacementSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &968288135 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 968288134} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: acef1d7c80f784543acd3e1571e99495, type: 3} + m_Name: + m_EditorClassIdentifier: + DebugTowerPrefab: {fileID: 8488737342646939416, guid: 9415cb10a1bd579269301ca4f61a1554, + type: 3} + SilhouetteMaterial: {fileID: 2100000, guid: 0610eb89b05f0b546929db3664a351d8, type: 2} +--- !u!4 &968288136 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 968288134} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0.2, y: 0, z: 0.2} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1812668201} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1515922344 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1515922345} + m_Layer: 0 + m_Name: Building + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1515922345 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1515922344} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1785574043} + - {fileID: 224165742} + - {fileID: 280779772} + - {fileID: 339673439} + - {fileID: 1902554699} + - {fileID: 779612216} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1785574039 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1785574043} + - component: {fileID: 1785574042} + - component: {fileID: 1785574041} + - component: {fileID: 1785574040} + - component: {fileID: 1785574044} + m_Layer: 0 + m_Name: Ground + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!65 &1785574040 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1785574039} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1785574041 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1785574039} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 1fb12e769af8dfc4b9c47b291e1da192, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1785574042 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1785574039} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1785574043 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1785574039} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 15, y: 0.2, z: 15} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1515922345} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1785574044 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1785574039} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2cdf8a35ccaacc4695675d2ada4aecf, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!4 &1812668201 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2739991145043243501, guid: 0c13e24f92c86f84a85c76e0bca22830, + type: 3} + m_PrefabInstance: {fileID: 203396308} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1902554698 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1902554699} + - component: {fileID: 1902554702} + - component: {fileID: 1902554701} + - component: {fileID: 1902554700} + - component: {fileID: 1902554703} + m_Layer: 0 + m_Name: Wall +x + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1902554699 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1902554698} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} + m_LocalPosition: {x: 7.4, y: 5.1, z: 0} + m_LocalScale: {x: 10, y: 0.20000002, z: 14.6} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1515922345} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} +--- !u!65 &1902554700 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1902554698} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1902554701 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1902554698} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 1fb12e769af8dfc4b9c47b291e1da192, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1902554702 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1902554698} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1902554703 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1902554698} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2cdf8a35ccaacc4695675d2ada4aecf, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 922758187} + - {fileID: 1515922345} + - {fileID: 929277189} + - {fileID: 968288136} diff --git a/Assets/Scenes/GameScene.unity.meta b/Assets/Scenes/GameScene.unity.meta new file mode 100644 index 0000000..9cf818b --- /dev/null +++ b/Assets/Scenes/GameScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 82109106f3e34b446b7e5e0a75799411 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/TowerTest.unity b/Assets/Scenes/TowerTest.unity index 6db570d..f4854fd 100644 --- a/Assets/Scenes/TowerTest.unity +++ b/Assets/Scenes/TowerTest.unity @@ -929,6 +929,51 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1395991985 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1395991987} + - component: {fileID: 1395991986} + m_Layer: 0 + m_Name: gm + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1395991986 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1395991985} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 00e1f7ea5be7c564faf42d035aec7f53, type: 3} + m_Name: + m_EditorClassIdentifier: + IsBuildMode: 0 +--- !u!4 &1395991987 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1395991985} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 1.1557862, y: 2.294486, z: 1.574348} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1621186629 GameObject: m_ObjectHideFlags: 0 @@ -1185,6 +1230,11 @@ PrefabInstance: propertyPath: m_LocalPosition.z value: 11.533513 objectReference: {fileID: 0} + - target: {fileID: 3837216061230793568, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + propertyPath: stopAfterTime + value: 5 + objectReference: {fileID: 0} - target: {fileID: 5753661378891917460, guid: fd9f9b61c0ebb324ebc9f929e26706bc, type: 3} propertyPath: m_LocalRotation.w @@ -1243,7 +1293,7 @@ PrefabInstance: - target: {fileID: 7348612162646443967, guid: fd9f9b61c0ebb324ebc9f929e26706bc, type: 3} propertyPath: m_LocalRotation.w - value: -0.1380528 + value: -0.13805284 objectReference: {fileID: 0} - target: {fileID: 7348612162646443967, guid: fd9f9b61c0ebb324ebc9f929e26706bc, type: 3} @@ -1258,7 +1308,7 @@ PrefabInstance: - target: {fileID: 7348612162646443967, guid: fd9f9b61c0ebb324ebc9f929e26706bc, type: 3} propertyPath: m_LocalRotation.z - value: -0.13815574 + value: -0.13815573 objectReference: {fileID: 0} - target: {fileID: 8882344377078016156, guid: fd9f9b61c0ebb324ebc9f929e26706bc, type: 3} @@ -1313,7 +1363,11 @@ PrefabInstance: m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] - m_AddedComponents: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 6163557566655415017, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + insertIndex: -1 + addedObject: {fileID: 1970787077} m_SourcePrefab: {fileID: 100100000, guid: fd9f9b61c0ebb324ebc9f929e26706bc, type: 3} --- !u!1 &1797347348 GameObject: @@ -1488,6 +1542,37 @@ PrefabInstance: m_AddedGameObjects: [] m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 48ecac7381f19af3bab6fef54e6dbadc, type: 3} +--- !u!1 &1970787075 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 6163557566655415017, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + m_PrefabInstance: {fileID: 1732242001} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1970787077 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1970787075} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c2d4e884ed2ba0944bfe55454353bc2d, type: 3} + m_Name: + m_EditorClassIdentifier: + mainCamera: {fileID: 1970787082} + layerMask: + serializedVersion: 2 + m_Bits: 1024 + selectLayer: + serializedVersion: 2 + m_Bits: 256 +--- !u!20 &1970787082 stripped +Camera: + m_CorrespondingSourceObject: {fileID: 3255403189825384754, guid: fd9f9b61c0ebb324ebc9f929e26706bc, + type: 3} + m_PrefabInstance: {fileID: 1732242001} + m_PrefabAsset: {fileID: 0} --- !u!1001 &667212637924654954 PrefabInstance: m_ObjectHideFlags: 0 @@ -1575,3 +1660,4 @@ SceneRoots: - {fileID: 1671091699} - {fileID: 770231297} - {fileID: 504816165} + - {fileID: 1395991987} diff --git a/Assets/Scripts/Camera/CameraController.cs b/Assets/Scripts/Camera/CameraController.cs index 9ee2b2b..67e610c 100644 --- a/Assets/Scripts/Camera/CameraController.cs +++ b/Assets/Scripts/Camera/CameraController.cs @@ -7,9 +7,8 @@ public class CameraController : MonoBehaviour [SerializeField] private GameObject cam; public float scrollSpeed; - public float stopAfterTime = 0.25f; + [Range(5f, 30f)] public float stopAfterTime; public AnimationCurve curve = new AnimationCurve(new Keyframe(0f, 0f, 1f, 1f), new Keyframe(1f, 1f, 1f, 1f)); - [Range(1f, 0f)] public float decelerationMultiplier; public Vector2 sens; private Vector2 defaultMaxSpeed; diff --git a/Assets/Scripts/Camera/HideWall.cs b/Assets/Scripts/Camera/HideWall.cs index 65a27ab..e525479 100644 --- a/Assets/Scripts/Camera/HideWall.cs +++ b/Assets/Scripts/Camera/HideWall.cs @@ -27,9 +27,11 @@ public class HideWall : MonoBehaviour List hitObjectsThisFrame = new List(); + for (int i = 0; i < hits.Length; i++) { - if (hits[i].collider != null && hits[i].collider.CompareTag("Wall")) + //print(hits[i].collider.gameObject.name); + if (hits[i].collider != null) { var hitGameObject = hits[i].collider.gameObject; hitObjectsThisFrame.Add(hitGameObject); diff --git a/Assets/Scripts/Camera/WallOpacity.cs b/Assets/Scripts/Camera/WallOpacity.cs index 136d5ef..cee8778 100644 --- a/Assets/Scripts/Camera/WallOpacity.cs +++ b/Assets/Scripts/Camera/WallOpacity.cs @@ -41,11 +41,13 @@ public class WallOpacity : MonoBehaviour { isShowing = true; showFadeSpeed = speed; + print("showing wall"); } public void HideWall(float speed) { isShowing = false; hideFadeSpeed = speed; + print("hdiding wall"); } } diff --git a/Assets/Scripts/Manager/GameManager.cs b/Assets/Scripts/Manager/GameManager.cs index fe729ef..9cc7b66 100644 --- a/Assets/Scripts/Manager/GameManager.cs +++ b/Assets/Scripts/Manager/GameManager.cs @@ -1,5 +1,3 @@ -using System.Collections; -using System.Collections.Generic; using UnityEngine; public class GameManager : MonoBehaviour @@ -7,8 +5,16 @@ public class GameManager : MonoBehaviour public static GameManager Instance; public bool IsBuildMode = false; + private Tower selectedTower; + public Tower SelectedTower { get { return selectedTower; } set { + if (selectedTower != null) + selectedTower.TowerSelected(false); - private void Start() + selectedTower = value; + selectedTower.TowerSelected(true); + }} + + private void Awake() { if (Instance != this) Destroy(Instance); diff --git a/Assets/Scripts/PlacementSystem/CameraSlotClickDetect.cs b/Assets/Scripts/PlacementSystem/CameraSlotClickDetect.cs index 717a401..d12562c 100644 --- a/Assets/Scripts/PlacementSystem/CameraSlotClickDetect.cs +++ b/Assets/Scripts/PlacementSystem/CameraSlotClickDetect.cs @@ -1,12 +1,12 @@ using System.Collections; using System.Collections.Generic; -using Unity.VisualScripting; using UnityEngine; public class CameraSlotClickDetect : MonoBehaviour { public Camera mainCamera; public LayerMask layerMask; + public LayerMask selectLayer; private SlotManager PrevHoveredSlot; @@ -29,6 +29,13 @@ public class CameraSlotClickDetect : MonoBehaviour { var slotInfo = hit.collider.gameObject.GetComponentInParent(); slotInfo.OnClick(); + GameManager.Instance.SelectedTower = null; + } + RaycastHit selectHit; + if (Physics.Raycast(ray, out selectHit, Mathf.Infinity, selectLayer) && !GameManager.Instance.IsBuildMode) + { + var tower = selectHit.collider.gameObject.GetComponentInChildren(); + GameManager.Instance.SelectedTower = tower; } } diff --git a/Assets/Scripts/Tower/AimTower.cs b/Assets/Scripts/Tower/AimTower.cs index dac4169..6c0bad5 100644 --- a/Assets/Scripts/Tower/AimTower.cs +++ b/Assets/Scripts/Tower/AimTower.cs @@ -1,3 +1,4 @@ +using System; using System.Collections; using System.Collections.Generic; using UnityEngine; @@ -16,6 +17,7 @@ public class AimTower : Tower [SerializeField] private GameObject ghostPrefab; [SerializeField] private LineRenderer trajectoryLine; [SerializeField] private int trajectoryObjectPoolSize = 25; + [SerializeField] private LayerMask wallMask; private int poolIdx = 0; public Vector3 AimDirection => barrel.transform.forward; @@ -24,9 +26,10 @@ public class AimTower : Tower public float HorizontalRotation => horizontalArc.Value; public float VerticalRotation => verticalArc.Value; - protected override void Awake() { + base.Awake(); + horizontalArc.Value.AddListener(UpdateBarrelRotation); verticalArc.Value.AddListener(UpdateBarrelRotation); @@ -39,6 +42,16 @@ public class AimTower : Tower UpdateTrajectory(); } + public override void TowerSelected(bool selected) + { + base.TowerSelected(selected); + + horizontalArc.gameObject.SetActive(selected); + verticalArc.gameObject.SetActive(selected); + trajectoryLine.gameObject.SetActive(selected); + UpdateTrajectory(); + } + protected override void OnDestroy() { horizontalArc.Value.RemoveListener(UpdateBarrelRotation); @@ -67,6 +80,7 @@ public class AimTower : Tower { ghost.SetActive(false); } + if (!this.selected) return; Vector3 origin = barrel.Tip.position; Vector3 dir = barrel.transform.forward; @@ -76,7 +90,7 @@ public class AimTower : Tower { Debug.DrawRay(origin, dir.normalized * k_trajectory_maxdist, Color.red, 5f); RaycastHit hit; - if (!Physics.Raycast(origin, dir, out hit, k_trajectory_maxdist)) + if (!Physics.Raycast(origin, dir, out hit, k_trajectory_maxdist, wallMask)) break; pointsInTrajectory.Add(hit.point); @@ -84,7 +98,6 @@ public class AimTower : Tower origin = hit.point; } - trajectoryLine.positionCount = pointsInTrajectory.Count; trajectoryLine.SetPositions(pointsInTrajectory.ToArray()); diff --git a/Assets/Scripts/Tower/GravityTower.cs b/Assets/Scripts/Tower/GravityTower.cs index 49b34f9..0f4573c 100644 --- a/Assets/Scripts/Tower/GravityTower.cs +++ b/Assets/Scripts/Tower/GravityTower.cs @@ -14,6 +14,16 @@ public class GravityTower : Tower [SerializeField] private AnimationCurve distToAcceleration; + public override void TowerSelected(bool selected) + { + + } + + protected override void Awake() + { + base.Awake(); + } + protected override void FixedUpdate() { Collider[] projectilesInRadius = Physics.OverlapSphere(orb.position, radius, affectedBodies); @@ -25,4 +35,14 @@ public class GravityTower : Tower projectileBody.AddForce(projToOrb.normalized * distToAcceleration.Evaluate(dist)); } } + + protected override void OnDestroy() + { + base.OnDestroy(); + } + + protected override void Update() + { + base.Update(); + } } diff --git a/Assets/Scripts/Tower/Projectile.cs b/Assets/Scripts/Tower/Projectile.cs index a947a32..6157677 100644 --- a/Assets/Scripts/Tower/Projectile.cs +++ b/Assets/Scripts/Tower/Projectile.cs @@ -45,7 +45,7 @@ public class Projectile : MonoBehaviour private void OnCollisionEnter(Collision collision) { HealthComponent hitHealthComp = collision.gameObject.GetComponent(); - if (hitHealthComp == comingFrom) return; + // if (hitHealthComp == comingFrom) return; if (hitHealthComp) { hitHealthComp.TakeDamage(damage); diff --git a/Assets/Scripts/Tower/Tower.cs b/Assets/Scripts/Tower/Tower.cs index f8f3a4f..725fa7b 100644 --- a/Assets/Scripts/Tower/Tower.cs +++ b/Assets/Scripts/Tower/Tower.cs @@ -1,21 +1,29 @@ +using System; using UnityEngine; using UnityEngine.Assertions; public abstract class Tower : MonoBehaviour { - public bool towerSelected { get; set; } = true; - + protected bool selected = false; protected HealthComponent healthComp; + protected Outline outline; // Getters + public virtual void TowerSelected(bool selected) + { + this.selected = selected; + + outline.enabled = selected; + } protected virtual void Awake() { healthComp = GetComponent(); + outline = GetComponent(); Assert.IsNotNull(healthComp); + Assert.IsNotNull(outline); } - protected virtual void OnDestroy() { } diff --git a/Assets/Shaders.meta b/Assets/Shaders.meta new file mode 100644 index 0000000..97e82b6 --- /dev/null +++ b/Assets/Shaders.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d8c102cc5759e0a4d81ddbcd1cd98477 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/OutlineShaderGraph.shadergraph b/Assets/Shaders/OutlineShaderGraph.shadergraph new file mode 100644 index 0000000..ed841c0 --- /dev/null +++ b/Assets/Shaders/OutlineShaderGraph.shadergraph @@ -0,0 +1,1777 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "e606bd6a750b474a8f8aec5c0b609695", + "m_Properties": [ + { + "m_Id": "1726c8eae9d0407dac83e9d88b5d3720" + }, + { + "m_Id": "71ec0537c0b5416bad47ca2e2999dc5b" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "db4f2e43955248a899eee8a406119a90" + } + ], + "m_Nodes": [ + { + "m_Id": "eb4cf72ccae34016ad98345e0ecb4b44" + }, + { + "m_Id": "ed4092a0c7814f0395327e028891adf2" + }, + { + "m_Id": "3a676d6172b545d7aece3fb268e84449" + }, + { + "m_Id": "fae4188776174bfd96996d1ba4c6e524" + }, + { + "m_Id": "5bd79ba87f04468dbd03c7f6cbb0731f" + }, + { + "m_Id": "b6737fcaf39e4fd2b6b5c0aaf5c778dd" + }, + { + "m_Id": "927642d82fa249f4bd74272ddd369b5b" + }, + { + "m_Id": "52ed8b3e3a7b44448cfad9f6705a78bd" + }, + { + "m_Id": "6077e1426f3c46979a69a69348536e82" + }, + { + "m_Id": "e6582a0e0e604034b09c500f8d1a71ce" + }, + { + "m_Id": "37edb043c34348378fbcb9060fe8f93b" + }, + { + "m_Id": "ec33494f65fd4560ab11b98b0a0779df" + }, + { + "m_Id": "78da2ca42ddb461bb225c3b362639b4c" + }, + { + "m_Id": "85675597cb0e41b598c0954b86bd585e" + }, + { + "m_Id": "fb0c5eee6294428cb9d391c2dcf386c4" + }, + { + "m_Id": "f5369d513de540c499e52089f2ba54e5" + }, + { + "m_Id": "31aa1d62ec874253a291dfbd91e0d432" + }, + { + "m_Id": "ddea8634a4dc422a9dab1da823b957bd" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "31aa1d62ec874253a291dfbd91e0d432" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "78da2ca42ddb461bb225c3b362639b4c" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "37edb043c34348378fbcb9060fe8f93b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec33494f65fd4560ab11b98b0a0779df" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "78da2ca42ddb461bb225c3b362639b4c" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fb0c5eee6294428cb9d391c2dcf386c4" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85675597cb0e41b598c0954b86bd585e" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "31aa1d62ec874253a291dfbd91e0d432" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ddea8634a4dc422a9dab1da823b957bd" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "31aa1d62ec874253a291dfbd91e0d432" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e6582a0e0e604034b09c500f8d1a71ce" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fae4188776174bfd96996d1ba4c6e524" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec33494f65fd4560ab11b98b0a0779df" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "78da2ca42ddb461bb225c3b362639b4c" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f5369d513de540c499e52089f2ba54e5" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fb0c5eee6294428cb9d391c2dcf386c4" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "fb0c5eee6294428cb9d391c2dcf386c4" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "eb4cf72ccae34016ad98345e0ecb4b44" + }, + "m_SlotId": 0 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 539.2000122070313, + "y": -198.39999389648438 + }, + "m_Blocks": [ + { + "m_Id": "eb4cf72ccae34016ad98345e0ecb4b44" + }, + { + "m_Id": "ed4092a0c7814f0395327e028891adf2" + }, + { + "m_Id": "3a676d6172b545d7aece3fb268e84449" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 491.2000732421875, + "y": 120.0 + }, + "m_Blocks": [ + { + "m_Id": "fae4188776174bfd96996d1ba4c6e524" + }, + { + "m_Id": "5bd79ba87f04468dbd03c7f6cbb0731f" + }, + { + "m_Id": "b6737fcaf39e4fd2b6b5c0aaf5c778dd" + }, + { + "m_Id": "927642d82fa249f4bd74272ddd369b5b" + }, + { + "m_Id": "52ed8b3e3a7b44448cfad9f6705a78bd" + }, + { + "m_Id": "6077e1426f3c46979a69a69348536e82" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "Shader Graphs", + "m_GraphPrecision": 1, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_SubDatas": [], + "m_ActiveTargets": [ + { + "m_Id": "07f19f2c355c48d588fe279dfa6afdd4" + } + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "07f19f2c355c48d588fe279dfa6afdd4", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "477bc73ae1f843ee8cade7209bd3916b" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 0, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 1, + "m_AlphaClip": false, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "08761b7d72f7496c8d436fdcd5f0aec6", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "1726c8eae9d0407dac83e9d88b5d3720", + "m_Guid": { + "m_GuidSerialized": "6f60959d-a0c0-4ea7-8a63-5c4d7ad1d2af" + }, + "m_Name": "OutlineColor", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "OutlineColor", + "m_DefaultReferenceName": "_OutlineColor", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 0.0 + }, + "isMainColor": false, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "1fe3f7a46b98463f818c2358db0e1f9f", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DivideNode", + "m_ObjectId": "31aa1d62ec874253a291dfbd91e0d432", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Divide", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -565.5999145507813, + "y": -278.4000244140625, + "width": 207.99996948242188, + "height": 301.60003662109377 + } + }, + "m_Slots": [ + { + "m_Id": "4e1d51b1d4ef4e80993c54d1af7f029c" + }, + { + "m_Id": "5da9808ffbd84b2fa3bd7c67f0037bbc" + }, + { + "m_Id": "a73b1942f2d94b9789e02d56370b66fa" + } + ], + "synonyms": [ + "division", + "divided by" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "328aa733643a49f09558fd2ff280f0e8", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalVectorNode", + "m_ObjectId": "37edb043c34348378fbcb9060fe8f93b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Normal Vector", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -796.8001098632813, + "y": -671.2000122070313, + "width": 208.00006103515626, + "height": 312.80010986328127 + } + }, + "m_Slots": [ + { + "m_Id": "7211cd5fb20f43ac971c4dc4307c48d1" + } + ], + "synonyms": [ + "surface direction" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3a3c73dbc5d54cd48cf5d7ebff0c1e2b", + "m_Id": 0, + "m_DisplayName": "OutlineColor", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "3a676d6172b545d7aece3fb268e84449", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "5af9cb7aa0654143ba41793dd58678f2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "42d443f472c646208e7c33ccefad1081", + "m_Id": 0, + "m_DisplayName": "OutlineThickness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 2, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalLitSubTarget", + "m_ObjectId": "477bc73ae1f843ee8cade7209bd3916b", + "m_WorkflowMode": 1, + "m_NormalDropOffSpace": 0, + "m_ClearCoat": false, + "m_BlendModePreserveSpecular": true +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "49f7bfa1510b421ba0ce652164bf6927", + "m_Id": 0, + "m_DisplayName": "Metallic", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Metallic", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "4a94eaa721dc46c680c019758a628ac0", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4e1d51b1d4ef4e80993c54d1af7f029c", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "52ed8b3e3a7b44448cfad9f6705a78bd", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Emission", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "550539a5037447c891b5c270c461cc16" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Emission" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "550539a5037447c891b5c270c461cc16", + "m_Id": 0, + "m_DisplayName": "Emission", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Emission", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_ColorMode": 1, + "m_DefaultColor": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "59285d84850c451fa3ed2a649113a270", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "5af9cb7aa0654143ba41793dd58678f2", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "5bd79ba87f04468dbd03c7f6cbb0731f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalTS", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "e41c320bf4b543eb9c8542dec1094549" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalTS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "5da9808ffbd84b2fa3bd7c67f0037bbc", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 2.0, + "y": 2.0, + "z": 2.0, + "w": 2.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "5f231264b9f846f18a806d612fd5f8f3", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "6077e1426f3c46979a69a69348536e82", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Occlusion", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "eef3948df2a04110b7d2b0d20057158d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Occlusion" +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "71ec0537c0b5416bad47ca2e2999dc5b", + "m_Guid": { + "m_GuidSerialized": "9a68882f-6017-48fb-91c3-9ef180c52178" + }, + "m_Name": "OutlineThickness", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "OutlineThickness", + "m_DefaultReferenceName": "_OutlineThickness", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.10000000149011612, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "7211cd5fb20f43ac971c4dc4307c48d1", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "725caf8fb2d540e186d77233c82a9b3f", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "78da2ca42ddb461bb225c3b362639b4c", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -238.4001007080078, + "y": -653.5999145507813, + "width": 208.00006103515626, + "height": 301.5999755859375 + } + }, + "m_Slots": [ + { + "m_Id": "8e678c4ac7d5456fb4661fd2ee000d67" + }, + { + "m_Id": "cf3b7d871bd14137ae8861d672b12603" + }, + { + "m_Id": "4a94eaa721dc46c680c019758a628ac0" + } + ], + "synonyms": [ + "multiplication", + "times", + "x" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "85675597cb0e41b598c0954b86bd585e", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -565.5999145507813, + "y": -418.4000244140625, + "width": 164.7999267578125, + "height": 33.60003662109375 + } + }, + "m_Slots": [ + { + "m_Id": "42d443f472c646208e7c33ccefad1081" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "71ec0537c0b5416bad47ca2e2999dc5b" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8a62543b6aba4eb0a05c2f3dbf181bcd", + "m_Id": 0, + "m_DisplayName": "Smoothness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Smoothness", + "m_StageCapability": 2, + "m_Value": 0.5, + "m_DefaultValue": 0.5, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "8e678c4ac7d5456fb4661fd2ee000d67", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "927642d82fa249f4bd74272ddd369b5b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Smoothness", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "8a62543b6aba4eb0a05c2f3dbf181bcd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Smoothness" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "a73b1942f2d94b9789e02d56370b66fa", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "ab3f8808b6eb4f39b9c44a49bdb3c322", + "m_Id": 4, + "m_DisplayName": "Bounds Size", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Bounds Size", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "add0cfc209c94f14ab22258eab2cb9d1", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "b47aa6bb3b98433f8b3e52f618db8dad", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "b6737fcaf39e4fd2b6b5c0aaf5c778dd", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Metallic", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "49f7bfa1510b421ba0ce652164bf6927" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Metallic" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "b7bdcd62b3b74d3495bcc33a0601a5dd", + "m_Id": 1, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "c2fb8f87ead04378bdff6e4c2d574708", + "m_Id": 3, + "m_DisplayName": "World Bounds Max", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "World Bounds Max", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "c55135e7104545c9ab8c7b25849332fd", + "m_Id": 1, + "m_DisplayName": "Scale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Scale", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "c825bf1a36ea461ab7f514b8526cfbf9", + "m_Id": 2, + "m_DisplayName": "World Bounds Min", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "World Bounds Min", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "cf3b7d871bd14137ae8861d672b12603", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "d5ae425236e94893891820e5e3c40ca7", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "db4f2e43955248a899eee8a406119a90", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "1726c8eae9d0407dac83e9d88b5d3720" + }, + { + "m_Id": "71ec0537c0b5416bad47ca2e2999dc5b" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ObjectNode", + "m_ObjectId": "ddea8634a4dc422a9dab1da823b957bd", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Object", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -766.1626586914063, + "y": -178.16262817382813, + "width": 152.80001831054688, + "height": 172.8000030517578 + } + }, + "m_Slots": [ + { + "m_Id": "add0cfc209c94f14ab22258eab2cb9d1" + }, + { + "m_Id": "c55135e7104545c9ab8c7b25849332fd" + }, + { + "m_Id": "c825bf1a36ea461ab7f514b8526cfbf9" + }, + { + "m_Id": "c2fb8f87ead04378bdff6e4c2d574708" + }, + { + "m_Id": "ab3f8808b6eb4f39b9c44a49bdb3c322" + } + ], + "synonyms": [ + "position", + "scale", + "bounds", + "size" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "e41c320bf4b543eb9c8542dec1094549", + "m_Id": 0, + "m_DisplayName": "Normal (Tangent Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalTS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 3 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "e6582a0e0e604034b09c500f8d1a71ce", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 290.4000549316406, + "y": 52.79998779296875, + "width": 142.4000244140625, + "height": 33.59999084472656 + } + }, + "m_Slots": [ + { + "m_Id": "3a3c73dbc5d54cd48cf5d7ebff0c1e2b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "1726c8eae9d0407dac83e9d88b5d3720" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "eb4cf72ccae34016ad98345e0ecb4b44", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "08761b7d72f7496c8d436fdcd5f0aec6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalizeNode", + "m_ObjectId": "ec33494f65fd4560ab11b98b0a0779df", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Normalize", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -548.800048828125, + "y": -792.7999877929688, + "width": 208.0, + "height": 277.5999755859375 + } + }, + "m_Slots": [ + { + "m_Id": "1fe3f7a46b98463f818c2358db0e1f9f" + }, + { + "m_Id": "b7bdcd62b3b74d3495bcc33a0601a5dd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "ed4092a0c7814f0395327e028891adf2", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "725caf8fb2d540e186d77233c82a9b3f" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "eef3948df2a04110b7d2b0d20057158d", + "m_Id": 0, + "m_DisplayName": "Ambient Occlusion", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Occlusion", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.PositionNode", + "m_ObjectId": "f5369d513de540c499e52089f2ba54e5", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4.000014781951904, + "y": -470.39996337890627, + "width": 208.0, + "height": 312.79998779296877 + } + }, + "m_Slots": [ + { + "m_Id": "d5ae425236e94893891820e5e3c40ca7" + } + ], + "synonyms": [ + "location" + ], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Space": 0, + "m_PositionSource": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "fae4188776174bfd96996d1ba4c6e524", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "5f231264b9f846f18a806d612fd5f8f3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.AddNode", + "m_ObjectId": "fb0c5eee6294428cb9d391c2dcf386c4", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Add", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 278.4000549316406, + "y": -459.20001220703127, + "width": 207.99996948242188, + "height": 301.5999755859375 + } + }, + "m_Slots": [ + { + "m_Id": "b47aa6bb3b98433f8b3e52f618db8dad" + }, + { + "m_Id": "59285d84850c451fa3ed2a649113a270" + }, + { + "m_Id": "328aa733643a49f09558fd2ff280f0e8" + } + ], + "synonyms": [ + "addition", + "sum", + "plus" + ], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + diff --git a/Assets/Shaders/OutlineShaderGraph.shadergraph.meta b/Assets/Shaders/OutlineShaderGraph.shadergraph.meta new file mode 100644 index 0000000..a9e4d46 --- /dev/null +++ b/Assets/Shaders/OutlineShaderGraph.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 90bf882ff38c2db4cab99fcb79deaf9c +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index 317644e..8d75b91 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -14,9 +14,9 @@ TagManager: - UI - Projectile - + - Tower - - - - - + - Cell - - -