init assets and filemgt
This commit is contained in:
8
Assets/Project Files/Animations.meta
Normal file
8
Assets/Project Files/Animations.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0184338127739aa46af2a3cd28ca1521
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/Project Files/Animations/DogKnight.meta
Normal file
8
Assets/Project Files/Animations/DogKnight.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0a9cc1229d9b9b349817f2802b9061d6
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: acc95159d37cb8b49be0ca5f0bdc7fbe
|
||||
folderAsset: yes
|
||||
timeCreated: 1544585017
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
19841
Assets/Project Files/Animations/DogKnight/Animations/Attack01.anim
Normal file
19841
Assets/Project Files/Animations/DogKnight/Animations/Attack01.anim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6019f1b4a095b0b4396f5561a51fee89
|
||||
timeCreated: 1544605028
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
18296
Assets/Project Files/Animations/DogKnight/Animations/Attack02.anim
Normal file
18296
Assets/Project Files/Animations/DogKnight/Animations/Attack02.anim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: eccbae3cfc77ad245ade46e143aa3200
|
||||
timeCreated: 1544605040
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9955
Assets/Project Files/Animations/DogKnight/Animations/Defend.anim
Normal file
9955
Assets/Project Files/Animations/DogKnight/Animations/Defend.anim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cf357b5409b4ad54a82c45d7684564e1
|
||||
timeCreated: 1544607741
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
22076
Assets/Project Files/Animations/DogKnight/Animations/Die.anim
Normal file
22076
Assets/Project Files/Animations/DogKnight/Animations/Die.anim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5d190d8211c88a64281f7b90c69f3eb3
|
||||
timeCreated: 1544605073
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
20411
Assets/Project Files/Animations/DogKnight/Animations/DieRecover.anim
Normal file
20411
Assets/Project Files/Animations/DogKnight/Animations/DieRecover.anim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4a3671dbe6670524b8b6d9ad3664c179
|
||||
timeCreated: 1544607752
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
14327
Assets/Project Files/Animations/DogKnight/Animations/Dizzy.anim
Normal file
14327
Assets/Project Files/Animations/DogKnight/Animations/Dizzy.anim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 30d4fe7af77240a44b9354aaed8e5beb
|
||||
timeCreated: 1544607757
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
16757
Assets/Project Files/Animations/DogKnight/Animations/GetHit.anim
Normal file
16757
Assets/Project Files/Animations/DogKnight/Animations/GetHit.anim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1588532e68f51a040bda71c68cfab177
|
||||
timeCreated: 1544605085
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
10718
Assets/Project Files/Animations/DogKnight/Animations/Idle_Battle.anim
Normal file
10718
Assets/Project Files/Animations/DogKnight/Animations/Idle_Battle.anim
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b79ff7bb68348be479d3db6b7fe8a569
|
||||
timeCreated: 1544605090
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9f0e03164414016409d28995a128ba98
|
||||
timeCreated: 1544605137
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f0c8c1d913b359a428b42d53947d3e93
|
||||
timeCreated: 1544607284
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/Project Files/Animations/DogKnight/Animator.meta
Normal file
9
Assets/Project Files/Animations/DogKnight/Animator.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6bef64b21e5592046bb2b13e7fa806ee
|
||||
folderAsset: yes
|
||||
timeCreated: 1544585023
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,563 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!91 &9100000
|
||||
AnimatorController:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: DogControl
|
||||
serializedVersion: 5
|
||||
m_AnimatorParameters: []
|
||||
m_AnimatorLayers:
|
||||
- serializedVersion: 5
|
||||
m_Name: Base Layer
|
||||
m_StateMachine: {fileID: 1107905649089028422}
|
||||
m_Mask: {fileID: 0}
|
||||
m_Motions: []
|
||||
m_Behaviours: []
|
||||
m_BlendingMode: 0
|
||||
m_SyncedLayerIndex: -1
|
||||
m_DefaultWeight: 0
|
||||
m_IKPass: 0
|
||||
m_SyncedLayerAffectsTiming: 0
|
||||
m_Controller: {fileID: 9100000}
|
||||
--- !u!1101 &1101025243568558234
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102689691343913632}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.2
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 1
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101072195810957972
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102381193985536354}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.25
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 3
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101141846149638978
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102201852766415110}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 3
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101494123869838964
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102978981160464930}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.11524987
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 3.8331482
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101643552029966614
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102503426251137486}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.25
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 3
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101676475510292630
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102494443745526630}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.2
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 3
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101807178245991928
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102851807468560652}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.25
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 4
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101912574661031958
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102031868726192584}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.25
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 8
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101969349459206822
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102597142297889830}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 4
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1101 &1101985218390737874
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102841285716856984}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 4
|
||||
m_HasExitTime: 1
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1102 &1102031868726192584
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Idle_Battle
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101969349459206822}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: b79ff7bb68348be479d3db6b7fe8a569, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102201852766415110
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: DieRecover
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101025243568558234}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 4a3671dbe6670524b8b6d9ad3664c179, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102381193985536354
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Dizzy
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101643552029966614}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 30d4fe7af77240a44b9354aaed8e5beb, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102494443745526630
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: GetHit
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101072195810957972}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 1588532e68f51a040bda71c68cfab177, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102503426251137486
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Die
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101141846149638978}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 5d190d8211c88a64281f7b90c69f3eb3, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102597142297889830
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Attack01
|
||||
m_Speed: 1.2
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101985218390737874}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 6019f1b4a095b0b4396f5561a51fee89, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102689691343913632
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: WalkForwardBattle
|
||||
m_Speed: 1.2
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101807178245991928}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: f0c8c1d913b359a428b42d53947d3e93, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102841285716856984
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Attack02
|
||||
m_Speed: 1.2
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101494123869838964}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: eccbae3cfc77ad245ade46e143aa3200, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102851807468560652
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: RunForwardBattle
|
||||
m_Speed: 1.2
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101912574661031958}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 9f0e03164414016409d28995a128ba98, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &1102978981160464930
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Defend
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions:
|
||||
- {fileID: 1101676475510292630}
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: cf357b5409b4ad54a82c45d7684564e1, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1107 &1107905649089028422
|
||||
AnimatorStateMachine:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Base Layer
|
||||
m_ChildStates:
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102031868726192584}
|
||||
m_Position: {x: 216, y: -72, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102597142297889830}
|
||||
m_Position: {x: 456, y: -72, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102841285716856984}
|
||||
m_Position: {x: 456, y: 0, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102978981160464930}
|
||||
m_Position: {x: 456, y: 72, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102494443745526630}
|
||||
m_Position: {x: 456, y: 144, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102381193985536354}
|
||||
m_Position: {x: 708, y: -72, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102503426251137486}
|
||||
m_Position: {x: 708, y: 0, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102201852766415110}
|
||||
m_Position: {x: 708, y: 72, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102851807468560652}
|
||||
m_Position: {x: 708, y: 240, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102689691343913632}
|
||||
m_Position: {x: 708, y: 144, z: 0}
|
||||
m_ChildStateMachines: []
|
||||
m_AnyStateTransitions: []
|
||||
m_EntryTransitions: []
|
||||
m_StateMachineTransitions: {}
|
||||
m_StateMachineBehaviours: []
|
||||
m_AnyStatePosition: {x: 50, y: 20, z: 0}
|
||||
m_EntryPosition: {x: 50, y: 120, z: 0}
|
||||
m_ExitPosition: {x: 48, y: -132, z: 0}
|
||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||
m_DefaultState: {fileID: 1102031868726192584}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b60dc9aa529b314489f628aa3b57c470
|
||||
timeCreated: 1544605003
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/Project Files/Editor.meta
Normal file
8
Assets/Project Files/Editor.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 83e931d2f94c04743a27561800d0fd53
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 55628c1eb68aef5429888e5409ab2804
|
||||
folderAsset: yes
|
||||
timeCreated: 1508238419
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,184 @@
|
||||
// Fantasy Adventure Environment
|
||||
// Copyright Staggart Creations
|
||||
// staggart.xyz
|
||||
|
||||
using System;
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using UnityEditor;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
[CustomEditor(typeof(CliffAppearance))]
|
||||
public class CliffAppearanceInspector : Editor
|
||||
{
|
||||
CliffAppearance ca;
|
||||
private bool showHelp = false;
|
||||
|
||||
public SerializedProperty targetMaterials;
|
||||
public SerializedProperty objectColor;
|
||||
public SerializedProperty roughness;
|
||||
|
||||
public SerializedProperty detailNormalMap;
|
||||
public SerializedProperty detailNormalStrength;
|
||||
|
||||
public SerializedProperty globalColorMap;
|
||||
public SerializedProperty globalColor;
|
||||
public SerializedProperty globalTiling;
|
||||
|
||||
public SerializedProperty useCoverageShader;
|
||||
public SerializedProperty coverageColorMap;
|
||||
public SerializedProperty coverageNormalMap;
|
||||
public SerializedProperty coverageAmount;
|
||||
public SerializedProperty coverageTiling;
|
||||
public SerializedProperty coverageMap;
|
||||
|
||||
#if UNITY_EDITOR
|
||||
void OnEnable()
|
||||
{
|
||||
ca = (CliffAppearance)target;
|
||||
|
||||
targetMaterials = serializedObject.FindProperty("targetMaterials");
|
||||
|
||||
objectColor = serializedObject.FindProperty("objectColor");
|
||||
roughness = serializedObject.FindProperty("roughness");
|
||||
|
||||
detailNormalMap = serializedObject.FindProperty("detailNormalMap");
|
||||
detailNormalStrength = serializedObject.FindProperty("detailNormalStrength");
|
||||
|
||||
globalColorMap = serializedObject.FindProperty("globalColorMap");
|
||||
globalColor = serializedObject.FindProperty("globalColor");
|
||||
globalTiling = serializedObject.FindProperty("globalTiling");
|
||||
|
||||
useCoverageShader = serializedObject.FindProperty("useCoverageShader");
|
||||
coverageColorMap = serializedObject.FindProperty("coverageColorMap");
|
||||
coverageNormalMap = serializedObject.FindProperty("coverageNormalMap");
|
||||
coverageAmount = serializedObject.FindProperty("coverageAmount");
|
||||
coverageTiling = serializedObject.FindProperty("coverageTiling");
|
||||
coverageMap = serializedObject.FindProperty("coverageMap");
|
||||
|
||||
Undo.undoRedoPerformed += OnUndoRedo;
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
{
|
||||
Undo.undoRedoPerformed -= OnUndoRedo;
|
||||
}
|
||||
|
||||
private void OnUndoRedo()
|
||||
{
|
||||
ca.Apply();
|
||||
}
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
serializedObject.Update();
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
if (ca.cliffShader == null) EditorGUILayout.HelpBox("Cliff shader could not be found!", MessageType.Error);
|
||||
if (ca.cliffCoverageShader == null) EditorGUILayout.HelpBox("Cliff Coverage shader could not be found!", MessageType.Error);
|
||||
|
||||
DrawFields();
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
serializedObject.ApplyModifiedProperties();
|
||||
ca.Apply();
|
||||
}
|
||||
}
|
||||
|
||||
private void DrawFields()
|
||||
{
|
||||
DoHeader();
|
||||
|
||||
EditorGUILayout.PropertyField(targetMaterials, true);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
EditorGUILayout.LabelField("Coverage", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.PropertyField(useCoverageShader, new GUIContent("Enable"));
|
||||
|
||||
if (showHelp) EditorGUILayout.HelpBox("Covers the objects from the Y-axis", MessageType.Info);
|
||||
|
||||
if (ca.useCoverageShader)
|
||||
{
|
||||
EditorGUILayout.HelpBox("Currently this feature requires you to have the PigmentMapGenerator script on your terrain", MessageType.Info);
|
||||
|
||||
EditorGUILayout.PropertyField(coverageMap, new GUIContent("Coverage map"));
|
||||
|
||||
if (showHelp) EditorGUILayout.HelpBox("This grayscale map represents the coverage amount on the terrain \n\nThe bottom left of the texture equals the pivot point of the terrain", MessageType.Info);
|
||||
|
||||
EditorGUILayout.PropertyField(coverageColorMap, new GUIContent("Albedo"));
|
||||
EditorGUILayout.PropertyField(coverageNormalMap, new GUIContent("Normals"));
|
||||
|
||||
EditorGUILayout.PropertyField(coverageAmount, new GUIContent("Amount"));
|
||||
EditorGUILayout.PropertyField(coverageTiling, new GUIContent("Tiling"));
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.EndVertical();
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
EditorGUILayout.LabelField("Object", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.PropertyField(objectColor);
|
||||
EditorGUILayout.PropertyField(roughness);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.EndVertical();
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
EditorGUILayout.LabelField("Detail", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
if (showHelp) EditorGUILayout.HelpBox("Normal details visible up close", MessageType.Info);
|
||||
|
||||
|
||||
EditorGUILayout.PropertyField(detailNormalMap, new GUIContent("Detail normal map"));
|
||||
|
||||
EditorGUILayout.PropertyField(detailNormalStrength, new GUIContent("Normal strength"));
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.EndVertical();
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
EditorGUILayout.LabelField("Global", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
if (showHelp) EditorGUILayout.HelpBox("A tri-planar projected color map which tiles across all the objects seamlessly", MessageType.Info);
|
||||
|
||||
EditorGUILayout.PropertyField(globalColorMap, new GUIContent("Global color map"));
|
||||
|
||||
EditorGUILayout.PropertyField(globalColor, new GUIContent("Color"));
|
||||
EditorGUILayout.PropertyField(globalTiling, new GUIContent("Tiling"));
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.EndVertical();
|
||||
|
||||
GUIHelper.DrawFooter();
|
||||
}
|
||||
|
||||
private void DoHeader()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelp = GUILayout.Toggle(showHelp, "Toggle help", "Button");
|
||||
GUILayout.Label("FAE Cliff Appearance", GUIHelper.Header);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
if (showHelp) EditorGUILayout.HelpBox("This script allows you to edit multiple materials that use the FAE/Cliff shader. When it's loaded, the settings will be applied to them, so it acts as a sort of preset loader", MessageType.Info);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5d17a1f7b6b847d4f9499d0bfe216b82
|
||||
timeCreated: 1503911004
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,346 @@
|
||||
// Fantasy Adventure Environment
|
||||
// Staggart Creations
|
||||
// http://staggart.xyz
|
||||
|
||||
using UnityEngine;
|
||||
using System.IO;
|
||||
|
||||
using UnityEditor;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
public class FAE_Core : Editor
|
||||
{
|
||||
public const string ASSET_NAME = "Fantasy Adventure Environment";
|
||||
public const string ASSET_ABRV = "FAE";
|
||||
public const string ASSET_ID = "70354";
|
||||
|
||||
public const string PACKAGE_VERSION = "20174";
|
||||
public static string INSTALLED_VERSION = "1.5.5";
|
||||
public const string MIN_UNITY_VERSION = "2019.3";
|
||||
|
||||
public static string DOC_URL = "http://staggart.xyz/unity/fantasy-adventure-environment/fae-documentation/";
|
||||
public static string FORUM_URL = "https://forum.unity3d.com/threads/486102";
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
private const string UniversalShaderPackageGUID = "7c884420a5dfbaa4db9afe42d366b843";
|
||||
#endif
|
||||
|
||||
public static void OpenStorePage()
|
||||
{
|
||||
Application.OpenURL("com.unity3d.kharma:content/" + ASSET_ID);
|
||||
}
|
||||
|
||||
public static string PACKAGE_ROOT_FOLDER
|
||||
{
|
||||
get { return SessionState.GetString(ASSET_ABRV + "_BASE_FOLDER", string.Empty); }
|
||||
set { SessionState.SetString(ASSET_ABRV + "_BASE_FOLDER", value); }
|
||||
}
|
||||
|
||||
public static string GetRootFolder()
|
||||
{
|
||||
//Get script path
|
||||
string[] scriptGUID = AssetDatabase.FindAssets("FAE_Core t:script");
|
||||
string scriptFilePath = AssetDatabase.GUIDToAssetPath(scriptGUID[0]);
|
||||
|
||||
//Truncate to get relative path
|
||||
PACKAGE_ROOT_FOLDER = scriptFilePath.Replace("/Editor/FAE_Core.cs", string.Empty);
|
||||
|
||||
#if FAE_DEV
|
||||
Debug.Log("<b>Package root</b> " + PACKAGE_ROOT_FOLDER);
|
||||
#endif
|
||||
|
||||
return PACKAGE_ROOT_FOLDER;
|
||||
}
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
public enum ShaderInstallation
|
||||
{
|
||||
BuiltIn,
|
||||
UniversalRP
|
||||
}
|
||||
|
||||
public class RunOnImport : AssetPostprocessor
|
||||
{
|
||||
static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
|
||||
{
|
||||
foreach (string str in importedAssets)
|
||||
{
|
||||
if (str.Contains("FAE_Core.cs"))
|
||||
{
|
||||
GetRootFolder();
|
||||
|
||||
string urpFolder = FAE_Core.PACKAGE_ROOT_FOLDER + "/Shaders/URP/";
|
||||
|
||||
var info = new DirectoryInfo(urpFolder);
|
||||
FileInfo[] fileInfo = info.GetFiles();
|
||||
|
||||
//Only one file in the folder, shaders not yet unpacked
|
||||
if (fileInfo.Length <= 2 && UnityEngine.Rendering.GraphicsSettings.renderPipelineAsset != null)
|
||||
{
|
||||
if (EditorUtility.DisplayDialog("Fantasy Adventure Environment", "The Universal Render Pipeline is in use.\n\nURP compatible shaders can be unpacked and materials upgraded through the \"Help\" window after importing has finished\n\nErrors about _GrabTexture can safely be ignored.", "OK"))
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private const string urpName = "Universal Render Pipeline";
|
||||
|
||||
//Look up table to finding pipeline shader variants
|
||||
private static Dictionary<string, string> ShaderRelations = new Dictionary<string, string>
|
||||
{
|
||||
//Peartickles
|
||||
//Since 7.4.1, the legacy particle shaders will work
|
||||
//{ "Legacy Shaders/Particles/Alpha Blended", urpName + "/Particles/Simple Lit" },
|
||||
|
||||
//No longer needed to convert particle materials. Barely works, so particle materials are now packaged for URP
|
||||
//{ "Particles/Alpha Blended", urpName + "/Particles/Simple Lit" },
|
||||
//{ "Mobile/Particles/Alpha Blended", urpName + "/Particles/Simple Lit" },
|
||||
//{ "Particles/Standard Surface", urpName + "/Particles/Simple Lit" },
|
||||
//{ "Particles/Standard Unlit", urpName + "/Particles/Unlit" },
|
||||
|
||||
{ "Standard", urpName + "/Lit" },
|
||||
{ "Skybox/Cubemap","Skybox/Cubemap" },
|
||||
{ "Nature/Terrain/Standard", urpName + "/Terrain/Lit" },
|
||||
|
||||
{ "FAE/Fog sheet", urpName + "/FAE/FAE_FogSheet" },
|
||||
{ "FAE/Sunshaft", urpName + "/FAE/FAE_Sunshaft" },
|
||||
//{ "FAE/Sunshaft particle", urpName + "/FAE/FAE_SunshaftParticle" },
|
||||
|
||||
{ "FAE/Cliff", urpName + "/FAE/FAE_Cliff" },
|
||||
{ "FAE/Cliff coverage", urpName + "/FAE/FAE_Cliff_Coverage" },
|
||||
|
||||
{ "FAE/Water", urpName + "/FAE/FAE_Water" },
|
||||
{ "FAE/Waterfall", urpName + "/FAE/FAE_Waterfall" },
|
||||
{ "FAE/Waterfall foam", urpName + "/FAE/FAE_WaterfallFoam" },
|
||||
|
||||
{ "FAE/Foliage", urpName+ "/FAE/FAE_Foliage" },
|
||||
{ "FAE/Tree Branch", urpName+ "/FAE/FAE_TreeBranch" },
|
||||
{ "FAE/Tree Trunk", urpName+ "/FAE/FAE_TreeTrunk" },
|
||||
{ "FAE/Tree Billboard", urpName+ "/FAE/FAE_TreeBillboard" }
|
||||
};
|
||||
|
||||
[MenuItem("Edit/Render Pipeline/Fantasy Adventure Environment/Revert to Built-in")]
|
||||
public static void InstallBuiltIn()
|
||||
{
|
||||
InstallShaders(ShaderInstallation.BuiltIn);
|
||||
}
|
||||
|
||||
[MenuItem("Edit/Render Pipeline/Fantasy Adventure Environment/Convert to URP")]
|
||||
public static void InstallURP()
|
||||
{
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER && FAE_DEV
|
||||
SwitchRenderPipeline.SetPipeline(ShaderInstallation.UniversalRP);
|
||||
#endif
|
||||
|
||||
if (UnityEngine.Rendering.GraphicsSettings.renderPipelineAsset == null)
|
||||
{
|
||||
if (EditorUtility.DisplayDialog("Fantasy Adventure Environment", "No URP asset has been assigned in the Graphics settings. URP should be set up, before converting the package.", "Show me", "Cancel"))
|
||||
{
|
||||
SettingsService.OpenProjectSettings("Project/Graphics");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
InstallShaders(ShaderInstallation.UniversalRP);
|
||||
}
|
||||
|
||||
public static void InstallShaders(ShaderInstallation config)
|
||||
{
|
||||
string guid = UniversalShaderPackageGUID;
|
||||
string packagePath = AssetDatabase.GUIDToAssetPath(guid);
|
||||
|
||||
GetRootFolder();
|
||||
|
||||
//TODO: Package up current shaders
|
||||
if (config == ShaderInstallation.BuiltIn)
|
||||
{
|
||||
//AssetDatabase.ExportPackage(PACKAGE_ROOT_FOLDER + "/Shaders/URP", packagePath, ExportPackageOptions.Default | ExportPackageOptions.Recurse);
|
||||
|
||||
UpgradeMaterials(config);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (packagePath == string.Empty)
|
||||
{
|
||||
Debug.LogError("URP Shader/material package with the GUID: " + guid + ". Could not be found in the project, was it changed or not imported? It should be located in <i>" + PACKAGE_ROOT_FOLDER + "/Shaders/URP</i>");
|
||||
return;
|
||||
}
|
||||
AssetDatabase.ImportPackage(packagePath, false);
|
||||
AssetDatabase.importPackageCompleted += new AssetDatabase.ImportPackageCallback(ImportURPCallback);
|
||||
}
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER && FAE_DEV
|
||||
SwitchRenderPipeline.SetPipeline(config);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
static void ImportURPCallback(string packageName)
|
||||
{
|
||||
AssetDatabase.Refresh();
|
||||
|
||||
UpgradeMaterials(ShaderInstallation.UniversalRP);
|
||||
|
||||
AssetDatabase.importPackageCompleted -= ImportURPCallback;
|
||||
}
|
||||
|
||||
public static void UpgradeMaterials(ShaderInstallation config)
|
||||
{
|
||||
string[] GUIDs = AssetDatabase.FindAssets("t: material", new string[] { PACKAGE_ROOT_FOLDER });
|
||||
|
||||
int count = 0;
|
||||
if (GUIDs.Length > 0)
|
||||
{
|
||||
Material[] mats = new Material[GUIDs.Length];
|
||||
|
||||
for (int i = 0; i < mats.Length; i++)
|
||||
{
|
||||
EditorUtility.DisplayProgressBar("Material configuration", "Converting FAE materials for " + config, (float)i / mats.Length);
|
||||
string path = AssetDatabase.GUIDToAssetPath(GUIDs[i]);
|
||||
|
||||
mats[i] = (Material)AssetDatabase.LoadAssetAtPath(path, typeof(Material));
|
||||
|
||||
string dest = string.Empty;
|
||||
string source = mats[i].shader.name;
|
||||
bool matched = ShaderRelations.TryGetValue(source, out dest);
|
||||
|
||||
if (config == ShaderInstallation.BuiltIn)
|
||||
{
|
||||
//Get key by value (inverse lookup)
|
||||
dest = ShaderRelations.FirstOrDefault(x => x.Value == source).Key;
|
||||
|
||||
matched = dest != null;
|
||||
}
|
||||
|
||||
if (config == ShaderInstallation.UniversalRP)
|
||||
{
|
||||
//Set grass to foliage shader
|
||||
if (source == "FAE/Grass")
|
||||
{
|
||||
dest = urpName + "/FAE/FAE_Foliage";
|
||||
matched = true;
|
||||
}
|
||||
}
|
||||
if (config == ShaderInstallation.BuiltIn)
|
||||
{
|
||||
//Set foliage to grass shader
|
||||
if (mats[i].name.Contains("Grass"))
|
||||
{
|
||||
dest = "FAE/Grass";
|
||||
matched = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (source == null && dest == null) continue;
|
||||
if (string.Equals(dest, source)) continue;
|
||||
|
||||
if (matched)
|
||||
{
|
||||
|
||||
if (config == ShaderInstallation.UniversalRP)
|
||||
{
|
||||
Texture mainTex = null;
|
||||
if (mats[i].HasProperty("_MainTex")) mainTex = mats[i].GetTexture("_MainTex");
|
||||
|
||||
if (mats[i].HasProperty("_Color")) mats[i].SetColor("_BaseColor", mats[i].GetColor("_Color"));
|
||||
if (mats[i].HasProperty("_TintColor")) mats[i].SetColor("_BaseColor", mats[i].GetColor("_TintColor"));
|
||||
|
||||
//Grass to foliage switch
|
||||
if (mats[i].HasProperty("_ColorTop")) mats[i].SetColor("_Color", mats[i].GetColor("_ColorTop"));
|
||||
|
||||
if (mats[i].HasProperty("_MainTex"))
|
||||
{
|
||||
mats[i].SetTexture("_BaseMap", mainTex);
|
||||
}
|
||||
|
||||
if (mats[i].name.Contains("Grass"))
|
||||
{
|
||||
mats[i].SetFloat("_MaxWindStrength", 0.2f);
|
||||
mats[i].SetFloat("_AmbientOcclusion", 0.15f);
|
||||
}
|
||||
|
||||
mats[i].shader = Shader.Find(dest);
|
||||
|
||||
if (mainTex) mats[i].SetTexture("_BaseMap", mainTex);
|
||||
|
||||
}
|
||||
|
||||
if (mats[i].HasProperty("_TransmissionAmount"))
|
||||
{
|
||||
mats[i].SetFloat("_TransmissionAmount", Mathf.Clamp(mats[i].GetFloat("_TransmissionAmount"), 0, 10));
|
||||
}
|
||||
|
||||
//Debug.Log("src: " + source + " dst:" + dest);
|
||||
mats[i].shader = Shader.Find(dest);
|
||||
|
||||
EditorUtility.SetDirty(mats[i]);
|
||||
count++;
|
||||
}
|
||||
else
|
||||
{
|
||||
#if FAE_DEV
|
||||
Debug.LogError("No matching " + config + " shader could be found for " + mats[i].shader.name);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
EditorUtility.ClearProgressBar();
|
||||
|
||||
Debug.Log(count + " materials were configured for the " + config + " render pipeline");
|
||||
|
||||
AssetDatabase.Refresh();
|
||||
AssetDatabase.SaveAssets();
|
||||
|
||||
if (config == ShaderInstallation.UniversalRP)
|
||||
{
|
||||
delayTime = (float)EditorApplication.timeSinceStartup + renameDelaySec;
|
||||
EditorApplication.update += PostURPConversion;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static float delayTime;
|
||||
private const float renameDelaySec = 1f;
|
||||
|
||||
private static void PostURPConversion()
|
||||
{
|
||||
//Wait 1s
|
||||
if (EditorApplication.timeSinceStartup >= delayTime)
|
||||
{
|
||||
EditorApplication.update -= PostURPConversion;
|
||||
|
||||
//If any controllers are present in the open scene, these need to be nudged to apply the correct shaders
|
||||
CliffAppearance[] cliffControllers = GameObject.FindObjectsOfType<CliffAppearance>();
|
||||
for (int i = 0; i < cliffControllers.Length; i++)
|
||||
{
|
||||
cliffControllers[i].OnEnable();
|
||||
}
|
||||
|
||||
string[] shaderFileGUIDS = AssetDatabase.FindAssets("t: Shader", new[] {PACKAGE_ROOT_FOLDER + "/Shaders/URP"});
|
||||
|
||||
//Force a re-import of the Shader Graphs, depending on the angle of the sun, and the orbit of Jupiter, they fail to reference the FAE.hlsl file if imported last
|
||||
for (int i = 0; i < shaderFileGUIDS.Length; i++)
|
||||
{
|
||||
AssetDatabase.ImportAsset(AssetDatabase.GUIDToAssetPath(shaderFileGUIDS[i]));
|
||||
}
|
||||
|
||||
if (EditorUtility.DisplayDialog("Fantasy Adventure Environment", "Ensure the Depth/Opaque Texture options are enabled in your pipeline settings, otherwise the water isn't visible in the game view", "Show me", "OK"))
|
||||
{
|
||||
Selection.activeObject = UnityEngine.Rendering.GraphicsSettings.renderPipelineAsset;
|
||||
}
|
||||
|
||||
AssetDatabase.SaveAssets();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}//namespace
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0c8c137adabdd2247bf1ed12c029b1dc
|
||||
timeCreated: 1521298829
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,230 @@
|
||||
// Fantasy Adventure Environment
|
||||
// Copyright Staggart Creations
|
||||
// staggart.xyz
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
public class FoliageShaderGUI : ShaderGUI
|
||||
{
|
||||
|
||||
MaterialProperty _MaskClipValue;
|
||||
|
||||
//Main maps
|
||||
MaterialProperty _MainTex;
|
||||
MaterialProperty _BumpMap;
|
||||
MaterialProperty _Color;
|
||||
|
||||
//Color
|
||||
MaterialProperty _WindTint;
|
||||
MaterialProperty _AmbientOcclusion;
|
||||
MaterialProperty _TransmissionSize;
|
||||
MaterialProperty _TransmissionAmount;
|
||||
|
||||
//Animation
|
||||
MaterialProperty _MaxWindStrength;
|
||||
MaterialProperty _GlobalWindMotion;
|
||||
MaterialProperty _LeafFlutter;
|
||||
MaterialProperty _WindAmplitudeMultiplier;
|
||||
MaterialProperty _WindSwinging;
|
||||
MaterialProperty _BendingInfluence;
|
||||
|
||||
MaterialEditor m_MaterialEditor;
|
||||
private Material targetMat;
|
||||
|
||||
//Meta
|
||||
bool showHelp;
|
||||
bool showHelpColor;
|
||||
bool showHelpAnimation;
|
||||
|
||||
bool hasWindController;
|
||||
WindController windController;
|
||||
|
||||
GUIContent mainTexName = new GUIContent("Diffuse", "Diffuse (RGB) and Transparency (A)");
|
||||
GUIContent normalMapName = new GUIContent("Normal Map");
|
||||
private bool visualizeVectors;
|
||||
|
||||
public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] props)
|
||||
{
|
||||
if (windController == null) LocateWindController();
|
||||
|
||||
//Receive
|
||||
visualizeVectors = WindController._visualizeVectors;
|
||||
|
||||
this.m_MaterialEditor = materialEditor;
|
||||
targetMat = (Material)materialEditor.target;
|
||||
|
||||
this.FindProperties(props);
|
||||
//Style similar to Standard shader
|
||||
m_MaterialEditor.SetDefaultGUIWidths();
|
||||
m_MaterialEditor.UseDefaultMargins();
|
||||
EditorGUIUtility.labelWidth = 0f;
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
if (UnityEngine.Rendering.GraphicsSettings.currentRenderPipeline != null &&
|
||||
!targetMat.shader.name.Contains("Universal Render Pipeline"))
|
||||
{
|
||||
EditorGUILayout.HelpBox("A render pipeline is in use, but this material is using a shader for the Built-in render pipeline.\n\nShaders and materials can be converted through the Help window", MessageType.Error);
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
#endif
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
//Draw fields
|
||||
DoHeader();
|
||||
|
||||
DoMapsArea();
|
||||
DoColorArea();
|
||||
DoAnimationArea();
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
//Send
|
||||
WindController.VisualizeVectors(visualizeVectors);
|
||||
}
|
||||
|
||||
GUIHelper.DrawExtraFields(m_MaterialEditor);
|
||||
GUIHelper.DrawFooter();
|
||||
}
|
||||
|
||||
void DoHeader()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelp = GUILayout.Toggle(showHelp, "Toggle help", "Button");
|
||||
GUILayout.Label("FAE Foliage Shader", GUIHelper.Header);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
if (showHelp) EditorGUILayout.HelpBox("Please bear in mind, when using custom meshes, that most shader feature require the tips of the mesh to be vertex colored.\n\nBaking Ambient Occlusion into the vertex colors will yield correct results.", MessageType.Warning);
|
||||
}
|
||||
|
||||
void DoMapsArea()
|
||||
{
|
||||
GUILayout.Label("Main maps", EditorStyles.boldLabel);
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.PrefixLabel(_MaskClipValue.displayName);
|
||||
_MaskClipValue.floatValue = EditorGUILayout.Slider(_MaskClipValue.floatValue, 0f, 1f);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
this.m_MaterialEditor.TexturePropertySingleLine(mainTexName, this._MainTex);
|
||||
if(targetMat.HasProperty("_BumpMap"))this.m_MaterialEditor.TexturePropertySingleLine(normalMapName, this._BumpMap);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void DoColorArea()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpColor = GUILayout.Toggle(showHelpColor, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Color", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
m_MaterialEditor.ShaderProperty(_Color, _Color.displayName);
|
||||
m_MaterialEditor.ShaderProperty(_AmbientOcclusion, _AmbientOcclusion.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Darkens the areas of the mesh where vertex colors are applied", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_TransmissionAmount, _TransmissionAmount.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Simulates light passing through the material. This will have no effect on short grass.", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_TransmissionSize, _TransmissionSize.displayName);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void DoAnimationArea()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpAnimation = GUILayout.Toggle(showHelpAnimation, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Wind animation", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
if (UnityEngine.Rendering.GraphicsSettings.currentRenderPipeline == null)
|
||||
{
|
||||
#endif
|
||||
visualizeVectors = EditorGUILayout.Toggle("Visualize wind", visualizeVectors);
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
}
|
||||
#endif
|
||||
|
||||
#if !VEGETATION_STUDIO_PRO //VS Pro has an FAE wind controller
|
||||
if (!hasWindController)
|
||||
{
|
||||
EditorGUILayout.HelpBox("No \"WindController\" component was found in your scene. Please add this script to an empty GameObject\n\nA prefab can be found in the Prefabs/Effects folder.", MessageType.Warning);
|
||||
EditorGUI.BeginDisabledGroup(true);
|
||||
}
|
||||
#else
|
||||
EditorGUI.BeginDisabledGroup(false);
|
||||
#endif
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Toggle a visualisation of the wind vectors on all the objects that use FAE shaders featuring wind.\n\nThis allows you to more clearly see the effects of the settings.", MessageType.None);
|
||||
|
||||
m_MaterialEditor.ShaderProperty(_MaxWindStrength, _MaxWindStrength.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Determines how much influence the wind has on the object", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_GlobalWindMotion, _GlobalWindMotion.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Back and forth motion", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_LeafFlutter, _LeafFlutter.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Local wind turbulence", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_WindAmplitudeMultiplier, _WindAmplitudeMultiplier.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Multiply the wind amplitude for this material.Essentally this is the size of the wind waves.", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_WindSwinging, _WindSwinging.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Higher values mean the object always sways back against the wind direction", MessageType.None);
|
||||
|
||||
if (targetMat.HasProperty("_WindTint"))
|
||||
{
|
||||
m_MaterialEditor.ShaderProperty(_WindTint, _WindTint.displayName);
|
||||
if (showHelpAnimation)
|
||||
EditorGUILayout.HelpBox("Vizualises the wind by adding a slight tint, either dark (<0) or light (>0)", MessageType.None);
|
||||
}
|
||||
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Multiply the wind amplitude for this material. Essentally this is the size of the wind waves.", MessageType.None);
|
||||
if (!hasWindController)
|
||||
{
|
||||
EditorGUI.EndDisabledGroup();
|
||||
}
|
||||
m_MaterialEditor.ShaderProperty(_BendingInfluence, _BendingInfluence.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Determines how much influence the FoliageBender script has on the object", MessageType.None);
|
||||
|
||||
if (hasWindController && showHelpAnimation)
|
||||
{
|
||||
GUIHelper.DrawWindInfo();
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void LocateWindController()
|
||||
{
|
||||
//Debug.Log("Searching scene for WindController script");
|
||||
windController = GameObject.FindObjectOfType<WindController>();
|
||||
hasWindController = (windController) ? true : false;
|
||||
}
|
||||
|
||||
public void FindProperties(MaterialProperty[] props)
|
||||
{
|
||||
//Rendering
|
||||
#if UNITY_2017_1_OR_NEWER
|
||||
_MaskClipValue = FindProperty("_Cutoff", props);
|
||||
#else
|
||||
_MaskClipValue = FindProperty("_Cutoff", props);
|
||||
#endif
|
||||
|
||||
//Main maps
|
||||
_MainTex = FindProperty("_MainTex", props);
|
||||
if(targetMat.HasProperty("_BumpMap")) _BumpMap = FindProperty("_BumpMap", props);
|
||||
|
||||
//Color
|
||||
if(targetMat.HasProperty("_WindTint")) _WindTint = FindProperty("_WindTint", props);
|
||||
_Color = FindProperty("_Color", props);
|
||||
_AmbientOcclusion = FindProperty("_AmbientOcclusion", props);
|
||||
_TransmissionSize = FindProperty("_TransmissionSize", props);
|
||||
_TransmissionAmount = FindProperty("_TransmissionAmount", props);
|
||||
|
||||
//Animation
|
||||
_MaxWindStrength = FindProperty("_MaxWindStrength", props);
|
||||
_GlobalWindMotion = FindProperty("_GlobalWindMotion", props);
|
||||
_LeafFlutter = FindProperty("_LeafFlutter", props);
|
||||
_WindAmplitudeMultiplier = FindProperty("_WindAmplitudeMultiplier", props);
|
||||
_WindSwinging = FindProperty("_WindSwinging", props);
|
||||
_BendingInfluence = FindProperty("_BendingInfluence", props);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 30049f26bb0234d408a88ce9718c6d89
|
||||
timeCreated: 1507713339
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,75 @@
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
/// <summary>
|
||||
/// Helper class to centralize commonly used fields and styles used in inspectors
|
||||
/// </summary>
|
||||
public class GUIHelper : Editor
|
||||
{
|
||||
/// <summary>Draws the Staggart Creations footer</summary>
|
||||
public static void DrawFooter()
|
||||
{
|
||||
GUILayout.Label("- Staggart Creations -", new GUIStyle(EditorStyles.centeredGreyMiniLabel)
|
||||
{
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
wordWrap = true,
|
||||
fontSize = 12
|
||||
});
|
||||
}
|
||||
|
||||
/// <summary>Displays a box with the wind values from the current WindController</summary>
|
||||
public static void DrawWindInfo()
|
||||
{
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.LabelField("Global wind settings", EditorStyles.boldLabel);
|
||||
GUIHelper.ProgressBar(WindController._windStrength, 1f, "Strength");
|
||||
GUIHelper.ProgressBar(WindController._windAmplitude, 32f, "Amplitude");
|
||||
EditorGUILayout.Space();
|
||||
|
||||
}
|
||||
|
||||
private static void ProgressBar(float value, float maxValue, string label)
|
||||
{
|
||||
Rect rect = GUILayoutUtility.GetRect(6, 18, "TextField");
|
||||
EditorGUI.ProgressBar(rect, value / maxValue, label + " (" + value + " / " + maxValue + ")");
|
||||
}
|
||||
|
||||
/// <summary>If the supported Unity version is used, a field for setting the Render Queue and GPU Instancing options is drawn</summary>
|
||||
public static void DrawExtraFields(MaterialEditor m_MaterialEditor)
|
||||
{
|
||||
#if UNITY_5_5_OR_NEWER
|
||||
m_MaterialEditor.RenderQueueField();
|
||||
#endif
|
||||
|
||||
#if UNITY_5_6_OR_NEWER
|
||||
m_MaterialEditor.EnableInstancingField();
|
||||
#endif
|
||||
}
|
||||
|
||||
//Styles
|
||||
private static GUIStyle _Header;
|
||||
public static GUIStyle Header
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_Header == null)
|
||||
{
|
||||
_Header = new GUIStyle(EditorStyles.centeredGreyMiniLabel)
|
||||
{
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
wordWrap = true,
|
||||
fontSize = 12
|
||||
};
|
||||
}
|
||||
|
||||
return _Header;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: faa26d0d74c9e7e4196d401cd5c41108
|
||||
timeCreated: 1515666192
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,352 @@
|
||||
// Fantasy Adventure Environment
|
||||
// Copyright Staggart Creations
|
||||
// staggart.xyz
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
[ExecuteInEditMode]
|
||||
public class GrassShaderGUI : ShaderGUI
|
||||
{
|
||||
|
||||
MaterialProperty _MaskClipValue;
|
||||
|
||||
//Main maps
|
||||
MaterialProperty _MainTex;
|
||||
MaterialProperty _BumpMap;
|
||||
|
||||
//Color
|
||||
MaterialProperty _ColorTop;
|
||||
MaterialProperty _ColorBottom;
|
||||
MaterialProperty _ColorVariation;
|
||||
MaterialProperty _AmbientOcclusion;
|
||||
MaterialProperty _TransmissionSize;
|
||||
MaterialProperty _TransmissionAmount;
|
||||
|
||||
//Animation
|
||||
MaterialProperty _MaxWindStrength;
|
||||
MaterialProperty _WindSwinging;
|
||||
MaterialProperty _WindAmplitudeMultiplier;
|
||||
MaterialProperty _BendingInfluence;
|
||||
|
||||
//VS Touch Bend
|
||||
#if TOUCH_REACT
|
||||
MaterialProperty _VS_TOUCHBEND;
|
||||
MaterialProperty _BendingTint;
|
||||
#endif
|
||||
|
||||
//Heightmap
|
||||
MaterialProperty _HeightmapInfluence;
|
||||
MaterialProperty _MinHeight;
|
||||
MaterialProperty _MaxHeight;
|
||||
|
||||
//Pigment map
|
||||
MaterialProperty _PigmentMapInfluence;
|
||||
MaterialProperty _PigmentMapHeight;
|
||||
|
||||
MaterialEditor m_MaterialEditor;
|
||||
|
||||
//Meta
|
||||
bool showHelp;
|
||||
bool showHelpColor;
|
||||
bool showHelpAnimation;
|
||||
bool showHelpBending;
|
||||
bool showHelpHeightmap;
|
||||
bool showHelpPigmentmap;
|
||||
#if UNITY_5_5_OR_NEWER
|
||||
bool hasPigmentMap = true;
|
||||
#endif
|
||||
bool hasWindController;
|
||||
WindController windController;
|
||||
|
||||
GUIContent mainTexName = new GUIContent("Diffuse", "Diffuse (RGB) and Transparency (A)");
|
||||
GUIContent normalMapName = new GUIContent("Normal Map");
|
||||
private bool visualizeVectors;
|
||||
|
||||
public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] props)
|
||||
{
|
||||
if (windController == null) LocateWindController();
|
||||
this.FindProperties(props);
|
||||
|
||||
//Receive
|
||||
visualizeVectors = WindController._visualizeVectors;
|
||||
|
||||
this.m_MaterialEditor = materialEditor;
|
||||
|
||||
//Style similar to Standard shader
|
||||
m_MaterialEditor.SetDefaultGUIWidths();
|
||||
m_MaterialEditor.UseDefaultMargins();
|
||||
EditorGUIUtility.labelWidth = 0f;
|
||||
|
||||
//GetGlobalTexture is only available since Unity 5.5
|
||||
#if UNITY_5_5_OR_NEWER
|
||||
|
||||
hasPigmentMap = (Shader.GetGlobalTexture("_PigmentMap")) ? true : false;
|
||||
#endif
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
//Draw fields
|
||||
DoHeader();
|
||||
|
||||
DoMapsArea();
|
||||
DoColorArea();
|
||||
DoAnimationArea();
|
||||
DoBendingArea();
|
||||
DoHeightmapArea();
|
||||
DoPigmentMapArea();
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
//Send
|
||||
WindController.VisualizeVectors(visualizeVectors);
|
||||
}
|
||||
|
||||
GUIHelper.DrawExtraFields(m_MaterialEditor);
|
||||
GUIHelper.DrawFooter();
|
||||
}
|
||||
|
||||
void DoHeader()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelp = GUILayout.Toggle(showHelp, "Toggle help", "Button");
|
||||
GUILayout.Label("FAE Grass Shader", GUIHelper.Header);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
if (showHelp) EditorGUILayout.HelpBox("Please bear in mind, when using custom meshes, that most shader feature require the top of the mesh to be vertex colored.", MessageType.Warning);
|
||||
}
|
||||
|
||||
void DoMapsArea()
|
||||
{
|
||||
GUILayout.Label("Main maps", EditorStyles.boldLabel);
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.PrefixLabel(_MaskClipValue.displayName);
|
||||
_MaskClipValue.floatValue = EditorGUILayout.Slider(_MaskClipValue.floatValue, 0f, 1f);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
this.m_MaterialEditor.TexturePropertySingleLine(mainTexName, this._MainTex);
|
||||
this.m_MaterialEditor.TexturePropertySingleLine(normalMapName, this._BumpMap);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void DoColorArea()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpColor = GUILayout.Toggle(showHelpColor, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Color", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
EditorGUI.BeginDisabledGroup(_PigmentMapInfluence.floatValue == 1);
|
||||
m_MaterialEditor.ShaderProperty(_ColorTop, "Top");
|
||||
m_MaterialEditor.ShaderProperty(_ColorBottom, "Bottom");
|
||||
EditorGUI.EndDisabledGroup();
|
||||
|
||||
if (_PigmentMapInfluence.floatValue == 1)
|
||||
{
|
||||
EditorGUILayout.HelpBox("These colors are disabled because the pigment map influence value is set to 1, so they would have no effect", MessageType.None);
|
||||
}
|
||||
|
||||
|
||||
m_MaterialEditor.ShaderProperty(_ColorVariation, _ColorVariation.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Vizualises the wind by adding a slight white tint. When the wind strength is set 0, this effect doesn't appear", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_AmbientOcclusion, _AmbientOcclusion.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Darkens the areas of the mesh where vertex colors are applied", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_TransmissionAmount, _TransmissionAmount.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Simulates light passing through the material. This will have no effect on short grass.", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_TransmissionSize, _TransmissionSize.displayName);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void DoAnimationArea()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpAnimation = GUILayout.Toggle(showHelpAnimation, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Wind animation", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
visualizeVectors = EditorGUILayout.Toggle("Visualize wind", visualizeVectors);
|
||||
|
||||
#if !VEGETATION_STUDIO_PRO //VS Pro has an FAE wind controller
|
||||
if (!hasWindController)
|
||||
{
|
||||
EditorGUILayout.HelpBox("No \"WindController\" component was found in your scene. Please add this script to an empty GameObject\n\nA prefab can be found in the Prefabs/Effects folder.", MessageType.Warning);
|
||||
EditorGUI.BeginDisabledGroup(true);
|
||||
}
|
||||
#else
|
||||
EditorGUI.BeginDisabledGroup(false);
|
||||
#endif
|
||||
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Toggle a visualisation of the wind vectors on all the objects that use FAE shaders featuring wind.\n\nThis allows you to more clearly see the effects of the settings.", MessageType.None);
|
||||
|
||||
m_MaterialEditor.ShaderProperty(_MaxWindStrength, _MaxWindStrength.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Determines how much influence the wind has on the object", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_WindSwinging, _WindSwinging.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Higher values mean the object always sways back against the wind direction", MessageType.None);
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(_WindAmplitudeMultiplier.displayName);
|
||||
_WindAmplitudeMultiplier.floatValue = EditorGUILayout.FloatField(_WindAmplitudeMultiplier.floatValue, GUILayout.Width(65f));
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Multiply the wind amplitude for this material. Essentally this is the size of the wind waves.", MessageType.None);
|
||||
if (!hasWindController)
|
||||
{
|
||||
EditorGUI.EndDisabledGroup();
|
||||
}
|
||||
|
||||
if (hasWindController && showHelpAnimation)
|
||||
{
|
||||
GUIHelper.DrawWindInfo();
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
}
|
||||
|
||||
void DoBendingArea()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpBending = GUILayout.Toggle(showHelpBending, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Bending", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
#if TOUCH_REACT
|
||||
m_MaterialEditor.ShaderProperty(_VS_TOUCHBEND, new GUIContent("Use Vegetation Studio TouchBend"));
|
||||
if (showHelpBending) EditorGUILayout.HelpBox("Utilize Vegetation Studio's TouchBendSystem", MessageType.None);
|
||||
|
||||
if (_VS_TOUCHBEND.floatValue == 1)
|
||||
{
|
||||
m_MaterialEditor.ShaderProperty(_BendingTint, _BendingTint.displayName);
|
||||
if (showHelpBending) EditorGUILayout.HelpBox("Darken the grass where it is bending", MessageType.None);
|
||||
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
m_MaterialEditor.ShaderProperty(_BendingInfluence, _BendingInfluence.displayName);
|
||||
if (showHelpBending) EditorGUILayout.HelpBox("Determines how much influence the FoliageBender script has on the object", MessageType.None);
|
||||
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void LocateWindController()
|
||||
{
|
||||
//Debug.Log("Searching scene for WindController script");
|
||||
windController = GameObject.FindObjectOfType<WindController>();
|
||||
hasWindController = (windController) ? true : false;
|
||||
}
|
||||
|
||||
void DoHeightmapArea()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpHeightmap = GUILayout.Toggle(showHelpHeightmap, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Heightmap", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
#if UNITY_5_5_OR_NEWER
|
||||
if(!hasPigmentMap)
|
||||
{
|
||||
EditorGUILayout.HelpBox("No height map was found, please add the PigmentMapGenerator script to your terrain to enable these features", MessageType.Warning);
|
||||
_HeightmapInfluence.floatValue = 0;
|
||||
EditorGUI.BeginDisabledGroup(true);
|
||||
}
|
||||
#endif
|
||||
if (showHelpHeightmap) EditorGUILayout.HelpBox("The heightmap is generated through the PigmentMapGenerator script on your terrain", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_HeightmapInfluence, "Influence");
|
||||
if (showHelpHeightmap) EditorGUILayout.HelpBox("Determines the influence the heightmap has on the object", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_MinHeight, _MinHeight.displayName);
|
||||
if (showHelpHeightmap) EditorGUILayout.HelpBox("Minimum grass height", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_MaxHeight, _MaxHeight.displayName);
|
||||
if (showHelpHeightmap) EditorGUILayout.HelpBox("Maximum grass height", MessageType.None);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
#if UNITY_5_5_OR_NEWER
|
||||
if (!hasPigmentMap)
|
||||
{
|
||||
EditorGUI.EndDisabledGroup();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void DoPigmentMapArea()
|
||||
{
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpPigmentmap = GUILayout.Toggle(showHelpPigmentmap, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Pigment map", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
#if UNITY_5_5_OR_NEWER
|
||||
if(!hasPigmentMap)
|
||||
{
|
||||
EditorGUILayout.HelpBox("No pigment map was found, please add the PigmentMapGenerator script to your terrain to enable these features", MessageType.Warning);
|
||||
_PigmentMapInfluence.floatValue = 0;
|
||||
EditorGUI.BeginDisabledGroup(true);
|
||||
}
|
||||
|
||||
#endif
|
||||
if (showHelpPigmentmap) EditorGUILayout.HelpBox("The pigment map is generated through the PigmentMapGenerator script on your terrain. It colors the grass by the terrain's color.", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_PigmentMapInfluence, "Influence");
|
||||
if (showHelpPigmentmap) EditorGUILayout.HelpBox("Determines how much the object should be colored through the pigment map", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_PigmentMapHeight, "Height");
|
||||
if (showHelpPigmentmap) EditorGUILayout.HelpBox("With this parameter you can choose to only color the base of the grass", MessageType.None);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
if (showHelpPigmentmap) EditorGUILayout.HelpBox("If your grass is completely white, bring the Influence parameter to 0. Or add the PigmentmapGenerator script to your terrain.", MessageType.Info);
|
||||
|
||||
#if UNITY_5_4 && !UNITY_5_5_OR_NEWER
|
||||
if (showHelpPigmentmap) EditorGUILayout.HelpBox("In versions older than Unity 5.5, it is possible for your grass to still be colored by the last pigment map generated", MessageType.Info);
|
||||
#endif
|
||||
|
||||
|
||||
EditorGUILayout.Space();
|
||||
#if UNITY_5_5_OR_NEWER
|
||||
if (!hasPigmentMap)
|
||||
{
|
||||
EditorGUI.EndDisabledGroup();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
public void FindProperties(MaterialProperty[] props)
|
||||
{
|
||||
//Rendering
|
||||
_MaskClipValue = FindProperty("_Cutoff", props);
|
||||
|
||||
//Main maps
|
||||
_MainTex = FindProperty("_MainTex", props);
|
||||
_BumpMap = FindProperty("_BumpMap", props);
|
||||
|
||||
//Color
|
||||
_ColorTop = FindProperty("_ColorTop", props);
|
||||
_ColorBottom = FindProperty("_ColorBottom", props);
|
||||
_ColorVariation = FindProperty("_ColorVariation", props);
|
||||
_AmbientOcclusion = FindProperty("_AmbientOcclusion", props);
|
||||
_TransmissionSize = FindProperty("_TransmissionSize", props);
|
||||
_TransmissionAmount = FindProperty("_TransmissionAmount", props);
|
||||
|
||||
//Animation
|
||||
_MaxWindStrength = FindProperty("_MaxWindStrength", props);
|
||||
_WindSwinging = FindProperty("_WindSwinging", props);
|
||||
_WindAmplitudeMultiplier = FindProperty("_WindAmplitudeMultiplier", props);
|
||||
_BendingInfluence = FindProperty("_BendingInfluence", props);
|
||||
|
||||
#if TOUCH_REACT
|
||||
//TouchBend
|
||||
_VS_TOUCHBEND = FindProperty("_VS_TOUCHBEND", props);
|
||||
_BendingTint = FindProperty("_BendingTint", props);
|
||||
#endif
|
||||
|
||||
//Heightmap
|
||||
_HeightmapInfluence = FindProperty("_HeightmapInfluence", props);
|
||||
_MinHeight = FindProperty("_MinHeight", props);
|
||||
_MaxHeight = FindProperty("_MaxHeight", props);
|
||||
|
||||
//Pigment map
|
||||
_PigmentMapInfluence = FindProperty("_PigmentMapInfluence", props);
|
||||
_PigmentMapHeight = FindProperty("_PigmentMapHeight", props);
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7bc55a191bff1d64db091bcbb1444cf9
|
||||
timeCreated: 1507713339
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,342 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
public class HelpWindow : EditorWindow
|
||||
{
|
||||
//Window properties
|
||||
private static int width = 440;
|
||||
private static int height = 300;
|
||||
|
||||
private bool isTabInstallation = true;
|
||||
private bool isTabGettingStarted = false;
|
||||
private bool isTabSupport = false;
|
||||
|
||||
[MenuItem("Help/Fantasy Adventure Environment", false, 0)]
|
||||
public static void ShowWindow()
|
||||
{
|
||||
EditorWindow editorWindow = EditorWindow.GetWindow<HelpWindow>(false, "About", true);
|
||||
editorWindow.titleContent = new GUIContent("Help " + FAE_Core.INSTALLED_VERSION);
|
||||
editorWindow.autoRepaintOnSceneChange = true;
|
||||
|
||||
//Open somewhat in the center of the screen
|
||||
editorWindow.position = new Rect((Screen.width) / 2f, (Screen.height) / 2f, width, height);
|
||||
|
||||
//Fixed size
|
||||
editorWindow.maxSize = new Vector2(width, height);
|
||||
editorWindow.minSize = new Vector2(width, 200);
|
||||
|
||||
Init();
|
||||
|
||||
editorWindow.Show();
|
||||
|
||||
}
|
||||
|
||||
private void SetWindowHeight(float height)
|
||||
{
|
||||
this.maxSize = new Vector2(width, height);
|
||||
this.minSize = new Vector2(width, height);
|
||||
}
|
||||
|
||||
//Store values in the volatile SessionState
|
||||
static void Init()
|
||||
{
|
||||
FAE_Core.GetRootFolder();
|
||||
}
|
||||
|
||||
void OnGUI()
|
||||
{
|
||||
DrawHeader();
|
||||
|
||||
GUILayout.Space(5);
|
||||
DrawTabs();
|
||||
GUILayout.Space(5);
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
if (isTabInstallation) DrawInstallation();
|
||||
if (isTabGettingStarted) DrawGettingStarted();
|
||||
if (isTabSupport) DrawSupport();
|
||||
|
||||
//DrawActionButtons();
|
||||
|
||||
EditorGUILayout.EndVertical();
|
||||
|
||||
DrawFooter();
|
||||
|
||||
}
|
||||
|
||||
void DrawHeader()
|
||||
{
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.LabelField("<b><size=24>Fantasy Adventure Environment</size></b>", Header);
|
||||
|
||||
GUILayout.Label("Version: " + FAE_Core.INSTALLED_VERSION, Footer);
|
||||
EditorGUILayout.LabelField("", GUI.skin.horizontalSlider);
|
||||
}
|
||||
|
||||
void DrawTabs()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
|
||||
if (GUILayout.Toggle(isTabInstallation, "Installation", Tab))
|
||||
{
|
||||
isTabInstallation = true;
|
||||
isTabGettingStarted = false;
|
||||
isTabSupport = false;
|
||||
}
|
||||
|
||||
if (GUILayout.Toggle(isTabGettingStarted, "Getting started", Tab))
|
||||
{
|
||||
isTabInstallation = false;
|
||||
isTabGettingStarted = true;
|
||||
isTabSupport = false;
|
||||
}
|
||||
|
||||
if (GUILayout.Toggle(isTabSupport, "Support", Tab))
|
||||
{
|
||||
isTabInstallation = false;
|
||||
isTabGettingStarted = false;
|
||||
isTabSupport = true;
|
||||
}
|
||||
|
||||
EditorGUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
void DrawInstallation()
|
||||
{
|
||||
SetWindowHeight(335);
|
||||
|
||||
EditorGUILayout.LabelField("Render pipeline conversion", EditorStyles.boldLabel);
|
||||
|
||||
#if !UNITY_2019_3_OR_NEWER
|
||||
|
||||
EditorGUILayout.HelpBox("Universal Render Pipeline support requires Unity 2019.3.7f1 or newer", MessageType.Info);
|
||||
#else
|
||||
if (UnityEngine.Rendering.GraphicsSettings.renderPipelineAsset == null)
|
||||
{
|
||||
EditorGUILayout.HelpBox("No Scriptable Render Pipeline is currently active", MessageType.Warning);
|
||||
}
|
||||
|
||||
#if FAE_DEV
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
{
|
||||
if (GUILayout.Button("<b><size=16>Built-in</size></b>\n<i>Amplify Shader Editor shaders</i>", Button))
|
||||
{
|
||||
FAE_Core.InstallShaders(FAE_Core.ShaderInstallation.BuiltIn);
|
||||
}
|
||||
#endif
|
||||
using (new EditorGUI.DisabledGroupScope(UnityEngine.Rendering.GraphicsSettings.renderPipelineAsset == null))
|
||||
{
|
||||
if (GUILayout.Button("<b><size=16>Universal Render Pipeline</size></b>\n<i>Unpack Shader Graph shaders and URP materials</i>", Button))
|
||||
{
|
||||
FAE_Core.InstallShaders(FAE_Core.ShaderInstallation.UniversalRP);
|
||||
}
|
||||
}
|
||||
#if FAE_DEV
|
||||
}
|
||||
EditorGUILayout.EndHorizontal();
|
||||
#endif
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
EditorGUILayout.HelpBox("Note: Grass shader for the URP is available on the Asset Store", MessageType.Info);
|
||||
if (GUILayout.Button("Open Asset Store", GUILayout.Height(40f), GUILayout.Width(120f)))
|
||||
{
|
||||
Application.OpenURL("com.unity3d.kharma:content/143830");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
void DrawGettingStarted()
|
||||
{
|
||||
SetWindowHeight(335);
|
||||
|
||||
EditorGUILayout.HelpBox("Please view the documentation for further details about this package and its workings.", MessageType.Info);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
if (GUILayout.Button("<b><size=16>Online documentation</size></b>\n<i>Set up, best practices and troubleshooting</i>", Button))
|
||||
{
|
||||
Application.OpenURL(FAE_Core.DOC_URL + "#getting-started-3");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void DrawSupport()
|
||||
{
|
||||
SetWindowHeight(350f);
|
||||
|
||||
EditorGUILayout.BeginVertical(); //Support box
|
||||
|
||||
EditorGUILayout.HelpBox("If you have any questions, or ran into issues, please get in touch!", MessageType.Info);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
//Buttons box
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
if (GUILayout.Button("<b><size=12>Email</size></b>\n<i>Contact</i>", Button))
|
||||
{
|
||||
Application.OpenURL("mailto:contact@staggart.xyz");
|
||||
}
|
||||
if (GUILayout.Button("<b><size=12>Twitter</size></b>\n<i>Follow developments</i>", Button))
|
||||
{
|
||||
Application.OpenURL("https://twitter.com/search?q=staggart%20creations");
|
||||
}
|
||||
if (GUILayout.Button("<b><size=12>Forum</size></b>\n<i>Join the discussion</i>", Button))
|
||||
{
|
||||
Application.OpenURL(FAE_Core.FORUM_URL);
|
||||
}
|
||||
EditorGUILayout.EndHorizontal();//Buttons box
|
||||
|
||||
EditorGUILayout.EndVertical(); //Support box
|
||||
}
|
||||
|
||||
private void DrawActionButtons()
|
||||
{
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
|
||||
|
||||
if (GUILayout.Button("<size=12>Rate</size>", Button))
|
||||
Application.OpenURL("https://www.assetstore.unity3d.com/en/#!/account/downloads/search=");
|
||||
|
||||
if (GUILayout.Button("<size=12>Review</size>", Button))
|
||||
Application.OpenURL("");
|
||||
|
||||
|
||||
EditorGUILayout.EndHorizontal();
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
private void DrawFooter()
|
||||
{
|
||||
//EditorGUILayout.Space();
|
||||
EditorGUILayout.LabelField("", GUI.skin.horizontalSlider);
|
||||
EditorGUILayout.Space();
|
||||
GUILayout.Label("- Staggart Creations -", Footer);
|
||||
}
|
||||
|
||||
#region Styles
|
||||
|
||||
private static GUIStyle _Footer;
|
||||
public static GUIStyle Footer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_Footer == null)
|
||||
{
|
||||
_Footer = new GUIStyle(EditorStyles.centeredGreyMiniLabel)
|
||||
{
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
wordWrap = true,
|
||||
fontSize = 12
|
||||
};
|
||||
}
|
||||
|
||||
return _Footer;
|
||||
}
|
||||
}
|
||||
|
||||
private static GUIStyle _Button;
|
||||
public static GUIStyle Button
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_Button == null)
|
||||
{
|
||||
_Button = new GUIStyle(GUI.skin.button)
|
||||
{
|
||||
alignment = TextAnchor.MiddleLeft,
|
||||
stretchWidth = true,
|
||||
richText = true,
|
||||
wordWrap = true,
|
||||
padding = new RectOffset()
|
||||
{
|
||||
left = 14,
|
||||
right = 14,
|
||||
top = 8,
|
||||
bottom = 8
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
return _Button;
|
||||
}
|
||||
}
|
||||
|
||||
private static GUIStyle _Header;
|
||||
public static GUIStyle Header
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_Header == null)
|
||||
{
|
||||
_Header = new GUIStyle(GUI.skin.label)
|
||||
{
|
||||
richText = true,
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
wordWrap = true,
|
||||
fontSize = 18,
|
||||
fontStyle = FontStyle.Bold
|
||||
};
|
||||
}
|
||||
|
||||
return _Header;
|
||||
}
|
||||
}
|
||||
|
||||
private static Texture _HelpIcon;
|
||||
public static Texture HelpIcon
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_HelpIcon == null)
|
||||
{
|
||||
_HelpIcon = EditorGUIUtility.FindTexture("d_UnityEditor.InspectorWindow");
|
||||
}
|
||||
return _HelpIcon;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private static GUIStyle _Tab;
|
||||
public static GUIStyle Tab
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_Tab == null)
|
||||
{
|
||||
_Tab = new GUIStyle(EditorStyles.miniButtonMid)
|
||||
{
|
||||
alignment = TextAnchor.MiddleCenter,
|
||||
stretchWidth = true,
|
||||
richText = true,
|
||||
wordWrap = true,
|
||||
fontSize = 12,
|
||||
fixedHeight = 30f,
|
||||
fontStyle = FontStyle.Bold,
|
||||
padding = new RectOffset()
|
||||
{
|
||||
left = 14,
|
||||
right = 14,
|
||||
top = 8,
|
||||
bottom = 8
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
return _Tab;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion //Stylies
|
||||
}//Window Class
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4c9c8d7e3ee887b4fa8186d4f51e313d
|
||||
timeCreated: 1575711041
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,451 @@
|
||||
// Fantasy Adventure Environment
|
||||
// Copyright Staggart Creations
|
||||
// staggart.xyz
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using UnityEditor;
|
||||
using UnityEditor.Callbacks;
|
||||
using FAE;
|
||||
using System;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
[CustomEditor(typeof(PigmentMapGenerator))]
|
||||
public class PigmentMapGeneratorInspector : Editor
|
||||
{
|
||||
PigmentMapGenerator pmg;
|
||||
|
||||
new SerializedObject serializedObject;
|
||||
|
||||
SerializedProperty isMultiTerrain;
|
||||
SerializedProperty isMegaSplat;
|
||||
|
||||
SerializedProperty terrainObjects;
|
||||
|
||||
SerializedProperty manualInput;
|
||||
SerializedProperty resIdx;
|
||||
SerializedProperty useCustomPigmentMap;
|
||||
SerializedProperty inputPigmentMap;
|
||||
SerializedProperty layerMask;
|
||||
|
||||
public static string[] reslist = new string[] { "64x64", "128x128", "256x256", "512x512", "1024x1024", "2048x2048", "4096x4096" };
|
||||
|
||||
// Use this for initialization
|
||||
void OnEnable()
|
||||
{
|
||||
pmg = (PigmentMapGenerator)target;
|
||||
|
||||
GetProperties();
|
||||
}
|
||||
|
||||
private void GetProperties()
|
||||
{
|
||||
serializedObject = new SerializedObject(pmg);
|
||||
|
||||
isMultiTerrain = serializedObject.FindProperty("isMultiTerrain");
|
||||
isMegaSplat = serializedObject.FindProperty("isMegaSplat");
|
||||
terrainObjects = serializedObject.FindProperty("terrainObjects");
|
||||
|
||||
manualInput = serializedObject.FindProperty("manualInput");
|
||||
resIdx = serializedObject.FindProperty("resIdx");
|
||||
useCustomPigmentMap = serializedObject.FindProperty("useCustomPigmentMap");
|
||||
inputPigmentMap = serializedObject.FindProperty("customPigmentMap");
|
||||
layerMask = serializedObject.FindProperty("layerMask");
|
||||
|
||||
}
|
||||
|
||||
//Meta
|
||||
private string terrainInfo;
|
||||
private bool showHelp;
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
DoHeader();
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
if (UnityEngine.Rendering.GraphicsSettings.renderPipelineAsset)
|
||||
{
|
||||
EditorGUILayout.HelpBox("Not available in the Universal Render Pipeline.\n\nThe Stylized Grass Shader package is URP compatible", MessageType.Warning);
|
||||
|
||||
GUILayout.Space(-32);
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
GUILayout.FlexibleSpace();
|
||||
if (GUILayout.Button("Open Asset Store", GUILayout.Width(120)))
|
||||
{
|
||||
Application.OpenURL("com.unity3d.kharma:content/143830");
|
||||
}
|
||||
GUILayout.Space(8);
|
||||
}
|
||||
GUILayout.Space(11);
|
||||
}
|
||||
#endif
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
serializedObject.Update();
|
||||
|
||||
DrawTerrainInfo();
|
||||
|
||||
EditorGUILayout.PropertyField(useCustomPigmentMap, new GUIContent("Custom pigment map"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("This option allows you to assign a custom pigment map, rather than rendering one.", MessageType.Info);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
//Custom pigment map
|
||||
if (useCustomPigmentMap.boolValue)
|
||||
{
|
||||
EditorGUILayout.PropertyField(inputPigmentMap, new GUIContent("Input"));
|
||||
|
||||
if (showHelp) EditorGUILayout.HelpBox("Grass heightmap should be stored in the alpha channel.", MessageType.Info);
|
||||
|
||||
if (pmg.customPigmentMap)
|
||||
{
|
||||
//Check if input heightmap is readable
|
||||
try
|
||||
{
|
||||
pmg.customPigmentMap.GetPixel(0, 0);
|
||||
}
|
||||
catch (UnityException e)
|
||||
{
|
||||
if (e.Message.StartsWith("Texture '" + pmg.customPigmentMap.name + "' is not readable"))
|
||||
{
|
||||
|
||||
EditorGUILayout.HelpBox("Please enable the Read/Write option on texture \"" + pmg.customPigmentMap.name + "\"\n\nIt accessed be read otherwise.", MessageType.Error);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
}
|
||||
|
||||
//If terrain list is empty, expand it
|
||||
if (isMultiTerrain.boolValue && terrainObjects.arraySize == 0 && !manualInput.boolValue)
|
||||
{
|
||||
terrainObjects.isExpanded = true;
|
||||
}
|
||||
|
||||
DoTerrainList();
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
if (!useCustomPigmentMap.boolValue)
|
||||
{
|
||||
//Safety check, required for preventing errors when updating from 1.1.2 to 1.2.0
|
||||
//if (pmg.terrains == null || pmg.terrains.Length == 0) return;
|
||||
|
||||
//If single terrain without any textures
|
||||
if (!isMegaSplat.boolValue)
|
||||
{
|
||||
#if UNITY_2018_3_OR_NEWER
|
||||
if (!isMultiTerrain.boolValue && pmg.workflow == TerrainUVUtil.Workflow.Terrain && pmg.terrains[0].terrainData.terrainLayers.Length == 0)
|
||||
#else
|
||||
if (!isMultiTerrain.boolValue && pmg.workflow == TerrainUVUtil.Workflow.Terrain && pmg.terrains[0].terrainData.splatPrototypes.Length == 0)
|
||||
#endif
|
||||
{
|
||||
EditorGUILayout.HelpBox("Assign at least one texture to your terrain", MessageType.Error);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
DoHeightMap();
|
||||
|
||||
DoTexTransforms();
|
||||
|
||||
DoRenderer();
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
//Button
|
||||
//If multi terrain, with no objects assigned, don't show Generate button
|
||||
if (isMultiTerrain.boolValue && terrainObjects.arraySize == 0 && !manualInput.boolValue)
|
||||
{
|
||||
EditorGUILayout.HelpBox("Assign at least one terrain object", MessageType.Error);
|
||||
}
|
||||
|
||||
EditorGUI.BeginDisabledGroup(isMultiTerrain.boolValue && terrainObjects.arraySize == 0 && !manualInput.boolValue);
|
||||
string buttonLabel = (useCustomPigmentMap.boolValue) ? "Assign" : "Generate";
|
||||
if (GUILayout.Button(buttonLabel, GUILayout.Height(40f)))
|
||||
{
|
||||
pmg.Generate();
|
||||
}
|
||||
EditorGUI.EndDisabledGroup();
|
||||
EditorGUILayout.Space();
|
||||
|
||||
DoPreview();
|
||||
|
||||
//GUIHelper.DrawFooter();
|
||||
|
||||
serializedObject.ApplyModifiedProperties();
|
||||
|
||||
if (GUI.changed || EditorGUI.EndChangeCheck())
|
||||
{
|
||||
EditorUtility.SetDirty((PigmentMapGenerator)target);
|
||||
EditorUtility.SetDirty(this);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void DoHeader()
|
||||
{
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelp = GUILayout.Toggle(showHelp, "Toggle help", "Button");
|
||||
GUILayout.Label("FAE Pigmentmap Generator", GUIHelper.Header);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
if (showHelp) EditorGUILayout.HelpBox("This renders a color map from your terrain, which is used by the \"FAE/Grass\" shader to blend the grass color with the terrain.", MessageType.Info);
|
||||
if (showHelp) EditorGUILayout.HelpBox("If you'd like some objects to be included, like cliffs, parent them under your terrain object.", MessageType.Info);
|
||||
if (showHelp) EditorGUILayout.HelpBox("For a multi-terrain setup, add this script to the parent object of your terrain tiles/chunks.", MessageType.Info);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
private void DrawTerrainInfo()
|
||||
{
|
||||
EditorGUILayout.PropertyField(manualInput, new GUIContent("Manual input"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("Allows you to manually set the terrain's size, center and corner values. Particularly useful if your terrain(s) sits in a different scene.", MessageType.Info);
|
||||
|
||||
if (manualInput.boolValue)
|
||||
{
|
||||
pmg.targetCenterPosition = EditorGUILayout.Vector3Field("Center", pmg.targetCenterPosition);
|
||||
pmg.targetSize = EditorGUILayout.Vector3Field("Size", pmg.targetSize);
|
||||
pmg.targetOriginPosition = EditorGUILayout.Vector3Field("Corner/Origin", pmg.targetOriginPosition);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
GUILayout.FlexibleSpace();
|
||||
if (GUILayout.Button("Apply", EditorStyles.miniButton))
|
||||
{
|
||||
Shader.SetGlobalVector("_TerrainUV", new Vector4(pmg.targetSize.x, pmg.targetSize.z, Mathf.Abs(pmg.targetOriginPosition.x), Mathf.Abs(pmg.targetOriginPosition.z)));
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
terrainInfo = string.Format("Size: ({0},{1},{2}) \nCenter: ({3},{4}) \nCorner: ({5},{6})",
|
||||
Mathf.Round(pmg.targetSize.x),
|
||||
Mathf.Round(pmg.targetSize.y),
|
||||
Mathf.Round(pmg.targetSize.z),
|
||||
Mathf.Round(pmg.targetCenterPosition.x),
|
||||
Mathf.Round(pmg.targetCenterPosition.z),
|
||||
Mathf.Round(pmg.targetOriginPosition.x),
|
||||
Mathf.Round(pmg.targetOriginPosition.z)
|
||||
);
|
||||
|
||||
EditorGUILayout.HelpBox(terrainInfo, MessageType.Info);
|
||||
|
||||
GUILayout.Space(-32);
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
GUILayout.FlexibleSpace();
|
||||
pmg.showArea = GUILayout.Toggle(pmg.showArea, new GUIContent(" Show area", EditorGUIUtility.IconContent("Prefab Icon").image), "Button", GUILayout.MaxHeight(17f));
|
||||
GUILayout.Space(8);
|
||||
}
|
||||
GUILayout.Space(11);
|
||||
|
||||
}
|
||||
|
||||
private void DoTerrainList()
|
||||
{
|
||||
if (isMultiTerrain.boolValue && !manualInput.boolValue)
|
||||
{
|
||||
EditorGUILayout.PropertyField(terrainObjects, new GUIContent("Terrain objects"), true);
|
||||
|
||||
if (terrainObjects.isExpanded)
|
||||
{
|
||||
EditorGUILayout.HelpBox("The first object in the array must be the corner chunk, where the terrain continues on the postive X and Z axis", MessageType.Warning);
|
||||
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
if (GUILayout.Button("Assign all child objects"))
|
||||
{
|
||||
pmg.GetChildTerrainObjects(pmg.transform);
|
||||
}
|
||||
if (GUILayout.Button("Add active terrains"))
|
||||
{
|
||||
AssignActiveTerrains();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Single terrain, don't show array
|
||||
}
|
||||
}
|
||||
|
||||
private void DoHeightMap()
|
||||
{
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
//If is single terrain
|
||||
if (!isMultiTerrain.boolValue && pmg.workflow == TerrainUVUtil.Workflow.Terrain && !isMegaSplat.boolValue && !manualInput.boolValue)
|
||||
{
|
||||
|
||||
EditorGUILayout.LabelField("Grass heightmap", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
pmg.heightmapChannel = (PigmentMapGenerator.HeightmapChannel)EditorGUILayout.EnumPopup("Height source material", pmg.heightmapChannel);
|
||||
if (showHelp) EditorGUILayout.HelpBox("This is the texture whose painted weight will determine the grass height \n\nThe effect can be controlled through the \"Heightmap influence\" parameter on the FAE/Grass shader", MessageType.None);
|
||||
|
||||
/*
|
||||
if (pmg.heightmapChannel > 0)
|
||||
{
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
GUILayout.FlexibleSpace();
|
||||
EditorGUILayout.LabelField(pmg.terrains[0].terrainData.splatPrototypes[(int)pmg.heightmapChannel - 1].texture.name);
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
//If mesh or multi terrain
|
||||
else
|
||||
{
|
||||
//Field to assign heightmap texture
|
||||
EditorGUILayout.LabelField("Input grass heightmap (optional)", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
pmg.inputHeightmap = EditorGUILayout.ObjectField("Heightmap", pmg.inputHeightmap, typeof(Texture2D), false) as Texture2D;
|
||||
|
||||
if (showHelp) EditorGUILayout.HelpBox("This information is used in the \"FAE/Grass\" shader to make the grass shorter where desired", MessageType.Info);
|
||||
|
||||
if (pmg.inputHeightmap)
|
||||
{
|
||||
//Check if input heightmap is readable
|
||||
try
|
||||
{
|
||||
pmg.inputHeightmap.GetPixel(0, 0);
|
||||
}
|
||||
catch (UnityException e)
|
||||
{
|
||||
if (e.Message.StartsWith("Texture '" + pmg.inputHeightmap.name + "' is not readable"))
|
||||
{
|
||||
|
||||
EditorGUILayout.HelpBox("Please enable Read/Write on texture \"" + pmg.inputHeightmap.name + "\"", MessageType.Error);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
|
||||
private void DoTexTransforms()
|
||||
{
|
||||
if (pmg.workflow == TerrainUVUtil.Workflow.Terrain) return;
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
EditorGUILayout.LabelField("Texture transformation", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space();
|
||||
if (showHelp) EditorGUILayout.HelpBox("The UV's of your mesh terrain may differ, so these options allow you to compensate for this.", MessageType.Info);
|
||||
|
||||
pmg.flipHortizontally = EditorGUILayout.Toggle("Flip horizontally", pmg.flipHortizontally);
|
||||
pmg.flipVertically = EditorGUILayout.Toggle("Flip vertically", pmg.flipVertically);
|
||||
pmg.textureRotation = (PigmentMapGenerator.TextureRotation)EditorGUILayout.EnumPopup("Rotation", pmg.textureRotation);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
|
||||
private void DoRenderer()
|
||||
{
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
EditorGUILayout.LabelField("Renderer", EditorStyles.boldLabel);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
if (manualInput.boolValue)
|
||||
{
|
||||
EditorGUILayout.PropertyField(layerMask, new GUIContent("Layer mask"));
|
||||
EditorGUILayout.HelpBox("Manual input mode requires terrains to be on a dedicated layer", MessageType.None);
|
||||
}
|
||||
|
||||
resIdx.intValue = EditorGUILayout.Popup("Resolution", resIdx.intValue, reslist, new GUILayoutOption[0]);
|
||||
|
||||
pmg.useAlternativeRenderer = EditorGUILayout.ToggleLeft("Using third-party terrain shader", pmg.useAlternativeRenderer);
|
||||
if (showHelp) EditorGUILayout.HelpBox("Some third-party terrain shaders require you to use this, otherwise the result may be black.", MessageType.Info);
|
||||
|
||||
if (pmg.useAlternativeRenderer) pmg.renderLightBrightness = EditorGUILayout.Slider("Brightness adjustment", pmg.renderLightBrightness, 0f, 1f);
|
||||
if (pmg.useAlternativeRenderer && showHelp) EditorGUILayout.HelpBox("To compensate for any shader variations on the terrain, you can use this to increase the brightness of the pigment map, in case it turns out too dark/bright.", MessageType.Info);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
|
||||
private void DoPreview()
|
||||
{
|
||||
if (!useCustomPigmentMap.boolValue)
|
||||
{
|
||||
//Pigment map preview
|
||||
if (!pmg.pigmentMap) return;
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(string.Format("Output pigment map ({0}x{0})", pmg.pigmentMap.height), EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
Rect cRect = EditorGUILayout.GetControlRect();
|
||||
using (new EditorGUILayout.HorizontalScope())
|
||||
{
|
||||
EditorGUI.DrawPreviewTexture(new Rect(cRect.x, cRect.y, 150f, 150f), pmg.pigmentMap, null, ScaleMode.ScaleAndCrop);
|
||||
}
|
||||
GUILayout.Space(140f);
|
||||
|
||||
//Single terrain
|
||||
if (!isMultiTerrain.boolValue)
|
||||
{
|
||||
if (pmg.workflow == TerrainUVUtil.Workflow.Terrain)
|
||||
{
|
||||
if (pmg.hasTerrainData)
|
||||
{
|
||||
EditorGUILayout.LabelField("The output texture file is stored next to the TerrainData asset", EditorStyles.helpBox);
|
||||
}
|
||||
else
|
||||
{
|
||||
EditorGUILayout.LabelField("The output texture file is stored next to the scene file", EditorStyles.helpBox);
|
||||
}
|
||||
}
|
||||
else if (pmg.workflow == TerrainUVUtil.Workflow.Mesh)
|
||||
{
|
||||
EditorGUILayout.LabelField("The output texture file is stored next to the material file", EditorStyles.helpBox);
|
||||
}
|
||||
}
|
||||
//Multi terrain
|
||||
else
|
||||
{
|
||||
if (pmg.workflow == TerrainUVUtil.Workflow.Terrain)
|
||||
{
|
||||
EditorGUILayout.LabelField("The output texture file is stored next to the scene file", EditorStyles.helpBox);
|
||||
}
|
||||
else if (pmg.workflow == TerrainUVUtil.Workflow.Mesh)
|
||||
{
|
||||
EditorGUILayout.LabelField("The output texture file is stored next to the material file", EditorStyles.helpBox);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void AssignActiveTerrains()
|
||||
{
|
||||
Terrain[] terrains = Terrain.activeTerrains;
|
||||
pmg.terrainObjects = new GameObject[terrains.Length];
|
||||
|
||||
for (int i = 0; i < terrains.Length; i++)
|
||||
{
|
||||
pmg.terrainObjects[i] = terrains[i].gameObject;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 89d2a64dd502a9341a89a3dc4fa986ae
|
||||
timeCreated: 1508238424
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,229 @@
|
||||
// Fantasy Adventure Environment
|
||||
// Copyright Staggart Creations
|
||||
// staggart.xyz
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
public class TreeBranchShaderGUI : ShaderGUI
|
||||
{
|
||||
|
||||
MaterialProperty _MaskClipValue;
|
||||
|
||||
MaterialProperty _UseSpeedTreeWind;
|
||||
|
||||
//Main maps
|
||||
MaterialProperty _MainTex;
|
||||
MaterialProperty _BumpMap;
|
||||
|
||||
//Color
|
||||
MaterialProperty _Color;
|
||||
MaterialProperty _HueVariation;
|
||||
MaterialProperty _AmbientOcclusion;
|
||||
MaterialProperty _TransmissionColor;
|
||||
MaterialProperty _GradientBrightness;
|
||||
MaterialProperty _Smoothness;
|
||||
MaterialProperty _FlatLighting;
|
||||
|
||||
//Animation
|
||||
MaterialProperty _MaxWindStrength;
|
||||
MaterialProperty _WindAmplitudeMultiplier;
|
||||
|
||||
MaterialEditor m_MaterialEditor;
|
||||
|
||||
//Meta
|
||||
bool showHelp;
|
||||
bool showHelpColor;
|
||||
bool showHelpAnimation;
|
||||
|
||||
bool hasWindController;
|
||||
WindController windController;
|
||||
|
||||
GUIContent mainTexName = new GUIContent("Diffuse", "Diffuse (RGB) and Transparency (A)");
|
||||
GUIContent normalMapName = new GUIContent("Normal Map");
|
||||
private Material targetMat;
|
||||
|
||||
private bool visualizeVectors;
|
||||
|
||||
public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] props)
|
||||
{
|
||||
if (windController == null) LocateWindController();
|
||||
|
||||
//Receive
|
||||
visualizeVectors = WindController._visualizeVectors;
|
||||
|
||||
this.m_MaterialEditor = materialEditor;
|
||||
targetMat = (Material)materialEditor.target;
|
||||
|
||||
this.FindProperties(props);
|
||||
|
||||
//Style similar to Standard shader
|
||||
m_MaterialEditor.SetDefaultGUIWidths();
|
||||
m_MaterialEditor.UseDefaultMargins();
|
||||
EditorGUIUtility.labelWidth = 0f;
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
if (UnityEngine.Rendering.GraphicsSettings.currentRenderPipeline != null &&
|
||||
!targetMat.shader.name.Contains("Universal Render Pipeline"))
|
||||
{
|
||||
EditorGUILayout.HelpBox("A render pipeline is in use, but this material is using a shader for the Built-in render pipeline.\n\nShaders and materials can be converted through the Help window", MessageType.Error);
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
#endif
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
//Draw fields
|
||||
DoHeader();
|
||||
|
||||
DoMapsArea();
|
||||
DoColorArea();
|
||||
DoAnimationArea();
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
//Send
|
||||
WindController.VisualizeVectors(visualizeVectors);
|
||||
}
|
||||
|
||||
GUILayout.Label("Advanced Options", EditorStyles.boldLabel);
|
||||
|
||||
GUIHelper.DrawExtraFields(m_MaterialEditor);
|
||||
|
||||
GUIHelper.DrawFooter();
|
||||
|
||||
}
|
||||
|
||||
void DoHeader()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelp = GUILayout.Toggle(showHelp, "Toggle help", "Button");
|
||||
GUILayout.Label("FAE Tree Branch Shader", GUIHelper.Header);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
if (showHelp) EditorGUILayout.HelpBox("Please bear in mind, when using custom meshes, that most shader features require the Ambient Occlusion to be baked into the RGB vertex colors.", MessageType.Warning);
|
||||
}
|
||||
|
||||
void DoMapsArea()
|
||||
{
|
||||
GUILayout.Label("Main maps", EditorStyles.boldLabel);
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.PrefixLabel(_MaskClipValue.displayName);
|
||||
_MaskClipValue.floatValue = EditorGUILayout.Slider(_MaskClipValue.floatValue, 0f, 1f);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
this.m_MaterialEditor.TexturePropertySingleLine(mainTexName, this._MainTex, this._Color);
|
||||
if(targetMat.HasProperty("_BumpMap")) this.m_MaterialEditor.TexturePropertySingleLine(normalMapName, this._BumpMap);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void DoColorArea()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpColor = GUILayout.Toggle(showHelpColor, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Color", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
m_MaterialEditor.ShaderProperty(_HueVariation, _HueVariation.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Uses the object's world-space position to add a color variation. This effect is controlled through the alpha channel.\n\n Note: Does not work with meshes that are batched or combined", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_AmbientOcclusion, _AmbientOcclusion.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Darkens the areas of the mesh where red vertex colors are applied", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_TransmissionColor, new GUIContent("Translucency"));
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Simulates light passing through the material. The alpha channel controls the intensity. This effect is controlled through the blue channel.", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_GradientBrightness, _GradientBrightness.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Adds a gradient to the branch mesh from bottom to top. This information is stored in the alpha vertex color channel.\n\nWithout this information, the parameter will have no effect.", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_Smoothness, _Smoothness.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("Determines the shininess of the material", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_FlatLighting, _FlatLighting.displayName);
|
||||
if (showHelpColor) EditorGUILayout.HelpBox("A value of 1 makes the mesh normals point upwards. For some trees this is necessary to achieve the best visual result.", MessageType.None);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void DoAnimationArea()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelpAnimation = GUILayout.Toggle(showHelpAnimation, "?", "Button", GUILayout.Width(25f)); GUILayout.Label("Wind animation", EditorStyles.boldLabel);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
#if !VEGETATION_STUDIO_PRO //VS Pro has an FAE wind controller
|
||||
if (!hasWindController)
|
||||
{
|
||||
EditorGUILayout.HelpBox("No \"WindController\" component was found in your scene. Please add this script to an empty GameObject\n\nGo to GameObject->3D Object to create one", MessageType.Warning);
|
||||
EditorGUI.BeginDisabledGroup(true);
|
||||
|
||||
}
|
||||
#else
|
||||
EditorGUI.BeginDisabledGroup(false);
|
||||
#endif
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
if (UnityEngine.Rendering.GraphicsSettings.currentRenderPipeline == null)
|
||||
{
|
||||
#endif
|
||||
visualizeVectors = EditorGUILayout.Toggle("Visualize wind", visualizeVectors);
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
}
|
||||
#endif
|
||||
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Toggle a visualisation of the wind vectors on all the objects that use FAE shaders featuring wind.\n\nThis allows you to more clearly see the effects of the settings.", MessageType.None);
|
||||
|
||||
m_MaterialEditor.ShaderProperty(_UseSpeedTreeWind, new GUIContent("Sample SpeedTree wind"));
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("If this is a tree created using the Unity SpeedTree Modeler, this toggle will make the shader read the wind information as stored by SpeedTree.", MessageType.None);
|
||||
|
||||
m_MaterialEditor.ShaderProperty(_MaxWindStrength, new GUIContent("Max wind strength"));
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Determines how much influence the wind has on the branches", MessageType.None);
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(new GUIContent("Wind Amplitude Multiplier"));
|
||||
_WindAmplitudeMultiplier.floatValue = EditorGUILayout.FloatField(_WindAmplitudeMultiplier.floatValue, GUILayout.Width(65f));
|
||||
EditorGUILayout.EndHorizontal();
|
||||
//m_MaterialEditor.ShaderProperty(_WindAmplitudeMultiplier, _WindAmplitudeMultiplier.displayName);
|
||||
if (showHelpAnimation) EditorGUILayout.HelpBox("Multiply the wind amplitude for this material. Essentally this is the size of the wind waves.", MessageType.None);
|
||||
|
||||
if (hasWindController && showHelpAnimation)
|
||||
{
|
||||
GUIHelper.DrawWindInfo();
|
||||
}
|
||||
|
||||
EditorGUI.EndDisabledGroup();
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void LocateWindController()
|
||||
{
|
||||
//Debug.Log("Searching scene for WindController script");
|
||||
windController = GameObject.FindObjectOfType<WindController>();
|
||||
hasWindController = (windController) ? true : false;
|
||||
}
|
||||
|
||||
public void FindProperties(MaterialProperty[] props)
|
||||
{
|
||||
//Rendering
|
||||
_MaskClipValue = FindProperty("_Cutoff", props);
|
||||
|
||||
_UseSpeedTreeWind = FindProperty("_UseSpeedTreeWind", props);
|
||||
|
||||
//Main maps
|
||||
_Color = FindProperty("_Color", props);
|
||||
_MainTex = FindProperty("_MainTex", props);
|
||||
if(targetMat.HasProperty("_BumpMap")) _BumpMap = FindProperty("_BumpMap", props);
|
||||
|
||||
//Color
|
||||
_HueVariation = FindProperty("_HueVariation", props);
|
||||
_AmbientOcclusion = FindProperty("_AmbientOcclusion", props);
|
||||
_TransmissionColor = FindProperty("_TransmissionColor", props);
|
||||
_GradientBrightness = FindProperty("_GradientBrightness", props);
|
||||
_Smoothness = FindProperty("_Smoothness", props);
|
||||
_FlatLighting = FindProperty("_FlatLighting", props);
|
||||
|
||||
//Animation
|
||||
_MaxWindStrength = FindProperty("_MaxWindStrength", props);
|
||||
_WindAmplitudeMultiplier = FindProperty("_WindAmplitudeMultiplier", props);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3880253f9cdf3574fa25cffb6830501e
|
||||
timeCreated: 1507713339
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,132 @@
|
||||
// Fantasy Adventure Environment
|
||||
// Copyright Staggart Creations
|
||||
// staggart.xyz
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
public class TreeTrunkShaderGUI : ShaderGUI
|
||||
{
|
||||
|
||||
//Main maps
|
||||
MaterialProperty _MainTex;
|
||||
MaterialProperty _BumpMap;
|
||||
|
||||
MaterialProperty _UseSpeedTreeWind;
|
||||
|
||||
//Color
|
||||
MaterialProperty _AmbientOcclusion;
|
||||
MaterialProperty _GradientBrightness;
|
||||
MaterialProperty _Smoothness;
|
||||
|
||||
MaterialEditor m_MaterialEditor;
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
private Material targetMat;
|
||||
#endif
|
||||
|
||||
//Meta
|
||||
bool showHelp;
|
||||
|
||||
GUIContent mainTexName = new GUIContent("Diffuse", "Diffuse (RGB) and Transparency (A)");
|
||||
GUIContent normalMapName = new GUIContent("Normal Map");
|
||||
|
||||
public override void OnGUI(MaterialEditor materialEditor, MaterialProperty[] props)
|
||||
{
|
||||
this.m_MaterialEditor = materialEditor;
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
targetMat = materialEditor.target as Material;
|
||||
#endif
|
||||
|
||||
this.FindProperties(props);
|
||||
|
||||
//Style similar to Standard shader
|
||||
m_MaterialEditor.SetDefaultGUIWidths();
|
||||
m_MaterialEditor.UseDefaultMargins();
|
||||
EditorGUIUtility.labelWidth = 0f;
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
if (UnityEngine.Rendering.GraphicsSettings.currentRenderPipeline != null &&
|
||||
!targetMat.shader.name.Contains("Universal Render Pipeline"))
|
||||
{
|
||||
EditorGUILayout.HelpBox("Universal Render Pipeline is in use, but this material is using a shader for the Built-in render pipeline.\n\nShaders and materials can be converted through the Help window", MessageType.Error);
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
#endif
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
//Draw fields
|
||||
DoHeader();
|
||||
|
||||
DoMapsArea();
|
||||
DoColorArea();
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
//Apply changes
|
||||
}
|
||||
|
||||
GUILayout.Label("Advanced Options", EditorStyles.boldLabel);
|
||||
|
||||
GUIHelper.DrawExtraFields(m_MaterialEditor);
|
||||
|
||||
m_MaterialEditor.ShaderProperty(_UseSpeedTreeWind, new GUIContent("Sample SpeedTree wind"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("If this is a tree created using the SpeedTree Unity Modeler, this toggle will make the shader read the wind information as stored by SpeedTree.", MessageType.None);
|
||||
|
||||
if(showHelp) GUIHelper.DrawWindInfo();
|
||||
|
||||
GUIHelper.DrawFooter();
|
||||
|
||||
}
|
||||
|
||||
void DoHeader()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelp = GUILayout.Toggle(showHelp, "Toggle help", "Button");
|
||||
GUILayout.Label("FAE Tree Trunk Shader", GUIHelper.Header);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
if (showHelp) EditorGUILayout.HelpBox("Tree trunk shader, featuring global wind motion", MessageType.Info);
|
||||
}
|
||||
|
||||
void DoMapsArea()
|
||||
{
|
||||
GUILayout.Label("Main maps", EditorStyles.boldLabel);
|
||||
this.m_MaterialEditor.TexturePropertySingleLine(mainTexName, this._MainTex);
|
||||
this.m_MaterialEditor.TexturePropertySingleLine(normalMapName, this._BumpMap);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
void DoColorArea()
|
||||
{
|
||||
m_MaterialEditor.ShaderProperty(_AmbientOcclusion, _AmbientOcclusion.displayName);
|
||||
if (showHelp) EditorGUILayout.HelpBox("Darkens the areas of the mesh where red vertex colors are applied", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_GradientBrightness, _GradientBrightness.displayName);
|
||||
if (showHelp) EditorGUILayout.HelpBox("Adds a gradient to the branch mesh from bottom to top. This information is stored in the alpha vertex color channel.\n\nWithout this information, the parameter will have no effect.", MessageType.None);
|
||||
m_MaterialEditor.ShaderProperty(_Smoothness, _Smoothness.displayName);
|
||||
if (showHelp) EditorGUILayout.HelpBox("Multiplies the value of the texture's alpha channel to decrease the roughness amount", MessageType.None);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
|
||||
public void FindProperties(MaterialProperty[] props)
|
||||
{
|
||||
_UseSpeedTreeWind = FindProperty("_UseSpeedTreeWind", props);
|
||||
|
||||
//Main maps
|
||||
_MainTex = FindProperty("_MainTex", props);
|
||||
_BumpMap = FindProperty("_BumpMap", props);
|
||||
|
||||
//Color
|
||||
_AmbientOcclusion = FindProperty("_AmbientOcclusion", props);
|
||||
_GradientBrightness = FindProperty("_GradientBrightness", props);
|
||||
_Smoothness = FindProperty("_Smoothness", props);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bb6351a34e16d4a49a9f87e59cd6f148
|
||||
timeCreated: 1513768856
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,173 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using UnityEditor;
|
||||
|
||||
namespace FAE
|
||||
{
|
||||
[CustomEditor(typeof(WindController))]
|
||||
public class WindControllerInspector : Editor
|
||||
{
|
||||
WindController wc;
|
||||
|
||||
private bool showHelp = false;
|
||||
private bool visualizeVectors;
|
||||
|
||||
new SerializedObject serializedObject;
|
||||
|
||||
SerializedProperty listenToWindZone;
|
||||
SerializedProperty windZone;
|
||||
|
||||
SerializedProperty windVectors;
|
||||
|
||||
SerializedProperty windSpeed;
|
||||
SerializedProperty windStrength;
|
||||
SerializedProperty windAmplitude;
|
||||
|
||||
SerializedProperty trunkWindSpeed;
|
||||
SerializedProperty trunkWindWeight;
|
||||
SerializedProperty trunkWindSwinging;
|
||||
|
||||
void OnEnable()
|
||||
{
|
||||
wc = (WindController)target;
|
||||
serializedObject = new SerializedObject(target);
|
||||
listenToWindZone = serializedObject.FindProperty("listenToWindZone");
|
||||
windZone = serializedObject.FindProperty("windZone");
|
||||
windVectors = serializedObject.FindProperty("windVectors");
|
||||
|
||||
windSpeed = serializedObject.FindProperty("windSpeed");
|
||||
windStrength = serializedObject.FindProperty("windStrength");
|
||||
windAmplitude = serializedObject.FindProperty("windAmplitude");
|
||||
|
||||
trunkWindSpeed = serializedObject.FindProperty("trunkWindSpeed");
|
||||
trunkWindWeight = serializedObject.FindProperty("trunkWindWeight");
|
||||
trunkWindSwinging = serializedObject.FindProperty("trunkWindSwinging");
|
||||
}
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
serializedObject.Update();
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
//Sync inspector var to static class var
|
||||
visualizeVectors = WindController._visualizeVectors;
|
||||
|
||||
Undo.RecordObject(this, "Component");
|
||||
Undo.RecordObject(wc, "WindController");
|
||||
|
||||
DrawFields();
|
||||
|
||||
serializedObject.ApplyModifiedProperties();
|
||||
|
||||
if (GUI.changed || EditorGUI.EndChangeCheck())
|
||||
{
|
||||
EditorUtility.SetDirty((WindController)target);
|
||||
wc.Apply();
|
||||
|
||||
//Set the static var
|
||||
WindController.VisualizeVectors(visualizeVectors);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void DrawFields()
|
||||
{
|
||||
DoHeader();
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.PropertyField(windVectors);
|
||||
if (!windVectors.objectReferenceValue)
|
||||
{
|
||||
EditorGUILayout.HelpBox("Assign a wind vector map for wind to function", MessageType.Error);
|
||||
return;
|
||||
}
|
||||
|
||||
EditorGUILayout.PropertyField(listenToWindZone, new GUIContent("Listen to Wind Zone"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("When a Wind Zone is assigned, the wind strength and tree trunk weight values are divided by it's \"Main\" parameter value.\n\nThis allows you to use weather systems such as Enviro", MessageType.Info);
|
||||
if (listenToWindZone.boolValue)
|
||||
{
|
||||
EditorGUILayout.PropertyField(windZone, new GUIContent("Wind Zone"));
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
EditorGUILayout.LabelField("Wind settings", EditorStyles.toolbarButton);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.PropertyField(windSpeed, new GUIContent("Speed"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("The overall speed of the wind.", MessageType.Info);
|
||||
EditorGUILayout.PropertyField(windStrength, new GUIContent("Strength"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("The overall strength of the wind.", MessageType.Info);
|
||||
EditorGUILayout.PropertyField(windAmplitude, new GUIContent("Amplitude"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("The overall amplitude of the wind, essentially the size of wind waves.\n\nThe shader have a \"WindAmplitudeMultiplier\" parameter which multiplies this value in the material.", MessageType.Info);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.EndVertical();
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
|
||||
EditorGUILayout.LabelField("Tree trunks", EditorStyles.toolbarButton);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUILayout.PropertyField(trunkWindSpeed, new GUIContent("Speed"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("The speed by which the tree moves.", MessageType.Info);
|
||||
EditorGUILayout.PropertyField(trunkWindWeight, new GUIContent("Weight"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("The amount of influence the wind has on a tree.", MessageType.Info);
|
||||
EditorGUILayout.PropertyField(trunkWindSwinging, new GUIContent("Swinging"));
|
||||
if (showHelp) EditorGUILayout.HelpBox("A value higher than 0 means the trees will also move against the wind direction.", MessageType.Info);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
EditorGUILayout.EndVertical();
|
||||
|
||||
visualizeVectors = EditorGUILayout.Toggle("Visualize wind", visualizeVectors);
|
||||
if (showHelp) EditorGUILayout.HelpBox("Toggle a visualisation of the wind vectors on all the objects that use FAE shaders featuring wind.\n\nThis allows you to more clearly see the effects of the settings.", MessageType.Info);
|
||||
|
||||
GUIHelper.DrawFooter();
|
||||
}
|
||||
|
||||
private void DoHeader()
|
||||
{
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
showHelp = GUILayout.Toggle(showHelp, "Toggle help", "Button");
|
||||
GUILayout.Label("FAE Wind Controller", GUIHelper.Header);
|
||||
EditorGUILayout.EndHorizontal();
|
||||
if (showHelp) EditorGUILayout.HelpBox("This script drives the wind parameters of the Foliage, Grass, Tree Branch and Tree Trunk shaders.", MessageType.Info);
|
||||
}
|
||||
|
||||
[MenuItem("GameObject/3D Object/FAE Wind Controller")]
|
||||
private static void NewMenuOption()
|
||||
{
|
||||
WindController currentWindController = GameObject.FindObjectOfType<WindController>();
|
||||
if (currentWindController != null)
|
||||
{
|
||||
if (EditorUtility.DisplayDialog("FAE Wind Controller", "A WindController object already exists in your scene", "Create anyway", "Cancel"))
|
||||
{
|
||||
CreateNewWindController();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
CreateNewWindController();
|
||||
}
|
||||
}
|
||||
|
||||
private static void CreateNewWindController()
|
||||
{
|
||||
GameObject newWindController = new GameObject()
|
||||
{
|
||||
name = "Wind Controller"
|
||||
};
|
||||
newWindController.AddComponent<WindController>();
|
||||
|
||||
Selection.activeGameObject = newWindController;
|
||||
|
||||
Undo.RegisterCreatedObjectUndo(newWindController, "Created Wind Controller");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bba522f8ef960fb4dac08d178efef495
|
||||
timeCreated: 1510830180
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"name": "sc.fae.editor",
|
||||
"references": [
|
||||
"GUID:8c4644ab61e3e7d4d8f26823347fc459",
|
||||
"GUID:15fc0a57446b3144c949da3e2b9737a9"
|
||||
],
|
||||
"includePlatforms": [],
|
||||
"excludePlatforms": [
|
||||
"Android",
|
||||
"iOS",
|
||||
"LinuxStandalone64",
|
||||
"Lumin",
|
||||
"macOSStandalone",
|
||||
"PS4",
|
||||
"Stadia",
|
||||
"Switch",
|
||||
"tvOS",
|
||||
"WSA",
|
||||
"WebGL",
|
||||
"WindowsStandalone32",
|
||||
"WindowsStandalone64",
|
||||
"XboxOne"
|
||||
],
|
||||
"allowUnsafeCode": false,
|
||||
"overrideReferences": false,
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": [],
|
||||
"noEngineReferences": false
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 441a676d66e6f164b898797864bae8c4
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/Project Files/Materials.meta
Normal file
8
Assets/Project Files/Materials.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0e22b750ec806d64aa92567d0d0f70d6
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/Project Files/Materials/DogKnight.meta
Normal file
9
Assets/Project Files/Materials/DogKnight.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9728cb8ec5fa99441b90bfbaeab3521c
|
||||
folderAsset: yes
|
||||
timeCreated: 1544585029
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
79
Assets/Project Files/Materials/DogKnight/PBR.mat
Normal file
79
Assets/Project Files/Materials/DogKnight/PBR.mat
Normal file
@@ -0,0 +1,79 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: PBR
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION _METALLICGLOSSMAP _NORMALMAP
|
||||
m_LightmapFlags: 1
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 2800000, guid: fe860d9813d9fba43a6db2f1dc9d2044, type: 3}
|
||||
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: 2800000, guid: 46d9ba0af4052aa4f8b7f418c6350fdf, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MainTex:
|
||||
m_Texture: {fileID: 2800000, guid: 3c94236cfdd0fcc4b8fd91e7d12dabec, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MetallicGlossMap:
|
||||
m_Texture: {fileID: 2800000, guid: f4da30a223a78034fbc3c563d2a924a7, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _OcclusionMap:
|
||||
m_Texture: {fileID: 2800000, guid: ab3e8c0e82b3db8429abc130ac9e62d5, type: 3}
|
||||
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_Ints: []
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
m_BuildTextureStacks: []
|
||||
8
Assets/Project Files/Materials/DogKnight/PBR.mat.meta
Normal file
8
Assets/Project Files/Materials/DogKnight/PBR.mat.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: da05e49adf02c134f88f541992ee78d2
|
||||
timeCreated: 1540780855
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
79
Assets/Project Files/Materials/DogKnight/Polyart.mat
Normal file
79
Assets/Project Files/Materials/DogKnight/Polyart.mat
Normal file
@@ -0,0 +1,79 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Polyart
|
||||
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: 2800000, guid: 5b981358eaa6be84dbe67e39c78e448b, type: 3}
|
||||
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_Ints: []
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0
|
||||
- _GlossyReflections: 1
|
||||
- _Metallic: 0.3
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
m_BuildTextureStacks: []
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 421140039854e8c42938a8cb73d3480c
|
||||
timeCreated: 1550838312
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
89
Assets/Project Files/Materials/DogKnight/Skybox_Mat.mat
Normal file
89
Assets/Project Files/Materials/DogKnight/Skybox_Mat.mat
Normal file
@@ -0,0 +1,89 @@
|
||||
%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: Skybox_Mat
|
||||
m_Shader: {fileID: 106, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _METALLIC_SETUP _SUNDISK_HIGH_QUALITY
|
||||
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}
|
||||
- _SpecGlossMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _AtmosphereThickness: 0.53
|
||||
- _BumpScale: 1
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _Exposure: 1.25
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _SunDisk: 2
|
||||
- _SunSize: 0.04
|
||||
- _SunSizeConvergence: 5
|
||||
- _UVSec: 0
|
||||
- _WorkflowMode: 1
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _GroundColor: {r: 0.6392157, g: 0.6901961, b: 0.7411765, a: 1}
|
||||
- _SkyTint: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5f62bea3b5185c2488588e50d05df87f
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
84
Assets/Project Files/Materials/DogKnight/Stage.mat
Normal file
84
Assets/Project Files/Materials/DogKnight/Stage.mat
Normal file
@@ -0,0 +1,84 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Stage
|
||||
m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
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}
|
||||
- _SpecGlossMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0
|
||||
- _GlossyReflections: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 0.070576705, g: 0.12375813, b: 0.24528301, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SpecColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
m_BuildTextureStacks: []
|
||||
8
Assets/Project Files/Materials/DogKnight/Stage.mat.meta
Normal file
8
Assets/Project Files/Materials/DogKnight/Stage.mat.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4cafe8a18bb8d2a4794bfd7693442026
|
||||
timeCreated: 1544609680
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/Project Files/Materials/ExampleAssets.meta
Normal file
8
Assets/Project Files/Materials/ExampleAssets.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7e2c000a47cf74a35ba28043f5839c1e
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
77
Assets/Project Files/Materials/ExampleAssets/Controller.mat
Normal file
77
Assets/Project Files/Materials/ExampleAssets/Controller.mat
Normal file
@@ -0,0 +1,77 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Controller
|
||||
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: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 0.1792453, g: 0.1792453, b: 0.1792453, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3d2e36aacd7dc084b96e0755f1af4137
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
101
Assets/Project Files/Materials/ExampleAssets/Grid.mat
Normal file
101
Assets/Project Files/Materials/ExampleAssets/Grid.mat
Normal file
@@ -0,0 +1,101 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Grid
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 0
|
||||
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: 50, y: 50}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MainTex:
|
||||
m_Texture: {fileID: 2800000, guid: a5888ab2610a91d40a5deefc40b7bfe4, type: 3}
|
||||
m_Scale: {x: 100, y: 100}
|
||||
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}
|
||||
- _SpecGlossMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _BlendOp: 0
|
||||
- _BumpScale: 1
|
||||
- _CameraFadingEnabled: 0
|
||||
- _CameraFarFadeDistance: 2
|
||||
- _CameraNearFadeDistance: 1
|
||||
- _ColorMode: 0
|
||||
- _Cull: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DistortionBlend: 0.5
|
||||
- _DistortionEnabled: 0
|
||||
- _DistortionStrength: 1
|
||||
- _DistortionStrengthScaled: 0
|
||||
- _DstBlend: 0
|
||||
- _EmissionEnabled: 0
|
||||
- _FlipbookMode: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0
|
||||
- _GlossyReflections: 1
|
||||
- _LightingEnabled: 0
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SoftParticlesEnabled: 0
|
||||
- _SoftParticlesFarFadeDistance: 1
|
||||
- _SoftParticlesNearFadeDistance: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3f9336a53d1d2ea43895699cc52cb411
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,84 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Skybox Light
|
||||
m_Shader: {fileID: 106, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _SUNDISK_HIGH_QUALITY
|
||||
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:
|
||||
- _AtmosphereThickness: 1.54
|
||||
- _BumpScale: 1
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _Exposure: 1
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _SunDisk: 2
|
||||
- _SunSize: 0
|
||||
- _SunSizeConvergence: 5
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _GroundColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _SkyTint: {r: 0.5849056, g: 0.322448, b: 0, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3a408e788dcbed6429c8d22a01b32a76
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6179aae4ed923a747b082b57ea6f814b
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fb6c0e64cadbf1d40848375426433efe
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,119 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: FAE_AdditiveParticle
|
||||
m_Shader: {fileID: 210, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _ALPHABLEND_ON _FADING_ON
|
||||
m_LightmapFlags: 0
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: 3000
|
||||
stringTagMap:
|
||||
RenderType: Transparent
|
||||
disabledShaderPasses:
|
||||
- ALWAYS
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _Alpha:
|
||||
m_Texture: {fileID: 10300, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _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}
|
||||
- _Diffuse:
|
||||
m_Texture: {fileID: -803380585, guid: d7dd9c87a38759643b443947f2b96d7d, type: 3}
|
||||
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: 10300, guid: 0000000000000000f000000000000000, type: 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}
|
||||
- _node_2965:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _texcoord:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _BlendOp: 0
|
||||
- _BumpScale: 1
|
||||
- _CameraFadingEnabled: 1
|
||||
- _CameraFarFadeDistance: 2
|
||||
- _CameraNearFadeDistance: 1
|
||||
- _Cull: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DistortionBlend: 0.5
|
||||
- _DistortionEnabled: 0
|
||||
- _DistortionStrength: 1
|
||||
- _DistortionStrengthScaled: 0
|
||||
- _DstBlend: 1
|
||||
- _EmissionEnabled: 0
|
||||
- _Fadedistance: 0.5
|
||||
- _FlipbookMode: 0
|
||||
- _Gloss: 0.5
|
||||
- _Glossiness: 0.5
|
||||
- _Intersectionfade: 20
|
||||
- _InvFade: 1
|
||||
- _LightingEnabled: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 4
|
||||
- _Noisesize: 0.006
|
||||
- _OcclusionStrength: 1
|
||||
- _Opacity: 0.138
|
||||
- _Parallax: 0.02
|
||||
- _SoftParticlesEnabled: 1
|
||||
- _SoftParticlesFarFadeDistance: 1
|
||||
- _SoftParticlesNearFadeDistance: 0
|
||||
- _SrcBlend: 5
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 0
|
||||
- __dirty: 0
|
||||
- _node_1319: 10
|
||||
- _node_3718: 24.9
|
||||
m_Colors:
|
||||
- _CameraFadeParams: {r: 1, g: 1, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SoftParticleFadeParams: {r: 0, g: 1, b: 0, a: 0}
|
||||
- _SpecColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6f7eb092bd8c5744984d49b87e9aeafc
|
||||
timeCreated: 1470398566
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,97 @@
|
||||
%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: FAE_FogPlane
|
||||
m_Shader: {fileID: 4800000, guid: c4e2a600b2735e74181398aa332ae9e2, type: 3}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 0
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _Alpha:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _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}
|
||||
- _Dust:
|
||||
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}
|
||||
- _texcoord:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _Cutoff: 0.5
|
||||
- _Depth: 8
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _DustSpeed: 0
|
||||
- _DustStrength: 1
|
||||
- _Emission: 1
|
||||
- _Factor: 0.1
|
||||
- _FadeDistance: 0.01
|
||||
- _Float0: 0.805
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _Pow: 1
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
- __dirty: 0
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 0}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bc8486fd976709b49afe3c08749c84b2
|
||||
timeCreated: 1494782066
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,97 @@
|
||||
%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: FAE_FogPlaneDark
|
||||
m_Shader: {fileID: 4800000, guid: c4e2a600b2735e74181398aa332ae9e2, type: 3}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 0
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _Alpha:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _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}
|
||||
- _Dust:
|
||||
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}
|
||||
- _texcoord:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _Cutoff: 0.5
|
||||
- _Depth: 8
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _DustSpeed: 0
|
||||
- _DustStrength: 1
|
||||
- _Emission: 1
|
||||
- _Factor: 1
|
||||
- _FadeDistance: 0.01
|
||||
- _Float0: 0.805
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _Pow: 1
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
- __dirty: 0
|
||||
m_Colors:
|
||||
- _Color: {r: 0.18382353, g: 0.18382353, b: 0.18382353, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c71fd5bf700b6654381c77c2ba630425
|
||||
timeCreated: 1494782066
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,98 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: FAE_FogsheetsParticle
|
||||
m_Shader: {fileID: 210, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _ALPHABLEND_ON _FADING_ON
|
||||
m_LightmapFlags: 0
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: 3000
|
||||
stringTagMap:
|
||||
RenderType: Transparent
|
||||
disabledShaderPasses:
|
||||
- ALWAYS
|
||||
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: 2800000, guid: 844dae9f5057cb141bb303905ef379fa, type: 3}
|
||||
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:
|
||||
- _BlendOp: 0
|
||||
- _BumpScale: 1
|
||||
- _CameraFadingEnabled: 1
|
||||
- _CameraFarFadeDistance: 34.31
|
||||
- _CameraNearFadeDistance: 7.95
|
||||
- _Cull: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DistortionBlend: 0.5
|
||||
- _DistortionEnabled: 0
|
||||
- _DistortionStrength: 1
|
||||
- _DistortionStrengthScaled: 0
|
||||
- _DstBlend: 1
|
||||
- _EmissionEnabled: 0
|
||||
- _FlipbookMode: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _InvFade: 0.06
|
||||
- _LightingEnabled: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 4
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SoftParticlesEnabled: 1
|
||||
- _SoftParticlesFarFadeDistance: 6.24
|
||||
- _SoftParticlesNearFadeDistance: 0.65
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 5
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 0
|
||||
m_Colors:
|
||||
- _CameraFadeParams: {r: 7.95, g: 0.037936267, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SoftParticleFadeParams: {r: 0.65, g: 0.17889088, b: 0, a: 0}
|
||||
- _TintColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9607c63bc2492fd489245838e7b101fb
|
||||
timeCreated: 1497612061
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,100 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: FAE_LeafParticle
|
||||
m_Shader: {fileID: 210, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _ALPHATEST_ON
|
||||
m_LightmapFlags: 0
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: 2450
|
||||
stringTagMap:
|
||||
RenderType: TransparentCutout
|
||||
disabledShaderPasses:
|
||||
- ALWAYS
|
||||
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: 2800000, guid: cc92f22ef59deb346855e78f7f0e23d9, type: 3}
|
||||
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:
|
||||
- PixelSnap: 0
|
||||
- _BlendOp: 0
|
||||
- _BumpScale: 1
|
||||
- _CameraFadingEnabled: 0
|
||||
- _CameraFarFadeDistance: 2
|
||||
- _CameraNearFadeDistance: 1
|
||||
- _Cull: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DistortionBlend: 0.5
|
||||
- _DistortionEnabled: 0
|
||||
- _DistortionStrength: 1
|
||||
- _DistortionStrengthScaled: 0
|
||||
- _DstBlend: 0
|
||||
- _EmissionEnabled: 0
|
||||
- _FlipbookMode: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _InvFade: 3
|
||||
- _LightingEnabled: 1
|
||||
- _Metallic: 0
|
||||
- _Mode: 1
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SoftParticlesEnabled: 0
|
||||
- _SoftParticlesFarFadeDistance: 1
|
||||
- _SoftParticlesNearFadeDistance: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmisColor: {r: 0.49803922, g: 0.49803922, b: 0.49803922, a: 0}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _TintColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: eb90cfcfbc575f6489371b97e180f526
|
||||
timeCreated: 1496319857
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,47 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!121 &12100000
|
||||
Flare:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: FAE_Lensflare
|
||||
m_FlareTexture: {fileID: 2800000, guid: 300a963095cf5804bad4cf0beeb32a6f, type: 3}
|
||||
m_TextureLayout: 3
|
||||
m_Elements:
|
||||
- m_ImageIndex: 0
|
||||
m_Position: 0
|
||||
m_Size: 90
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_UseLightColor: 1
|
||||
m_Rotate: 0
|
||||
m_Zoom: 0
|
||||
m_Fade: 1
|
||||
- m_ImageIndex: 1
|
||||
m_Position: 0
|
||||
m_Size: 50
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_UseLightColor: 1
|
||||
m_Rotate: 0
|
||||
m_Zoom: 1
|
||||
m_Fade: 1
|
||||
- m_ImageIndex: 2
|
||||
m_Position: 1.02
|
||||
m_Size: 10.82
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_UseLightColor: 1
|
||||
m_Rotate: 0
|
||||
m_Zoom: 0
|
||||
m_Fade: 1
|
||||
- m_ImageIndex: 3
|
||||
m_Position: 2.5
|
||||
m_Size: 7.3
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_UseLightColor: 1
|
||||
m_Rotate: 0
|
||||
m_Zoom: 0
|
||||
m_Fade: 1
|
||||
m_UseFog: 1
|
||||
--- !u!1002 &12100001
|
||||
EditorExtensionImpl:
|
||||
serializedVersion: 6
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9365737486dc4424f93336e7c4c9144a
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,60 @@
|
||||
%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: FAE_Sunshaft
|
||||
m_Shader: {fileID: 4800000, guid: 207d061f2df3384459a18b85d0e4ca71, type: 3}
|
||||
m_ShaderKeywords:
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _Alpha:
|
||||
m_Texture: {fileID: -804463737, guid: 9afc9fffc8d5eb04fbf46f8da66a5439, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MainTex:
|
||||
m_Texture: {fileID: 2800000, guid: bef6984f846f11442b4bd5000f44af64, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Texture:
|
||||
m_Texture: {fileID: -804463737, guid: 9afc9fffc8d5eb04fbf46f8da66a5439, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Texture0:
|
||||
m_Texture: {fileID: -804463737, guid: 9afc9fffc8d5eb04fbf46f8da66a5439, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _TextureSample1:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _texcoord:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _Cutoff: 0.5
|
||||
- _Emission: 2.37
|
||||
- _Fadedistance: 6.1
|
||||
- _IntersectionFade: 9.92
|
||||
- _Intersectionfade: 9.6
|
||||
- _InvFade: 1
|
||||
- _MaskClipValue: 0.5
|
||||
- _Opacity: 0.5
|
||||
- _PanningSpeed: 0.23
|
||||
- _ToggleSwitch0: 0
|
||||
- _UseLightColor: 1
|
||||
- __dirty: 0
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 0}
|
||||
- _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d5b77898dc615b742a3cfa8741f9ce3b
|
||||
timeCreated: 1496404183
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,100 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: FAE_SunshaftParticle
|
||||
m_Shader: {fileID: 4800000, guid: 9fe67a59c15773a4a8bdbf006a7e43c5, type: 3}
|
||||
m_ShaderKeywords:
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _Alpha:
|
||||
m_Texture: {fileID: -804463737, guid: 9afc9fffc8d5eb04fbf46f8da66a5439, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _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}
|
||||
- _Diffuse:
|
||||
m_Texture: {fileID: -803380585, guid: d7dd9c87a38759643b443947f2b96d7d, type: 3}
|
||||
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: 2800000, guid: bef6984f846f11442b4bd5000f44af64, type: 3}
|
||||
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}
|
||||
- _node_2965:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _texcoord:
|
||||
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
|
||||
- _Fadedistance: 12.3
|
||||
- _Gloss: 0.5
|
||||
- _Glossiness: 0.5
|
||||
- _Intersectionfade: 20
|
||||
- _InvFade: 0.34
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _Noisesize: 0.006
|
||||
- _OcclusionStrength: 1
|
||||
- _Opacity: 0.115
|
||||
- _Parallax: 0.02
|
||||
- _SrcBlend: 1
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 1
|
||||
- __dirty: 0
|
||||
- _node_1319: 10
|
||||
- _node_3718: 24.9
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SpecColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _TintColor: {r: 1, g: 1, b: 1, a: 0.459}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4c34341261dd5284d98c48e163e04a91
|
||||
timeCreated: 1470398566
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,113 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: FAE_Water
|
||||
m_Shader: {fileID: 4800000, guid: f8df9d72baf4e0c4bac2d4036f6c5d7b, type: 3}
|
||||
m_ShaderKeywords: _WORLDSPACETILING_ON
|
||||
m_LightmapFlags: 5
|
||||
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}
|
||||
- _Normals:
|
||||
m_Texture: {fileID: 2800000, guid: 1a1e99c7f4bb0a4479e4e5c835fd6c98, type: 3}
|
||||
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}
|
||||
- _Reflection:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _RefractionmapEdgeB:
|
||||
m_Texture: {fileID: 223006684, guid: 557c5daa3682e654fb1b3bcb0f2981ce, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Shadermap:
|
||||
m_Texture: {fileID: 2800000, guid: f3a337f61eb58134f97ca1b4183a2ebf, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- _BumpScale: 1
|
||||
- _Cutoff: 0.5
|
||||
- _Depth: 5.6
|
||||
- _Depthdarkness: 0.58
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DstBlend: 0
|
||||
- _FlowSpeed: 0.3
|
||||
- _Fresnelexponent: 4
|
||||
- _Glossiness: 0.097
|
||||
- _HighlightPanning: 0
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _RefractionAmount: 0
|
||||
- _RimDistance: 0
|
||||
- _RimSize: 4
|
||||
- _Rimfalloff: 0.25
|
||||
- _Rimtiling: 0.79
|
||||
- _SrcBlend: 1
|
||||
- _SurfaceHighlight: 0.101
|
||||
- _SurfaceHightlighttiling: 0.25
|
||||
- _Surfacehightlightsize: 0
|
||||
- _TesselationEdgeLengt: 0.15
|
||||
- _Tiling: 0.26
|
||||
- _Transparency: 0.441
|
||||
- _UVSec: 0
|
||||
- _UseIntersectionHighlight: 1
|
||||
- _Wavesspeed: 0.37
|
||||
- _Wavesstrength: 0
|
||||
- _Wavetint: 0.051
|
||||
- _Worldspacetiling: 1
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _FresnelColor: {r: 1, g: 1, b: 1, a: 0.5019608}
|
||||
- _RimColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _WaterColor: {r: 0.17025882, g: 0.54230595, b: 0.804, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 510ef6177dc68c24b853414d9ec6612d
|
||||
timeCreated: 1490281498
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,100 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: FAE_WindStreakTrail
|
||||
m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _ALPHABLEND_ON _COLORADDSUBDIFF_ON
|
||||
m_LightmapFlags: 0
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: 3000
|
||||
stringTagMap:
|
||||
RenderType: Transparent
|
||||
disabledShaderPasses:
|
||||
- ALWAYS
|
||||
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:
|
||||
- _BlendOp: 0
|
||||
- _BumpScale: 1
|
||||
- _CameraFadingEnabled: 0
|
||||
- _CameraFarFadeDistance: 2
|
||||
- _CameraNearFadeDistance: 1
|
||||
- _ColorMode: 1
|
||||
- _Cull: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DistortionBlend: 0.5
|
||||
- _DistortionEnabled: 0
|
||||
- _DistortionStrength: 1
|
||||
- _DistortionStrengthScaled: 0
|
||||
- _DstBlend: 1
|
||||
- _EmissionEnabled: 0
|
||||
- _FlipbookMode: 0
|
||||
- _GlossMapScale: 1
|
||||
- _Glossiness: 0.5
|
||||
- _GlossyReflections: 1
|
||||
- _InvFade: 0.01
|
||||
- _LightingEnabled: 0
|
||||
- _Metallic: 0
|
||||
- _Mode: 4
|
||||
- _OcclusionStrength: 1
|
||||
- _Parallax: 0.02
|
||||
- _SmoothnessTextureChannel: 0
|
||||
- _SoftParticlesEnabled: 0
|
||||
- _SoftParticlesFarFadeDistance: 1
|
||||
- _SoftParticlesNearFadeDistance: 0
|
||||
- _SpecularHighlights: 1
|
||||
- _SrcBlend: 5
|
||||
- _UVSec: 0
|
||||
- _ZWrite: 0
|
||||
m_Colors:
|
||||
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 0.15294118}
|
||||
- _ColorAddSubDiff: {r: 1, g: 0, b: 0, a: 0}
|
||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _TintColor: {r: 1, g: 1, b: 1, a: 0.078431375}
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 76d5aaedf8aab6646b89b30a06c9a90d
|
||||
timeCreated: 1522780908
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5fba1977a4da91d4ea67e34aa4151a53
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
@@ -0,0 +1,92 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 844dae9f5057cb141bb303905ef379fa
|
||||
timeCreated: 1521302365
|
||||
licenseType: Store
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 4
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
filterMode: -1
|
||||
aniso: -1
|
||||
mipBias: -1
|
||||
wrapMode: -1
|
||||
nPOTScale: 1
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: iPhone
|
||||
maxTextureSize: 256
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
spritePackingTag:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 46 KiB |
@@ -0,0 +1,92 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 300a963095cf5804bad4cf0beeb32a6f
|
||||
timeCreated: 1525030036
|
||||
licenseType: Store
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 4
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: -1
|
||||
mipBias: -1
|
||||
wrapMode: -1
|
||||
nPOTScale: 1
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaUsage: 0
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
spritePackingTag:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 114 KiB |
@@ -0,0 +1,68 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bef6984f846f11442b4bd5000f44af64
|
||||
timeCreated: 1521302442
|
||||
licenseType: Store
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 4
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
filterMode: -1
|
||||
aniso: -1
|
||||
mipBias: -1
|
||||
wrapMode: -1
|
||||
nPOTScale: 1
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
textureShape: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
spritePackingTag:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 77 KiB |
@@ -0,0 +1,92 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a1e99c7f4bb0a4479e4e5c835fd6c98
|
||||
timeCreated: 1521301982
|
||||
licenseType: Store
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 4
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
filterMode: -1
|
||||
aniso: -1
|
||||
mipBias: -1
|
||||
wrapMode: -1
|
||||
nPOTScale: 1
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 1
|
||||
textureShape: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
- buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
spritePackingTag:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
@@ -0,0 +1,103 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1aebbb812b32bde4b8eb211cdcaa87d6
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 10
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
sRGBTexture: 0
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: -1
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
wrapU: -1
|
||||
wrapV: -1
|
||||
wrapW: -1
|
||||
nPOTScale: 1
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 1
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID:
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user