Compare commits

...

26 Commits

Author SHA1 Message Date
4745d7fef0 feat: Ship rotates towards joystick direction, health property, death match decider, better hit detection 2024-06-12 13:45:59 +02:00
a38acd711f fix: switched to late update in camera operator to smooth movements 2024-06-12 13:44:26 +02:00
4e771f3076 feat: playing field boundary remodeled and now acts as a force field to forgive flying mistakes 2024-06-12 13:42:58 +02:00
68ecddd9ca feat: 3D off-screen indicators for items&players, gravity changer objects 2024-06-12 13:41:57 +02:00
c7154c1895 feat: replaced boost hud with segment ui around ship, new damage number particle spawner 2024-06-12 13:39:18 +02:00
d2169f846b feat: collectible weapons and collectible spawner 2024-06-12 13:36:20 +02:00
f977b3c71d feat: changes in materials and new variants 2024-06-12 13:35:13 +02:00
641dfe5078 feat: changed input to radial for controller axis 2024-06-12 13:34:13 +02:00
aff9e88a93 feat: changed FORGE3D Sci-Fi Effects to fit my needs better 2024-06-12 13:31:29 +02:00
7a3e0e0a69 feat: beginning to animate ship death/explosion 2024-06-12 13:30:02 +02:00
8eca56c0fd fix: Gravity changers working, gravity strength now in character properties 2024-05-21 14:19:35 +02:00
9e96946b1a feat: gravity changer; smaller orbs which change gravity instantly 2024-05-20 19:23:04 +02:00
fc7d9a3004 feat: testing FishNet RigidBody prediction, Ship logic refactor 2024-05-20 18:56:32 +02:00
2879e82429 fix: change ships color when spawning 2024-05-14 15:01:55 +02:00
cca4b75827 feat: Ships set color of mesh over property -> less prefab variants, improved hit feedback, improved meshes and Triggers 2024-05-14 15:00:55 +02:00
83ce65aec0 fix: smoother and faster zoom for the MatchCamera 2024-05-14 14:56:40 +02:00
f40434d804 fix: increased 3DAudio Fade Distance 2024-05-14 14:55:34 +02:00
60ac764019 chore: now using HotReload for Unity 2024-05-14 14:30:22 +02:00
b69f2aff47 chore: updated FishNet 2024-05-14 14:29:29 +02:00
79a147dead chore: updated primetween 2024-05-14 14:28:36 +02:00
ed677a9419 chore: tweaked the projectile volume, enabled firing again, changed the F3D object pool and sounds to consume less space in the scene 2024-05-09 15:20:22 +02:00
ce48ac64b8 feat: allow F3D projectiles to register a hit on hit feedback targets 2024-05-09 15:19:01 +02:00
9ac205b950 feat: controll forge3ds overall volume 2024-05-09 15:17:51 +02:00
d4829e572b fix: reset score, only show in free flight 2024-05-08 18:56:26 +02:00
d2c59a32eb fix: added F3DForge Assets 2024-05-08 18:37:59 +02:00
4ea75d7758 feat: score mode for free flight (requires more assets) 2024-05-08 18:37:22 +02:00
2396 changed files with 2318611 additions and 10812 deletions

2
.gitignore vendored
View File

@ -78,4 +78,4 @@ crashlytics-build.properties
*.log
# Local only Asset Store Libraries & Assets
/[Aa]ssets/FORGE3D/*
#/[Aa]ssets/FORGE3D/*

View File

@ -13,8 +13,8 @@ MonoBehaviour:
m_Name: Simulator Provider Settings
m_EditorClassIdentifier:
m_Logging: 1
m_AutomaticPerformanceModeEnabled: 1
m_EnableBoostOnStartup: 1
m_AutomaticPerformanceModeEnabled: 0
m_EnableBoostOnStartup: 0
m_StatsLoggingFrequencyInFrames: 30
m_IndexerSettings:
m_Active: 1

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7e04426ec3811c4439a20fc6f21abb62
guid: cd35831ee72c5f1459022254504c70ff
folderAsset: yes
DefaultImporter:
externalObjects: {}

Binary file not shown.

View File

@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: bb51447f4816c95409a0f2dd1a20e638
AudioImporter:
externalObjects: {}
serializedVersion: 7
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -15,6 +15,7 @@ MonoBehaviour:
_prefabs:
- {fileID: 6141811525297683108, guid: abf4376f1c6f28241b1125c0eac87199, type: 3}
- {fileID: 6527384552577148640, guid: 7b71eecaf6568a847b4b8415852f9e98, type: 3}
- {fileID: 6696145061262954739, guid: 6bef8667f8847d440b83722af55e8d58, type: 3}
- {fileID: 4320456058255827552, guid: 65cd4fa5e050652409dd9b062365c7e8, type: 3}
- {fileID: 394654179909484550, guid: 9f3e27e33167d704e941e42ded557111, type: 3}
- {fileID: 394654179909484550, guid: 5934082513feac04a9b875fc86abe70b, type: 3}
@ -25,6 +26,4 @@ MonoBehaviour:
- {fileID: 4512293259955182956, guid: f32d4c19de900e64cb73cedcb8ba6f70, type: 3}
- {fileID: 4512293259955182956, guid: 300370bdf7819da41937e0beac65b32c, type: 3}
- {fileID: 611616139817875448, guid: bf5f023b4017a5e41a9815ec5745df3d, type: 3}
- {fileID: 201277550, guid: 5b712878ecece354ba4ffb026c0a221c, type: 3}
- {fileID: 201277550, guid: 8ef354bfc16ca8a459074c3fa9b6727e, type: 3}
- {fileID: 8192566354860284824, guid: 6331b3542e64a564c81bc39cedf70c8d, type: 3}

View File

@ -107,7 +107,7 @@ Material:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 0, g: 0.09206629, b: 1, a: 1}
- _Color: {r: 0.13830546, g: 0.39991698, b: 0.6603774, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Offset: {r: 0, g: 0, b: 0, a: 0}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 29d7fd53a109938428ece2660c6bbf25
guid: 148891fa06cd3324e94f99af935e05f1
folderAsset: yes
DefaultImporter:
externalObjects: {}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: ce59e020d922ccb43866dee1ba26a673
NativeFormatImporter:
userData:

View File

@ -0,0 +1,438 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &100000
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400000}
- component: {fileID: 3300000}
- component: {fileID: 2300000}
m_Layer: 0
m_Name: Quad
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400000
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
serializedVersion: 2
m_LocalRotation: {x: 0.5, y: -0.5, z: 0.5, w: 0.5}
m_LocalPosition: {x: 0, y: 0, z: 0.3}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 90}
--- !u!33 &3300000
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2300000
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 849ee61d0cd846d459debdd3ba11ad39, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &100002
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400002}
- component: {fileID: 3300002}
- component: {fileID: 2300002}
m_Layer: 0
m_Name: laser_impulse_flare_01
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400002
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3300002
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
m_Mesh: {fileID: 4300000, guid: 59cbf749c8d19d646ab8ff8264537470, type: 3}
--- !u!23 &2300002
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 8a167afabb144844ca4bd1d2d8536aab, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &100004
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400004}
- component: {fileID: 11400000}
- component: {fileID: 11400002}
m_Layer: 0
m_Name: laser_impulse_muzzle_001_example
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400004
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 400000}
- {fileID: 400006}
- {fileID: 400002}
- {fileID: 400008}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: af19da7458dc9174699d0b34f404eafc, type: 3}
m_Name:
m_EditorClassIdentifier:
DespawnDelay: 0.05
DespawnOnMouseUp: 0
--- !u!114 &11400002
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a5df3c5f0444ba74991107c0d882530e, type: 3}
m_Name:
m_EditorClassIdentifier:
RandomScale: 1
RandomRotation: 1
MinScale: 2
MaxScale: 2.5
MinRotation: -360
MaxRotaion: 360
--- !u!1 &100006
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400006}
- component: {fileID: 3300004}
- component: {fileID: 2300004}
m_Layer: 0
m_Name: Quad
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400006
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0.3}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 0, y: -90, z: 0}
--- !u!33 &3300004
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2300004
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 849ee61d0cd846d459debdd3ba11ad39, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &100008
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400008}
- component: {fileID: 10800000}
- component: {fileID: 6075481213358509553}
m_Layer: 0
m_Name: Point light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400008
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100008}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0.6}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!108 &10800000
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100008}
m_Enabled: 1
serializedVersion: 10
m_Type: 2
m_Shape: 0
m_Color: {r: 0.49610725, g: 0.756968, b: 0.9117647, a: 1}
m_Intensity: 1.224007
m_Range: 250
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 1
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 0.546
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 1
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!114 &6075481213358509553
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100008}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 0

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: 45116fb1512dc704b99d70267628129a
NativeFormatImporter:
userData:

View File

@ -0,0 +1,246 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &100002
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400002}
- component: {fileID: 3300002}
- component: {fileID: 2300002}
m_Layer: 0
m_Name: Quad
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400002
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
serializedVersion: 2
m_LocalRotation: {x: 0.5, y: 0.5, z: -0.5, w: 0.5}
m_LocalPosition: {x: 0, y: 0.000000019868, z: -0.32}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 90, y: 90, z: 0}
--- !u!33 &3300002
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2300002
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 1e508354b29f3aa47bd4313ce2f9c4b3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &100004
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400004}
- component: {fileID: 11400000}
- component: {fileID: 11400002}
m_Layer: 0
m_Name: laser_impulse_projectile_001_example
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400004
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 3, y: 3, z: 3}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4000010027762468}
- {fileID: 400002}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 71d84e8c92ffdf1438c9798f91d60981, type: 3}
m_Name:
m_EditorClassIdentifier:
fxType: 11
layerMask:
serializedVersion: 2
m_Bits: 136
Damage: 150
BlastMagnitude: 100
OwnerId: 0
LifeTime: 5
despawnDelay: 0
velocity: 300
RaycastAdvance: 2
DelayDespawn: 0
delayedParticles: []
--- !u!114 &11400002
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a5df3c5f0444ba74991107c0d882530e, type: 3}
m_Name:
m_EditorClassIdentifier:
RandomScale: 1
RandomRotation: 1
MinScale: 1
MaxScale: 1.3
MinRotation: -360
MaxRotaion: 360
--- !u!1 &1000010589384354
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4000010027762468}
- component: {fileID: 33000011791246272}
- component: {fileID: 23000012998755208}
m_Layer: 0
m_Name: Quad
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4000010027762468
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1000010589384354}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0.000000019868, z: -0.32}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0}
--- !u!33 &33000011791246272
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1000010589384354}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &23000012998755208
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1000010589384354}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 1e508354b29f3aa47bd4313ce2f9c4b3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: 64703ac190f718b4abd5d10cb23c96ce
NativeFormatImporter:
userData:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: a5251bb5b54465f43aebe1ddc2724566
NativeFormatImporter:
userData:

View File

@ -0,0 +1,200 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &100000
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400000}
- component: {fileID: 12000000}
- component: {fileID: 11400000}
- component: {fileID: 11400002}
m_Layer: 0
m_Name: railgun_beam_example
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400000
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!120 &12000000
LineRenderer:
serializedVersion: 2
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 0
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 02d98d3e075abb54699f8767f8d28acc, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Positions:
- {x: 0, y: 0, z: 0}
- {x: 0, y: 0, z: 20.635729}
m_Parameters:
serializedVersion: 3
widthMultiplier: 5
widthCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
colorGradient:
serializedVersion: 2
key0: {r: 0, g: 0, b: 0, a: 0}
key1: {r: 1, g: 1, b: 1, a: 1}
key2: {r: 0, g: 0, b: 0, a: 0}
key3: {r: 0, g: 0, b: 0, a: 0}
key4: {r: 0, g: 0, b: 0, a: 0}
key5: {r: 0, g: 0, b: 0, a: 0}
key6: {r: 0, g: 0, b: 0, a: 0}
key7: {r: 0, g: 0, b: 0, a: 0}
ctime0: 0
ctime1: 65535
ctime2: 0
ctime3: 0
ctime4: 0
ctime5: 0
ctime6: 0
ctime7: 0
atime0: 0
atime1: 65535
atime2: 0
atime3: 0
atime4: 0
atime5: 0
atime6: 0
atime7: 0
m_Mode: 0
m_ColorSpace: -1
m_NumColorKeys: 2
m_NumAlphaKeys: 2
numCornerVertices: 0
numCapVertices: 0
alignment: 0
textureMode: 0
textureScale: {x: 1, y: 1}
shadowBias: 0
generateLightingData: 0
m_MaskInteraction: 0
m_UseWorldSpace: 0
m_Loop: 0
m_ApplyActiveColorSpace: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1a9aefbed78059c4c965f18823e35186, type: 3}
m_Name:
m_EditorClassIdentifier:
layerMask:
serializedVersion: 2
m_Bits: 136
Damage: 350
BlastMagnitude: 350
OwnerId: 0
fxType: 5
OneShot: 0
BeamFrames:
- {fileID: 2800000, guid: 93d10af4c9d98aa48abb06818e0ab192, type: 3}
- {fileID: 2800000, guid: ebe4a3a4b5a73e549b0a5fd41d68055b, type: 3}
- {fileID: 2800000, guid: 93d10af4c9d98aa48abb06818e0ab192, type: 3}
- {fileID: 2800000, guid: a2f07b5cb2b81df4b86d26ab154d3428, type: 3}
- {fileID: 2800000, guid: 9e3e7b744a9000b47bd119407901883e, type: 3}
- {fileID: 2800000, guid: 27902bce14e1426458b95b61529df591, type: 3}
- {fileID: 2800000, guid: 2d881a42970c3bf49a33a86d37863a63, type: 3}
- {fileID: 2800000, guid: 002dec3506bbef94c9f2cb757ccf0ef1, type: 3}
FrameStep: 0.02
beamScale: 0
MaxBeamLength: 500
AnimateUV: 0
UVTime: 0
rayImpact: {fileID: 0}
rayMuzzle: {fileID: 0}
fxOffset: 0
--- !u!114 &11400002
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: af19da7458dc9174699d0b34f404eafc, type: 3}
m_Name:
m_EditorClassIdentifier:
DespawnDelay: 0.07
DespawnOnMouseUp: 0

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: ec0fb8bef2fb8a5459c55c3700521b70
NativeFormatImporter:
userData:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: 2e92e894e0311c14c87f9544b2c88693
NativeFormatImporter:
userData:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: 83319fcfeef06cf4288182309b1387d0
NativeFormatImporter:
userData:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: 25381a5e43841e943a27b043442b2b4d
NativeFormatImporter:
userData:

View File

@ -0,0 +1,354 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &100000
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400000}
- component: {fileID: 3300000}
- component: {fileID: 2300000}
m_Layer: 0
m_Name: Quad
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400000
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0.7987106}
m_LocalScale: {x: 2.2, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 0, y: -90, z: 0}
--- !u!33 &3300000
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2300000
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 931f12332f881b342980bc9900f15441, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &100002
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400002}
- component: {fileID: 3300002}
- component: {fileID: 2300002}
m_Layer: 0
m_Name: Quad
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400002
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
serializedVersion: 2
m_LocalRotation: {x: 0.5, y: -0.5, z: 0.5, w: 0.5}
m_LocalPosition: {x: 0, y: 0, z: 0.7987106}
m_LocalScale: {x: 2.2, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 90}
--- !u!33 &3300002
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2300002
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 931f12332f881b342980bc9900f15441, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &100004
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400004}
- component: {fileID: 11400000}
- component: {fileID: 11400002}
m_Layer: 0
m_Name: seeker_bolt_muzzle_example
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400004
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 400002}
- {fileID: 400000}
- {fileID: 400006}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: af19da7458dc9174699d0b34f404eafc, type: 3}
m_Name:
m_EditorClassIdentifier:
DespawnDelay: 0.05
DespawnOnMouseUp: 0
--- !u!114 &11400002
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a5df3c5f0444ba74991107c0d882530e, type: 3}
m_Name:
m_EditorClassIdentifier:
RandomScale: 1
RandomRotation: 1
MinScale: 0.8
MaxScale: 1.1
MinRotation: -360
MaxRotaion: 360
--- !u!1 &100006
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400006}
- component: {fileID: 10800000}
- component: {fileID: 8317281421139234932}
m_Layer: 0
m_Name: Point light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400006
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0.6052952}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400004}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!108 &10800000
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
m_Enabled: 1
serializedVersion: 10
m_Type: 2
m_Shape: 0
m_Color: {r: 1, g: 0.82941175, b: 0.5735294, a: 1}
m_Intensity: 1.2311152
m_Range: 250
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 1
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 0.536
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 1
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!114 &8317281421139234932
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 0

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: 235092330dd93ce4ab3f64b4b4b9c354
NativeFormatImporter:
userData:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: fd953838f1872d042a334b466e298967
NativeFormatImporter:
userData:

View File

@ -0,0 +1,221 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1001 &6391351660618341151
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 100008, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 100010, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 100012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_Name
value: solo_gun_flare_trail Variant
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.startSize.minScalar
value: 0.94
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.atime1
value: 2120
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.atime2
value: 62837
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.atime3
value: 65535
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.atime4
value: 65535
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.atime5
value: 65535
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.atime6
value: 65535
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.key2.a
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.key3.a
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.key4.a
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.key5.a
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.key6.a
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ColorModule.gradient.maxGradient.m_NumAlphaKeys
value: 4
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ShapeModule.enabled
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: ShapeModule.radius.value
value: 0.09
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.startSize.scalar
value: 5
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.startSize.minScalar
value: 0.94
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.startColor.maxColor.a
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.startColor.maxColor.b
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.startColor.maxColor.g
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.startColor.maxColor.r
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.gravityModifier.scalar
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800006, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
propertyPath: InitialModule.startSize.minScalar
value: 8.07
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 100012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
insertIndex: -1
addedObject: {fileID: -8093627500212825932}
- targetCorrespondingSourceObject: {fileID: 100012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
insertIndex: -1
addedObject: {fileID: 8214279908182662867}
m_SourcePrefab: {fileID: 100100000, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
--- !u!1 &6391351660618440115 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 100012, guid: 157253c33b5e2ae4c99dd92c193b5413, type: 3}
m_PrefabInstance: {fileID: 6391351660618341151}
m_PrefabAsset: {fileID: 0}
--- !u!114 &-8093627500212825932
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6391351660618440115}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 71d84e8c92ffdf1438c9798f91d60981, type: 3}
m_Name:
m_EditorClassIdentifier:
fxType: 1
layerMask:
serializedVersion: 2
m_Bits: 136
Damage: 200
BlastMagnitude: 200
OwnerId: 0
LifeTime: 5
despawnDelay: 0
velocity: 200
RaycastAdvance: 2
DelayDespawn: 0
delayedParticles: []
--- !u!114 &8214279908182662867
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6391351660618440115}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a5df3c5f0444ba74991107c0d882530e, type: 3}
m_Name:
m_EditorClassIdentifier:
RandomScale: 1
RandomRotation: 1
MinScale: 0.8
MaxScale: 1.2
MinRotation: -360
MaxRotaion: 360

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 1e00d8bb0efc11742a757cd085930b9c
guid: f1d6be8fd7d5cc6448b99caa0671e56f
PrefabImporter:
externalObjects: {}
userData:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: 440fe57f42038354092415c07a4d55a9
NativeFormatImporter:
userData:

View File

@ -0,0 +1,354 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &100000
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400000}
- component: {fileID: 11400000}
- component: {fileID: 11400002}
m_Layer: 0
m_Name: solo_gun_muzzle_example
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400000
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 400002}
- {fileID: 400004}
- {fileID: 400006}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a5df3c5f0444ba74991107c0d882530e, type: 3}
m_Name:
m_EditorClassIdentifier:
RandomScale: 1
RandomRotation: 1
MinScale: 1
MaxScale: 2
MinRotation: -360
MaxRotaion: 360
--- !u!114 &11400002
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100000}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: af19da7458dc9174699d0b34f404eafc, type: 3}
m_Name:
m_EditorClassIdentifier:
DespawnDelay: 0.06
DespawnOnMouseUp: 0
--- !u!1 &100002
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400002}
- component: {fileID: 3300000}
- component: {fileID: 2300000}
m_Layer: 0
m_Name: Quad
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400002
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0.9}
m_LocalScale: {x: 2.3, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400000}
m_LocalEulerAnglesHint: {x: 0, y: -90, z: 0}
--- !u!33 &3300000
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2300000
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100002}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 1e868b4651a53164caeb0fc1bb835a19, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &100004
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400004}
- component: {fileID: 3300002}
- component: {fileID: 2300002}
m_Layer: 0
m_Name: Quad
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400004
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
serializedVersion: 2
m_LocalRotation: {x: 0.5, y: -0.5, z: 0.5, w: 0.5}
m_LocalPosition: {x: 0, y: 0, z: 0.9}
m_LocalScale: {x: 2.3, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400000}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 90}
--- !u!33 &3300002
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2300002
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100004}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 1e868b4651a53164caeb0fc1bb835a19, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &100006
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 400006}
- component: {fileID: 10800000}
- component: {fileID: 2170738626527758604}
m_Layer: 0
m_Name: Point light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &400006
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0.6}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 400000}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!108 &10800000
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
m_Enabled: 1
serializedVersion: 10
m_Type: 2
m_Shape: 0
m_Color: {r: 1, g: 0.89503044, b: 0.6691177, a: 1}
m_Intensity: 1.2929945
m_Range: 250
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 1
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 0.536
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 1
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!114 &2170738626527758604
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 100006}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 0

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: b16d97c287e513344af2399ff138cd27
NativeFormatImporter:
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: accc5b93ebf3b0040baaec2298c7d394
guid: 60960fa6b56ee5442b5832403639e684
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 58dedb5e720f1df44b61117c89bfa91c
folderAsset: yes
timeCreated: 1477047111
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,96 @@
using UnityEngine;
using UnityEditor;
namespace FORGE3D
{
public class F3DHelpMenu
{
#region Variables
const int Priority = 1100;
const string MenuPath = "Window/FORGE3D/";
const string AssetStoreUrl = "https://assetstore.unity.com/publishers/2659";
const string WebUrl = "https://www.forge3d.com";
const string TwitterUrl = "https://twitter.com/Forge_3D";
const string FacebookUrl = "http://facebook.com/forge3d";
const string SupportUrl = "https://www.forge3d.com/contact/";
const string DiscordUrl = "https://discord.gg/c9JQuDC";
const string DocumentationUrl = "https://docs.forge3d.com/";
const string BlogUrl = "https://www.forge3d.com/blog/";
// const string ForumUrl = "http://forum.forge3d.com/";
// const string BugReportUrl = "http://forum.forge3d.com/c/bug-report";
// const string KnownIssuesUrl = "http://forum.forge3d.com/c/known-issues";
#endregion
#region Menu Items
[MenuItem(MenuPath + "Asset Store", false, Priority + 20)]
static void AssetStore()
{
Application.OpenURL(AssetStoreUrl);
}
[MenuItem(MenuPath + "Website", false, Priority * 2 + 21)]
static void Web()
{
Application.OpenURL(WebUrl);
}
[MenuItem(MenuPath + "Help/Documentation", false, Priority * 4 + 26)]
static void Documentation()
{
Application.OpenURL(DocumentationUrl);
}
[MenuItem(MenuPath + "Help/Support Form", false, Priority * 2 + 23)]
static void SupportForm()
{
Application.OpenURL(SupportUrl);
}
[MenuItem(MenuPath + "Community/Discord", false, Priority * 3 + 24)]
static void Discord()
{
Application.OpenURL(DiscordUrl);
}
[MenuItem(MenuPath + "Community/Twitter", false, Priority * 3 + 24)]
static void Twitter()
{
Application.OpenURL(TwitterUrl);
}
[MenuItem(MenuPath + "Community/Facebook", false, Priority * 3 + 25)]
static void Facebook()
{
Application.OpenURL(FacebookUrl);
}
// [MenuItem(MenuPath + "Help/Known Issues", false, Priority * 5 + 27)]
// static void KnownIssues()
// {
// Application.OpenURL(KnownIssuesUrl);
// }
//
// [MenuItem(MenuPath +"Help/Report a Bug", false, Priority * 5 + 28)]
// static void BugReport()
// {
// Application.OpenURL(BugReportUrl);
// }
//
// [MenuItem(MenuPath + "Help/Contact Support", false, Priority * 6 + 29)]
// static void Support()
// {
// Application.OpenURL(SupportUrl);
// }
#endregion
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 862ee2bf8fce03847ae46a1453d11f61
timeCreated: 1474371934
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,15 @@
using System;
using UnityEngine;
public class F3DReadme : ScriptableObject {
public Texture2D icon;
public float iconMaxWidth = 128f;
public string title;
public Section[] sections;
public bool loadedLayout;
[Serializable]
public class Section {
public string heading, text, linkText, url;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0c2648be8736c4245b8bbaf7b8b42bc3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {fileID: 2800000, guid: 037734b17170b1d4ea68aff6005eb279, type: 3}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,159 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using System;
using System.IO;
using System.Reflection;
[CustomEditor(typeof(F3DReadme))]
[InitializeOnLoad]
public class F3DReadmeEditor : Editor {
// static string kShowedReadmeSessionStateName = "F3DReadmeEditor.showedReadme";
static float kSpace = 16f;
// static F3DReadmeEditor()
// {
// EditorApplication.delayCall += SelectReadmeAutomatically;
// }
//
// static void SelectReadmeAutomatically()
// {
// if (!SessionState.GetBool(kShowedReadmeSessionStateName, false ))
// {
// var readme = SelectReadme();
// SessionState.SetBool(kShowedReadmeSessionStateName, true);
//
// if (readme && !readme.loadedLayout)
// {
// LoadLayout();
// readme.loadedLayout = true;
// }
// }
// }
static void LoadLayout()
{
var assembly = typeof(EditorApplication).Assembly;
var windowLayoutType = assembly.GetType("UnityEditor.WindowLayout", true);
var method = windowLayoutType.GetMethod("LoadWindowLayout", BindingFlags.Public | BindingFlags.Static);
method.Invoke(null, new object[]{Path.Combine(Application.dataPath, "»Readme/Layout.wlt"), false});
}
[MenuItem("Help/Project Readme")]
static F3DReadme SelectReadme()
{
var ids = AssetDatabase.FindAssets("Readme t:Readme");
if (ids.Length == 1)
{
var readmeObject = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids[0]));
Selection.objects = new UnityEngine.Object[]{readmeObject};
return (F3DReadme)readmeObject;
}
else
{
Debug.Log("Couldn't find a readme");
return null;
}
}
protected override void OnHeaderGUI()
{
var readme = (F3DReadme)target;
Init();
var iconWidth = Mathf.Min(EditorGUIUtility.currentViewWidth/3f - 20f, readme.iconMaxWidth);
GUILayout.BeginHorizontal("In BigTitle");
{
GUILayout.Label(readme.icon, GUILayout.Width(iconWidth), GUILayout.Height(iconWidth));
GUILayout.Label(readme.title, TitleStyle);
}
GUILayout.EndHorizontal();
}
public override void OnInspectorGUI()
{
var readme = (F3DReadme)target;
Init();
foreach (var section in readme.sections)
{
if (!string.IsNullOrEmpty(section.heading))
{
GUILayout.Label(section.heading, HeadingStyle);
}
if (!string.IsNullOrEmpty(section.text))
{
GUILayout.Label(section.text, BodyStyle);
}
if (!string.IsNullOrEmpty(section.linkText))
{
GUILayout.Space(kSpace / 2);
if (LinkLabel(new GUIContent(section.linkText)))
{
Application.OpenURL(section.url);
}
}
GUILayout.Space(kSpace);
}
}
bool m_Initialized;
GUIStyle LinkStyle { get { return m_LinkStyle; } }
[SerializeField] GUIStyle m_LinkStyle;
GUIStyle TitleStyle { get { return m_TitleStyle; } }
[SerializeField] GUIStyle m_TitleStyle;
GUIStyle HeadingStyle { get { return m_HeadingStyle; } }
[SerializeField] GUIStyle m_HeadingStyle;
GUIStyle BodyStyle { get { return m_BodyStyle; } }
[SerializeField] GUIStyle m_BodyStyle;
void Init()
{
if (m_Initialized)
return;
m_BodyStyle = new GUIStyle(EditorStyles.label);
m_BodyStyle.wordWrap = true;
m_BodyStyle.fontSize = 14;
m_TitleStyle = new GUIStyle(m_BodyStyle);
m_TitleStyle.fontSize = 26;
m_HeadingStyle = new GUIStyle(m_BodyStyle);
m_HeadingStyle.fontSize = 18;
m_HeadingStyle.fontStyle = FontStyle.Bold;
m_LinkStyle = new GUIStyle(m_BodyStyle);
// Match selection color which works nicely for both light and dark skins
m_LinkStyle.normal.textColor = new Color (0x00/255f, 0x78/255f, 0xDA/255f, 1f);
m_LinkStyle.stretchWidth = false;
m_Initialized = true;
}
bool LinkLabel (GUIContent label, params GUILayoutOption[] options)
{
var position = GUILayoutUtility.GetRect(label, LinkStyle, options);
Handles.BeginGUI ();
Handles.color = LinkStyle.normal.textColor;
Handles.DrawLine (new Vector3(position.xMin, position.yMax), new Vector3(position.xMax, position.yMax));
Handles.color = Color.white;
Handles.EndGUI ();
EditorGUIUtility.AddCursorRect (position, MouseCursor.Link);
return GUI.Button (position, label, LinkStyle);
}
}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 53a6d84aa5d214e48a7308646e5d20da
guid: e37c81d33e7c1344b874b8feb2ee4c5c
MonoImporter:
externalObjects: {}
serializedVersion: 2

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -0,0 +1,132 @@
fileFormatVersion: 2
guid: 037734b17170b1d4ea68aff6005eb279
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
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: 2
mipBias: -100
wrapU: 0
wrapV: 0
wrapW: 0
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: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 8183c5b85af4c754e961d949bae57a41
folderAsset: yes
timeCreated: 1470145491
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: d5b67437edf672244823f36f0c99ff8d
folderAsset: yes
timeCreated: 1477047100
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 1a56394eb2f8a2741bd22913de51d9be
timeCreated: 1470145491
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,555 @@
using UnityEngine;
using System.Collections.Generic;
namespace FORGE3D
{
public class F3DPool : MonoBehaviour
{
[HideInInspector]
public string poolName = "GeneratedPool"; // name of pool
[HideInInspector]
public Transform[] templates = new Transform[0]; // templates
[HideInInspector]
public Transform[] templatesParent = new Transform[0]; // parents of each type of template
[HideInInspector]
public int[] poolLength = new int[0]; // base items count
[HideInInspector]
public int[] poolLengthCurrent = new int[0]; // Effect pool items current count
[HideInInspector]
public int[] poolLengthMax = new int[0]; // max items count
[HideInInspector]
public string broadcastSpawnName = "OnSpawned"; // name of onSpawned function
[HideInInspector]
public string broadcastDespawnName = "OnDespawned"; // name of ondespawned function
[HideInInspector]
public bool delayedSpawnInInstall = true; // If we need to install all not in 1 update
[HideInInspector]
public int objectsPerUpdate = -1; // Current count of installing objects per frame
[HideInInspector]
public bool needBroadcasting = true; // if we need broadcasting |=> True
[HideInInspector]
public bool optimizeSpawn = true; // This is option for automated objectsPerUpdate calculation
[HideInInspector]
public int targetFPS = 50; // Target FPS for optimizeSpawn
[HideInInspector]
public bool pooling = true; // If need pooling?
[HideInInspector]
public bool needDebugging = false; // If need debugging
[HideInInspector]
public bool needSort = true; // if Need sort? It means, that after Despawn() it will be parented to it's template's parent
[HideInInspector]
public bool needParenting = true; // if need start parenting to parents
private float normalValue = 0f; // Calculation of optimizeSpawn(not for editing)
private Dictionary<Transform, List<Transform>> readyObjects = new Dictionary<Transform, List<Transform>>(); // Dict of ready for spawn items
private Dictionary<Transform, List<Transform>> occupiedObjects = new Dictionary<Transform, List<Transform>>(); // Dict of ready for despawn items
private bool installing = true; // if pool still installling = it will be true
//return count of temlates
public int GetTemplatesCount()
{
if (templates != null)
{
return templates.Length;
}
return -1;
}
//returns is template in this pool
bool CheckForExistingTemplate(Transform obj)
{
int i;
for (i = 0; i < templates.Length; i++)
{
if (obj == templates[i])
{
return true;
}
}
return false;
}
// Despawn - called for despawning some object, that was spawned
public bool Despawn(Transform obj)
{
bool res = false;
int i = 0, n = 0, j = 0;
for (j = 0; j < occupiedObjects.Count; j++)
{
List<Transform> transforms = occupiedObjects[templates[j]];
int transformsCount = transforms.Count;
for (i = 0; i < transformsCount; i++)
{
if (transforms[i] == obj)
{
res = true;
transforms.RemoveAt(i);
readyObjects[templates[j]].Add(obj);
obj.gameObject.SetActive(false);
if (needSort)
{
if (needParenting)
{
obj.parent = templatesParent[n];
}
}
if (needBroadcasting && broadcastDespawnName != "")
obj.BroadcastMessage(broadcastDespawnName, SendMessageOptions.DontRequireReceiver);
break;
}
}
n++;
}
return res;
}
// If you have parent(template) of spawned object - use this variant for better perfomance!
public bool Despawn(Transform obj, Transform template)
{
bool res = false;
int i, j;
for (i = 0; i < templates.Length; i++)
{
if (templates[i] == template)
{
int listSize = occupiedObjects[template].Count;
for (j = 0; j < listSize; j++)
{
if (occupiedObjects[template][j] == obj)
{
res = true;
occupiedObjects[template].RemoveAt(j);
obj.gameObject.SetActive(false);
if (needSort)
obj.parent = templatesParent[i];
readyObjects[template].Add(obj);
break;
}
}
if (res)
{
break;
}
}
}
return res;
}
//Return template position in array
public int GetTemplatePosition(Transform obj)
{
int pos = -1;
int i;
for (i = 0; i < templates.Length; i++)
{
if (obj == templates[i])
{
pos = i;
}
}
return pos;
}
/// <summary>
/// This function spawns audiosource somewhere with it's clip
/// </summary>
/// <param name="obj">Source template</param>
/// <param name="clip">Clip that have to be played</param>
/// <param name="pos">Place to spawn audio</param>
/// <param name="par">Parent of spawned audiosource</param>
/// <returns>Link to spawned audio source</returns>
public Transform SpawnAudio(Transform obj, AudioClip clip, Vector3 pos, Transform par)
{
Transform tempTransform;
int i;
int curPos = GetTemplatePosition(obj);
for (i = 0; i < readyObjects[templates[curPos]].Count; i++)
{
if (!readyObjects[templates[curPos]][i].gameObject.activeSelf)
{
tempTransform = readyObjects[templates[curPos]][i];
readyObjects[templates[curPos]].RemoveAt(i);
occupiedObjects[templates[curPos]].Add(tempTransform);
tempTransform.position = pos;
if (par == null)
{
tempTransform.SetParent(null);
}
else
{
tempTransform.SetParent(par);
}
tempTransform.gameObject.SetActive(true);
if (needBroadcasting && broadcastSpawnName != "")
tempTransform.BroadcastMessage(broadcastSpawnName, SendMessageOptions.DontRequireReceiver);
AudioSource source = tempTransform.gameObject.GetComponent<AudioSource>();
if (source != null)
{
source.clip = clip;
}
return tempTransform;
}
}
if (poolLengthCurrent[curPos] < poolLengthMax[curPos])
{
poolLengthCurrent[curPos]++;
Transform newGO = Instantiate(templates[curPos], Vector3.zero, Quaternion.identity) as Transform;
newGO.transform.parent = this.gameObject.transform;
newGO.gameObject.SetActive(true);
newGO.position = pos;
if (par == null)
{
newGO.SetParent(null);
}
else
{
newGO.SetParent(par);
}
occupiedObjects[templates[curPos]].Add(newGO);
if (needBroadcasting && broadcastSpawnName != "")
newGO.BroadcastMessage(broadcastSpawnName, SendMessageOptions.DontRequireReceiver);
AudioSource source = newGO.gameObject.GetComponent<AudioSource>();
if (source != null)
{
source.clip = clip;
}
return newGO;
}
return null;
}
//Return transfrom of spawned object
public Transform Spawn(Transform obj, Transform par, Vector3 pos = new Vector3(), Quaternion rot = new Quaternion())
{
if (!CheckForExistingTemplate(obj))
{
if (needDebugging)
Debug.LogWarning(obj.name + " isn't in " + this.gameObject.name + "'s pool");
return null;
}
Transform tempTransform;
int i;
int curPos = GetTemplatePosition(obj);
for (i = 0; i < readyObjects[obj].Count; i++)
{
if (!readyObjects[obj][i].gameObject.activeSelf)
{
tempTransform = readyObjects[obj][i];
readyObjects[obj].RemoveAt(i);
occupiedObjects[obj].Add(tempTransform);
tempTransform.position = pos;
tempTransform.rotation = rot;
if (par == null)
{
tempTransform.SetParent(null);
}
else
{
tempTransform.SetParent(par);
}
tempTransform.gameObject.SetActive(true);
if (needBroadcasting && broadcastSpawnName != "")
tempTransform.BroadcastMessage(broadcastSpawnName, SendMessageOptions.DontRequireReceiver);
return tempTransform;
}
}
if (poolLengthCurrent[curPos] < poolLengthMax[curPos])
{
poolLengthCurrent[curPos]++;
Transform newGO = Instantiate(templates[curPos], Vector3.zero, Quaternion.identity) as Transform;
newGO.transform.parent = this.gameObject.transform;
newGO.gameObject.SetActive(true);
newGO.position = pos;
newGO.rotation = rot;
if (par == null)
{
newGO.SetParent(null);
}
else
{
newGO.SetParent(par);
}
occupiedObjects[obj].Add(newGO);
if (needBroadcasting && broadcastSpawnName != "")
newGO.BroadcastMessage(broadcastSpawnName, SendMessageOptions.DontRequireReceiver);
return newGO;
}
return null;
}
//Return transfrom of spawned object
public Transform Spawn(Transform obj, Vector3 pos , Quaternion rot , Transform par)
{
if (!CheckForExistingTemplate(obj))
{
if (needDebugging)
Debug.LogWarning(obj.name + " isn't in " + this.gameObject.name + "'s pool");
return null;
}
Transform tempTransform;
int i;
int curPos = GetTemplatePosition(obj);
for (i = 0; i < readyObjects[obj].Count; i++)
{
if (!readyObjects[obj][i].gameObject.activeSelf)
{
tempTransform = readyObjects[obj][i];
readyObjects[obj].RemoveAt(i);
occupiedObjects[obj].Add(tempTransform);
tempTransform.position = pos;
tempTransform.rotation = rot;
if (par == null)
{
tempTransform.SetParent(null);
}
else
{
tempTransform.SetParent(par);
}
tempTransform.gameObject.SetActive(true);
if (needBroadcasting && broadcastSpawnName != "")
tempTransform.BroadcastMessage(broadcastSpawnName, SendMessageOptions.DontRequireReceiver);
return tempTransform;
}
}
if (poolLengthCurrent[curPos] < poolLengthMax[curPos])
{
poolLengthCurrent[curPos]++;
Transform newGO = Instantiate(templates[curPos], Vector3.zero, Quaternion.identity) as Transform;
newGO.transform.parent = this.gameObject.transform;
newGO.gameObject.SetActive(true);
newGO.position = pos;
newGO.rotation = rot;
if (par == null)
{
newGO.SetParent(null);
}
else
{
newGO.SetParent(par);
}
occupiedObjects[obj].Add(newGO);
if (needBroadcasting && broadcastSpawnName != "")
newGO.BroadcastMessage(broadcastSpawnName, SendMessageOptions.DontRequireReceiver);
return newGO;
}
return null;
}
//Return transfrom of spawned object
public Transform Spawn(Transform obj, Vector3 pos = new Vector3(), Quaternion rot = new Quaternion())
{
if (!CheckForExistingTemplate(obj))
{
if (needDebugging)
Debug.LogWarning(obj.name + " isn't in " + this.gameObject.name + "'s pool");
return null;
}
Transform tempTransform;
int i;
int curPos = GetTemplatePosition(obj);
for (i = 0; i < readyObjects[obj].Count; i++)
{
if (!readyObjects[obj][i].gameObject.activeSelf)
{
tempTransform = readyObjects[obj][i];
readyObjects[obj].RemoveAt(i);
occupiedObjects[obj].Add(tempTransform);
tempTransform.position = pos;
tempTransform.rotation = rot;
tempTransform.SetParent(null);
tempTransform.gameObject.SetActive(true);
if (needBroadcasting && broadcastSpawnName != "")
tempTransform.BroadcastMessage(broadcastSpawnName, SendMessageOptions.DontRequireReceiver);
return tempTransform;
}
}
if (poolLengthCurrent[curPos] < poolLengthMax[curPos])
{
poolLengthCurrent[curPos]++;
Transform newGO = Instantiate(templates[curPos], Vector3.zero, Quaternion.identity) as Transform;
newGO.transform.parent = this.gameObject.transform;
newGO.gameObject.SetActive(true);
newGO.position = pos;
newGO.rotation = rot;
newGO.SetParent(null);
occupiedObjects[obj].Add(newGO);
if (needBroadcasting && broadcastSpawnName != "")
newGO.BroadcastMessage(broadcastSpawnName, SendMessageOptions.DontRequireReceiver);
return newGO;
}
return null;
}
//Updating templates array
public void SetTemplates(Transform[] newArray)
{
templates = newArray;
}
//updating poolLength array
public void SetLength(int[] newPoolLenght)
{
poolLength = newPoolLenght;
}
//updating poolLengthMax
public void SetLengthMax(int[] newPoolLengthMax)
{
poolLengthMax = newPoolLengthMax;
}
//Automatic spawning function
void CalculateObjectsPerUpdate()
{
if (objectsPerUpdate != 0)
{
if (objectsPerUpdate == -1)
{
objectsPerUpdate = 1;
}
else
{
objectsPerUpdate = (int)(objectsPerUpdate * (normalValue / Time.deltaTime));
if (objectsPerUpdate == 0)
{
objectsPerUpdate = 1;
}
}
}
}
//Delayed spawn function. Instantiates objects not in one frame.
void DelayedSpawnInInstall()
{
if (optimizeSpawn)
{
CalculateObjectsPerUpdate();
}
int leftObjectsToInstall = objectsPerUpdate;
int i, j;
for (i = 0; i < templates.Length; i++)
{
for (j = 0; j < poolLength[i]; j++)
{
if (poolLengthCurrent[i] < poolLength[i])
{
InstantiateItem(templates[i], templatesParent[i], i);
leftObjectsToInstall--;
if (leftObjectsToInstall == 0)
{
break;
}
}
}
if (leftObjectsToInstall == 0)
{
break;
}
}
if (leftObjectsToInstall != 0)
{
installing = false;
}
}
//Instantiates all objects
void NonDelayedSpawnInInstall()
{
for (int i = 0; i < templates.Length; i++)
{
for (int j = 0; j < poolLength[i]; j++)
{
if (poolLengthCurrent[i] < poolLength[i])
{
InstantiateItem(templates[i], templatesParent[i], i);
}
}
}
}
void Update()
{
if (installing)
{
if (pooling == false)
{
installing = false;
}
else
{
//Delayed spawn in install
if (delayedSpawnInInstall)
{
DelayedSpawnInInstall();
}
else
{
NonDelayedSpawnInInstall();
installing = false;
}
}
}
}
// Instantiating item
Transform InstantiateItem(Transform temp, Transform par, int templatePosition)
{
Transform newGO = Instantiate(temp, Vector3.zero, Quaternion.identity) as Transform;
newGO.transform.SetParent(par);
newGO.gameObject.SetActive(false);
readyObjects[temp].Add(newGO);
poolLengthCurrent[templatePosition]++;
return newGO;
}
//Installing basic arrays for working with this pool
public void Install()
{
poolLengthCurrent = new int[poolLength.Length];
templatesParent = new Transform[templates.Length];
int i;
for (i = 0; i < templates.Length; i++)
{
if (templates[i] != null)
{
if (needParenting)
{
GameObject newParent = new GameObject(templates[i].name);
templatesParent[i] = newParent.transform;
newParent.transform.SetParent(this.transform);
List<Transform> tempList = new List<Transform>();
if (tempList != null)
{
readyObjects.Add(templates[i], tempList);
}
occupiedObjects.Add(templates[i], new List<Transform>());
}
else
{
List<Transform> tempList = new List<Transform>();
if (tempList != null)
{
readyObjects.Add(templates[i], tempList);
}
occupiedObjects.Add(templates[i], new List<Transform>());
}
}
}
if (targetFPS == 0)
{
targetFPS = 60;
}
normalValue = 1f / targetFPS;
installing = true;
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: fdd65a70efb05f843b2d1135c43f859b
timeCreated: 1470145491
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,25 @@
using UnityEngine;
using System;
namespace FORGE3D
{
[Serializable]
public class F3DPoolContainer
{
public string poolName = "GeneratedPool";
public Transform[] templates = new Transform[0];
public int[] poolLength = new int[0];
public int[] poolLengthMax = new int[0];
public string broadcastSpawnName = "";
public string broadcastDespawnName = "";
public bool delayedSpawnInInstall = true;
public int objectsPerUpdate = 5;
public bool needBroadcasting = true;
public bool optimizeSpawn = true;
public int targetFPS = 50;
public bool pooling = true;
public bool needSort = true;
public bool needParenting = true;
public bool needDebug = false;
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 41e84c3a33b30a149831f787c1c88954
timeCreated: 1470145491
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,101 @@
using UnityEngine;
using System.Collections.Generic;
using System;
namespace FORGE3D
{
[Serializable]
public class F3DPoolManager : MonoBehaviour
{
public static F3DPoolManager instance; // instance of current manager
public static Dictionary<string, F3DPool> Pools = new Dictionary<string, F3DPool>();
public string databaseName = ""; // Name of database. Need for editor
public int selectedItem = 0; // Editor's parameter
public bool[] haveToShowArr; // Editor's parameter
List<F3DPool> curPools = new List<F3DPool>(); // Our pools
void Awake()
{
InstallManager();
instance = this;
}
//Retirning pool by it's name
public F3DPool GetPool(string valueName)
{
int i;
if (valueName != "" && curPools != null && curPools.Count > 0)
{
for (i = 0; i < curPools.Count; i++)
{
if (curPools[i].poolName == valueName)
{
return curPools[i];
}
}
}
return null;
}
//Installing of manager
void InstallManager()
{
curPools.Clear();
List<F3DPoolContainer> pools = new List<F3DPoolContainer>();
Pools.Clear();
Pools = new Dictionary<string, F3DPool>();
F3DPoolManagerDB myManager = Resources.Load("F3DPoolManagerCache/" + databaseName) as F3DPoolManagerDB;
if (myManager != null)
{
if (myManager.pools != null)
{
foreach (F3DPoolContainer cont in myManager.pools)
{
pools.Add(cont);
}
}
}
//Transfering info from containers to our real pools and creating GO's for them
int j;
for (j = 0; j < pools.Count; j++)
{
GameObject newGO = new GameObject();
newGO.transform.parent = this.gameObject.transform;
newGO.name = pools[j].poolName;
F3DPool newPool = newGO.AddComponent<F3DPool>();
newPool.poolName = newGO.name;
newPool.SetTemplates(pools[j].templates);
newPool.SetLength(pools[j].poolLength);
newPool.SetLengthMax(pools[j].poolLengthMax);
newPool.needBroadcasting = pools[j].needBroadcasting;
newPool.broadcastSpawnName = pools[j].broadcastSpawnName;
newPool.broadcastDespawnName = pools[j].broadcastDespawnName;
newPool.needSort = pools[j].needSort;
newPool.delayedSpawnInInstall = pools[j].delayedSpawnInInstall;
newPool.objectsPerUpdate = pools[j].objectsPerUpdate;
newPool.optimizeSpawn = pools[j].optimizeSpawn;
newPool.targetFPS = pools[j].targetFPS;
newPool.needSort = pools[j].needSort;
newPool.needParenting = pools[j].needParenting;
newPool.needDebugging = pools[j].needDebug;
newPool.pooling = true;
newPool.Install();
curPools.Add(newPool);
Pools.Add(newPool.name, newPool);
}
}
public int GetPoolsCount()
{
if (curPools != null)
return curPools.Count;
return -1;
}
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 12e51d46aadf24b4b813981141443db3
timeCreated: 1470145491
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,14 @@
using UnityEngine;
using System.Collections.Generic;
using System;
namespace FORGE3D
{
[Serializable]
public class F3DPoolManagerDB : ScriptableObject
{
public List<string> poolsName;
public List<F3DPoolContainer> pools;
public string namer = "default";
}
}

View File

@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 2f1393d0f3c350e4981d23bc526f480d
timeCreated: 1470145491
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 3022f959abe9fde4ea98e3efb19ec4d3
folderAsset: yes
timeCreated: 1470145789
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 054ab73682d933a4da3e5ef33d046eef
folderAsset: yes
timeCreated: 1466679461
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,32 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2f1393d0f3c350e4981d23bc526f480d, type: 3}
m_Name: DefaultDatabase
m_EditorClassIdentifier:
poolsName: []
pools:
- poolName: GeneratedPool
templates: []
poolLength:
poolLengthMax:
broadcastSpawnName:
broadcastDespawnName:
delayedSpawnInInstall: 1
objectsPerUpdate: 5
needBroadcasting: 1
optimizeSpawn: 1
targetFPS: 50
pooling: 1
needSort: 1
needParenting: 1
needDebug: 0
namer: DefaultDatabase

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: dcdf15fc89edd2546baf8ff544470626
guid: 8ec0e3c5e776917479e8f850ba0ba200
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@ -0,0 +1,32 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2f1393d0f3c350e4981d23bc526f480d, type: 3}
m_Name: GeneratedDataBase
m_EditorClassIdentifier:
poolsName: []
pools:
- poolName: GeneratedPool
templates: []
poolLength:
poolLengthMax:
broadcastSpawnName:
broadcastDespawnName:
delayedSpawnInInstall: 1
objectsPerUpdate: 5
needBroadcasting: 1
optimizeSpawn: 1
targetFPS: 50
pooling: 1
needSort: 1
needParenting: 1
needDebug: 0
namer: GeneratedDataBase

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9b0cfbc044b05594eb3b0b1a4407ddd1
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,34 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2f1393d0f3c350e4981d23bc526f480d, type: 3}
m_Name: MissleDatabase
m_EditorClassIdentifier:
poolsName: []
pools:
- poolName: GeneratedPool
templates:
- {fileID: 452452, guid: 6bd8c5e3240463f4aa109e322567fea0, type: 3}
- {fileID: 400002, guid: a1019cea5f836db4d811e29442cad418, type: 3}
poolLength: 1e0000001e000000
poolLengthMax: 1e0000001e000000
broadcastSpawnName: OnSpawned
broadcastDespawnName: OnDespawned
delayedSpawnInInstall: 0
objectsPerUpdate: 5
needBroadcasting: 1
optimizeSpawn: 1
targetFPS: 50
pooling: 1
needSort: 0
needParenting: 0
needDebug: 0
namer: MissleDatabase

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: d9693011b7416444aa06cafe900e23c0
guid: 8b01a01b8134e6d44bf09a340592a3d0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@ -0,0 +1,60 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2f1393d0f3c350e4981d23bc526f480d, type: 3}
m_Name: WeaponRange
m_EditorClassIdentifier:
poolsName: []
pools:
- poolName: GeneratedPool
templates:
- {fileID: 492552, guid: c7e9f38264df9af438839ee9c90e07c4, type: 3}
- {fileID: 400002, guid: bd9162be33a5ce54aa35d8e984e6d39d, type: 3}
- {fileID: 400010, guid: ce59e020d922ccb43866dee1ba26a673, type: 3}
- {fileID: 400004, guid: 45116fb1512dc704b99d70267628129a, type: 3}
- {fileID: 400004, guid: 64703ac190f718b4abd5d10cb23c96ce, type: 3}
- {fileID: 400002, guid: 497cce4f043498049994c48e6e47f0ae, type: 3}
- {fileID: 400000, guid: 66b50793fa1c780409218a1a1db5b1d8, type: 3}
- {fileID: 400000, guid: a5251bb5b54465f43aebe1ddc2724566, type: 3}
- {fileID: 400004, guid: ec543be1efaafca46aeac6f66e7a5ff0, type: 3}
- {fileID: 400002, guid: e4aff98840a58c94ea1cec28789d55d6, type: 3}
- {fileID: 400000, guid: e7b84dec6cdbfb646a33fd06b85cf64e, type: 3}
- {fileID: 400000, guid: ec0fb8bef2fb8a5459c55c3700521b70, type: 3}
- {fileID: 400010, guid: 2e92e894e0311c14c87f9544b2c88693, type: 3}
- {fileID: 400000, guid: 83319fcfeef06cf4288182309b1387d0, type: 3}
- {fileID: 400010, guid: 25381a5e43841e943a27b043442b2b4d, type: 3}
- {fileID: 400004, guid: 235092330dd93ce4ab3f64b4b4b9c354, type: 3}
- {fileID: 400000, guid: 5f10243d9632db04bb987838fb3b36b7, type: 3}
- {fileID: 400000, guid: 12e7c1b739173c946b6fa3d40e9f62d1, type: 3}
- {fileID: 400004, guid: a980d2b7788c0ef489f3c79f44da79e1, type: 3}
- {fileID: 400004, guid: fd953838f1872d042a334b466e298967, type: 3}
- {fileID: 400012, guid: 440fe57f42038354092415c07a4d55a9, type: 3}
- {fileID: 400000, guid: b16d97c287e513344af2399ff138cd27, type: 3}
- {fileID: 400000, guid: bfa7781c328a236468eda51a8ae2be55, type: 3}
- {fileID: 400002, guid: ca6dec307275d294ba519247d04b6733, type: 3}
- {fileID: 400000, guid: e496166a742ada640b89650ebebbd052, type: 3}
- {fileID: 400000, guid: 9eeb3f92e3355994db8dc67cb3ea8ba0, type: 3}
- {fileID: 400002, guid: 0072b525437a5ed4891ebd255ec94fe6, type: 3}
- {fileID: 6391351660618465683, guid: f1d6be8fd7d5cc6448b99caa0671e56f, type: 3}
poolLength: 05000000050000000500000005000000050000000500000005000000050000000500000005000000050000000500000005000000050000000500000005000000050000000500000005000000050000000500000005000000050000000500000005000000320000000500000005000000
poolLengthMax: 32000000320000003200000032000000320000003200000032000000320000003200000032000000320000003200000032000000320000003200000032000000320000003200000032000000320000003200000032000000320000003200000032000000f40100003200000032000000
broadcastSpawnName: OnSpawned
broadcastDespawnName: OnDespawned
delayedSpawnInInstall: 0
objectsPerUpdate: 5
needBroadcasting: 1
optimizeSpawn: 1
targetFPS: 60
pooling: 1
needSort: 0
needParenting: 0
needDebug: 0
namer: WeaponRange

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: ab6a9000f5ff83f45b6761c2a3be018d
guid: 199c65829baf1da43b9c89da41497004
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 05ff36a54b7382f4499005c6807b2a9b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,223 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-6632916694925557420
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 29fa0085f50d5e54f8144f766051a691, type: 3}
m_Name: FilmGrain
m_EditorClassIdentifier:
active: 1
type:
m_OverrideState: 1
m_Value: 6
intensity:
m_OverrideState: 1
m_Value: 0.041
response:
m_OverrideState: 1
m_Value: 0.8
texture:
m_OverrideState: 1
m_Value: {fileID: 0}
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 12.63
aperture:
m_OverrideState: 1
m_Value: 5.3
focalLength:
m_OverrideState: 1
m_Value: 184
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 1
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 0.99
intensity:
m_OverrideState: 1
m_Value: 1
scatter:
m_OverrideState: 1
m_Value: 0.558
clamp:
m_OverrideState: 1
m_Value: 65472
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 1
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 1
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: Burnout
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
- {fileID: -6632916694925557420}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 1
intensity:
m_OverrideState: 1
m_Value: 0.055
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 1
color:
m_OverrideState: 1
m_Value: {r: 0, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.188
smoothness:
m_OverrideState: 1
m_Value: 0.2
rounded:
m_OverrideState: 1
m_Value: 0
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 2863463f6933f3f439a639f883f642f6
guid: 3fad440c273ec1f40a267a69872c8c36
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@ -0,0 +1,197 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 0
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 19.1
aperture:
m_OverrideState: 1
m_Value: 17.3
focalLength:
m_OverrideState: 1
m_Value: 267
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 0.569
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 1
intensity:
m_OverrideState: 1
m_Value: 0.02
scatter:
m_OverrideState: 1
m_Value: 0.558
clamp:
m_OverrideState: 0
m_Value: 65471.84
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 0
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 0
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: Debris Field
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 1
intensity:
m_OverrideState: 1
m_Value: 0.06
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 1
color:
m_OverrideState: 1
m_Value: {r: 0.97380245, g: 1, b: 0.740566, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.209
smoothness:
m_OverrideState: 1
m_Value: 0.257
rounded:
m_OverrideState: 1
m_Value: 1
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 0
mode:
m_OverrideState: 0
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1d9ae5f0e4543a242868bcbfaf41acfd
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,246 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 0
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 30.63
aperture:
m_OverrideState: 1
m_Value: 14.6
focalLength:
m_OverrideState: 1
m_Value: 184
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 1
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 0.99
intensity:
m_OverrideState: 1
m_Value: 0.8
scatter:
m_OverrideState: 1
m_Value: 0.558
clamp:
m_OverrideState: 1
m_Value: 65472
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 1
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-808006152824296517
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 221518ef91623a7438a71fef23660601, type: 3}
m_Name: WhiteBalance
m_EditorClassIdentifier:
active: 1
temperature:
m_OverrideState: 1
m_Value: 7.8
tint:
m_OverrideState: 1
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: Effects
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
- {fileID: -808006152824296517}
- {fileID: 3333710037340004473}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 1
intensity:
m_OverrideState: 1
m_Value: 0.048
--- !u!114 &3333710037340004473
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 66f335fb1ffd8684294ad653bf1c7564, type: 3}
m_Name: ColorAdjustments
m_EditorClassIdentifier:
active: 1
postExposure:
m_OverrideState: 1
m_Value: 0.93
contrast:
m_OverrideState: 1
m_Value: 6.8
colorFilter:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
hueShift:
m_OverrideState: 0
m_Value: 0
saturation:
m_OverrideState: 0
m_Value: -29.6
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 1
color:
m_OverrideState: 1
m_Value: {r: 0, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.181
smoothness:
m_OverrideState: 1
m_Value: 0.56
rounded:
m_OverrideState: 1
m_Value: 1
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5f56a40323d09574b8d14dc061c7e2f4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,246 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 13.16
aperture:
m_OverrideState: 1
m_Value: 13.9
focalLength:
m_OverrideState: 1
m_Value: 256
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 1
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 0.99
intensity:
m_OverrideState: 1
m_Value: 0.8
scatter:
m_OverrideState: 1
m_Value: 0.558
clamp:
m_OverrideState: 1
m_Value: 65472
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 1
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-808006152824296517
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 221518ef91623a7438a71fef23660601, type: 3}
m_Name: WhiteBalance
m_EditorClassIdentifier:
active: 1
temperature:
m_OverrideState: 1
m_Value: 7.8
tint:
m_OverrideState: 1
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: Holographic
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
- {fileID: -808006152824296517}
- {fileID: 3333710037340004473}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 1
intensity:
m_OverrideState: 1
m_Value: 0.048
--- !u!114 &3333710037340004473
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 66f335fb1ffd8684294ad653bf1c7564, type: 3}
m_Name: ColorAdjustments
m_EditorClassIdentifier:
active: 1
postExposure:
m_OverrideState: 1
m_Value: 0.93
contrast:
m_OverrideState: 1
m_Value: 6.8
colorFilter:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
hueShift:
m_OverrideState: 0
m_Value: 0
saturation:
m_OverrideState: 0
m_Value: -29.6
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 1
color:
m_OverrideState: 1
m_Value: {r: 0, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.181
smoothness:
m_OverrideState: 1
m_Value: 0.56
rounded:
m_OverrideState: 1
m_Value: 1
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 91ce03fb36a3365488c495345046ab81
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,246 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 0
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 30.63
aperture:
m_OverrideState: 1
m_Value: 14.6
focalLength:
m_OverrideState: 1
m_Value: 184
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 1
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 0.99
intensity:
m_OverrideState: 1
m_Value: 0.8
scatter:
m_OverrideState: 1
m_Value: 0.558
clamp:
m_OverrideState: 1
m_Value: 65472
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 1
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-808006152824296517
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 221518ef91623a7438a71fef23660601, type: 3}
m_Name: WhiteBalance
m_EditorClassIdentifier:
active: 1
temperature:
m_OverrideState: 1
m_Value: 7.8
tint:
m_OverrideState: 1
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: Missiles
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
- {fileID: -808006152824296517}
- {fileID: 3333710037340004473}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 1
intensity:
m_OverrideState: 1
m_Value: 0.048
--- !u!114 &3333710037340004473
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 66f335fb1ffd8684294ad653bf1c7564, type: 3}
m_Name: ColorAdjustments
m_EditorClassIdentifier:
active: 1
postExposure:
m_OverrideState: 1
m_Value: 0.93
contrast:
m_OverrideState: 1
m_Value: 6.8
colorFilter:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
hueShift:
m_OverrideState: 0
m_Value: 0
saturation:
m_OverrideState: 0
m_Value: -29.6
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 1
color:
m_OverrideState: 1
m_Value: {r: 0, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.181
smoothness:
m_OverrideState: 1
m_Value: 0.56
rounded:
m_OverrideState: 1
m_Value: 1
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 14ce29f03789adf40a7fec02bb6ac9f3
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,226 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 0
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 58.2
aperture:
m_OverrideState: 1
m_Value: 4.1
focalLength:
m_OverrideState: 1
m_Value: 208
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 1
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 0.34
intensity:
m_OverrideState: 1
m_Value: 1
scatter:
m_OverrideState: 1
m_Value: 0.826
clamp:
m_OverrideState: 1
m_Value: 65472
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 1
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 1
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: Nebulas
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
- {fileID: 3333710037340004473}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 0
intensity:
m_OverrideState: 1
m_Value: 0.09
--- !u!114 &3333710037340004473
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 66f335fb1ffd8684294ad653bf1c7564, type: 3}
m_Name: ColorAdjustments
m_EditorClassIdentifier:
active: 1
postExposure:
m_OverrideState: 0
m_Value: 0.5
contrast:
m_OverrideState: 0
m_Value: -0.3
colorFilter:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
hueShift:
m_OverrideState: 0
m_Value: 0
saturation:
m_OverrideState: 1
m_Value: 12
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 0
color:
m_OverrideState: 1
m_Value: {r: 0, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.192
smoothness:
m_OverrideState: 1
m_Value: 0.347
rounded:
m_OverrideState: 1
m_Value: 1
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d5e118ae3dfb26147bd1e8ad5412ff88
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,246 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 24.2
aperture:
m_OverrideState: 1
m_Value: 7.7
focalLength:
m_OverrideState: 1
m_Value: 192
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 1
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 0.99
intensity:
m_OverrideState: 1
m_Value: 0.8
scatter:
m_OverrideState: 1
m_Value: 0.558
clamp:
m_OverrideState: 1
m_Value: 65472
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 1
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-808006152824296517
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 221518ef91623a7438a71fef23660601, type: 3}
m_Name: WhiteBalance
m_EditorClassIdentifier:
active: 1
temperature:
m_OverrideState: 1
m_Value: 7.8
tint:
m_OverrideState: 1
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: Turrets
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
- {fileID: -808006152824296517}
- {fileID: 3333710037340004473}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 1
intensity:
m_OverrideState: 1
m_Value: 0.048
--- !u!114 &3333710037340004473
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 66f335fb1ffd8684294ad653bf1c7564, type: 3}
m_Name: ColorAdjustments
m_EditorClassIdentifier:
active: 1
postExposure:
m_OverrideState: 1
m_Value: 1.61
contrast:
m_OverrideState: 1
m_Value: 8.3
colorFilter:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
hueShift:
m_OverrideState: 0
m_Value: 0
saturation:
m_OverrideState: 0
m_Value: -29.6
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 1
color:
m_OverrideState: 1
m_Value: {r: 0, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.181
smoothness:
m_OverrideState: 1
m_Value: 0.56
rounded:
m_OverrideState: 1
m_Value: 1
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: cb0aae91aeb59b24aa9211b20f3fe8ee
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,246 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 0
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 24.2
aperture:
m_OverrideState: 1
m_Value: 7.7
focalLength:
m_OverrideState: 1
m_Value: 190
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 1
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 1
intensity:
m_OverrideState: 1
m_Value: 2.88
scatter:
m_OverrideState: 1
m_Value: 0.82
clamp:
m_OverrideState: 1
m_Value: 65472
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 1
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-808006152824296517
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 221518ef91623a7438a71fef23660601, type: 3}
m_Name: WhiteBalance
m_EditorClassIdentifier:
active: 0
temperature:
m_OverrideState: 0
m_Value: 7.8
tint:
m_OverrideState: 0
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: WarpJump
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
- {fileID: -808006152824296517}
- {fileID: 3333710037340004473}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 1
intensity:
m_OverrideState: 1
m_Value: 0.252
--- !u!114 &3333710037340004473
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 66f335fb1ffd8684294ad653bf1c7564, type: 3}
m_Name: ColorAdjustments
m_EditorClassIdentifier:
active: 1
postExposure:
m_OverrideState: 1
m_Value: 0
contrast:
m_OverrideState: 1
m_Value: 8.3
colorFilter:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
hueShift:
m_OverrideState: 0
m_Value: 0
saturation:
m_OverrideState: 0
m_Value: -29.6
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 0
color:
m_OverrideState: 1
m_Value: {r: 0, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.181
smoothness:
m_OverrideState: 1
m_Value: 0.096
rounded:
m_OverrideState: 1
m_Value: 1
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e14200efbeefaec46955dfaded839630
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,246 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2439872706674709594
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3}
m_Name: DepthOfField
m_EditorClassIdentifier:
active: 0
mode:
m_OverrideState: 1
m_Value: 2
gaussianStart:
m_OverrideState: 1
m_Value: 10
gaussianEnd:
m_OverrideState: 1
m_Value: 30
gaussianMaxRadius:
m_OverrideState: 1
m_Value: 1
highQualitySampling:
m_OverrideState: 1
m_Value: 0
focusDistance:
m_OverrideState: 1
m_Value: 32.66
aperture:
m_OverrideState: 1
m_Value: 13.4
focalLength:
m_OverrideState: 1
m_Value: 288
bladeCount:
m_OverrideState: 1
m_Value: 5
bladeCurvature:
m_OverrideState: 1
m_Value: 1
bladeRotation:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-2154685693240888407
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
skipIterations:
m_OverrideState: 1
m_Value: 1
threshold:
m_OverrideState: 1
m_Value: 0.7
intensity:
m_OverrideState: 1
m_Value: 1
scatter:
m_OverrideState: 1
m_Value: 0.69
clamp:
m_OverrideState: 1
m_Value: 65472
tint:
m_OverrideState: 1
m_Value: {r: 1, g: 1, b: 1, a: 1}
highQualityFiltering:
m_OverrideState: 1
m_Value: 1
downscale:
m_OverrideState: 0
m_Value: 0
maxIterations:
m_OverrideState: 0
m_Value: 6
dirtTexture:
m_OverrideState: 1
m_Value: {fileID: 0}
dimension: 1
dirtIntensity:
m_OverrideState: 1
m_Value: 0
--- !u!114 &-808006152824296517
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 221518ef91623a7438a71fef23660601, type: 3}
m_Name: WhiteBalance
m_EditorClassIdentifier:
active: 0
temperature:
m_OverrideState: 0
m_Value: 7.8
tint:
m_OverrideState: 0
m_Value: 0
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: WarpTunnel
m_EditorClassIdentifier:
components:
- {fileID: 8888579287495606339}
- {fileID: -2154685693240888407}
- {fileID: -2439872706674709594}
- {fileID: 2651481852041275419}
- {fileID: 4082488353432010529}
- {fileID: -808006152824296517}
- {fileID: 3333710037340004473}
--- !u!114 &2651481852041275419
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:
active: 1
intensity:
m_OverrideState: 1
m_Value: 0.252
--- !u!114 &3333710037340004473
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 66f335fb1ffd8684294ad653bf1c7564, type: 3}
m_Name: ColorAdjustments
m_EditorClassIdentifier:
active: 1
postExposure:
m_OverrideState: 1
m_Value: 0.74
contrast:
m_OverrideState: 1
m_Value: 2
colorFilter:
m_OverrideState: 0
m_Value: {r: 1, g: 1, b: 1, a: 1}
hueShift:
m_OverrideState: 0
m_Value: 0
saturation:
m_OverrideState: 0
m_Value: -29.6
--- !u!114 &4082488353432010529
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 1
color:
m_OverrideState: 1
m_Value: {r: 0, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0.224
smoothness:
m_OverrideState: 1
m_Value: 0.257
rounded:
m_OverrideState: 1
m_Value: 1
--- !u!114 &8888579287495606339
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3}
m_Name: Tonemapping
m_EditorClassIdentifier:
active: 1
mode:
m_OverrideState: 1
m_Value: 0
neutralHDRRangeReductionMode:
m_OverrideState: 0
m_Value: 2
acesPreset:
m_OverrideState: 0
m_Value: 3
hueShiftAmount:
m_OverrideState: 0
m_Value: 0
detectPaperWhite:
m_OverrideState: 0
m_Value: 0
paperWhite:
m_OverrideState: 0
m_Value: 300
detectBrightnessLimits:
m_OverrideState: 0
m_Value: 1
minNits:
m_OverrideState: 0
m_Value: 0.005
maxNits:
m_OverrideState: 0
m_Value: 1000

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 14e677441db932344abd9f55fd20efff
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9b99e5fbc1ab0b3439350f00b26d78d5
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
fileFormatVersion: 2
guid: 16efff009a4e5e84fa8e394b50cf46b6
DefaultImporter:
userData:

View File

@ -0,0 +1,5 @@
fileFormatVersion: 2
guid: 32afb9cd68cbcc54cb603fb69693c3df
folderAsset: yes
DefaultImporter:
userData:

View File

@ -0,0 +1,626 @@
using UnityEngine;
using System.Collections;
namespace FORGE3D
{
public class F3DAudioController : MonoBehaviour
{
// Singleton instance
public static F3DAudioController instance;
// Audio timers
float timer_01, timer_02;
public Transform audioSource;
public Vector2 volumeRange;
[Header("Vulcan")] public AudioClip[] vulcanHit; // Impact prefabs array
public AudioClip vulcanShot; // Shot prefab
public float vulcanDelay; // Shot delay in ms
public float vulcanHitDelay; // Hit delay in ms
[Header("Solo gun")] public AudioClip[] soloGunHit;
public AudioClip soloGunShot;
public float soloGunDelay;
public float soloGunHitDelay;
[Header("Sniper")] public AudioClip[] sniperHit;
public AudioClip sniperShot;
public float sniperDelay;
public float sniperHitDelay;
[Header("Shot gun")] public AudioClip[] shotGunHit;
public AudioClip shotGunShot;
public float shotGunDelay;
public float shotGunHitDelay;
[Header("Seeker")] public AudioClip[] seekerHit;
public AudioClip seekerShot;
public float seekerDelay;
public float seekerHitDelay;
[Header("Rail gun")] public AudioClip[] railgunHit;
public AudioClip railgunShot;
public float railgunDelay;
public float railgunHitDelay;
[Header("Plasma gun")] public AudioClip[] plasmagunHit;
public AudioClip plasmagunShot;
public float plasmagunDelay;
public float plasmagunHitDelay;
[Header("Plasma beam")] public AudioClip plasmabeamOpen; // Open audio clip prefab
public AudioClip plasmabeamLoop; // Loop audio clip prefab
public AudioClip plasmabeamClose; // Close audio clip prefab
[Header("Plasma beam heavy")] public AudioClip plasmabeamHeavyOpen;
public AudioClip plasmabeamHeavyLoop;
public AudioClip plasmabeamHeavyClose;
[Header("Lightning gun")] public AudioClip lightningGunOpen;
public AudioClip lightningGunLoop;
public AudioClip lightningGunClose;
[Header("Flame gun")] public AudioClip flameGunOpen;
public AudioClip flameGunLoop;
public AudioClip flameGunClose;
[Header("Laser impulse")] public AudioClip[] laserImpulseHit;
public AudioClip laserImpulseShot;
public float laserImpulseDelay;
public float laserImpulseHitDelay;
void Awake()
{
// Initialize singleton
instance = this;
}
void Update()
{
// Update timers
timer_01 += Time.deltaTime;
timer_02 += Time.deltaTime;
}
// Play vulcan shot audio at specific position
public void VulcanShot(Vector3 pos)
{
// Audio source can only be played once for each vulcanDelay
if (timer_01 >= vulcanDelay)
{
// Spawn audio source prefab from pool
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, vulcanShot, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
// Modify audio source settings specific to it's type
aSrc.pitch = Random.Range(0.95f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 5f;
aSrc.loop = false;
aSrc.Play();
// Reset delay timer
timer_01 = 0f;
}
}
}
// Play vulcan hit audio at specific position
public void VulcanHit(Vector3 pos)
{
if (timer_02 >= vulcanHitDelay)
{
// Spawn random hit audio prefab from pool for specific weapon type
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource,
vulcanHit[Random.Range(0, vulcanHit.Length)], pos, null).gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.95f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 7f;
aSrc.loop = false;
aSrc.Play();
timer_02 = 0f;
}
}
}
// Play solo gun shot audio at specific position
public void SoloGunShot(Vector3 pos)
{
if (timer_01 >= soloGunDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, soloGunShot, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.95f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 30f;
aSrc.loop = false;
aSrc.Play();
timer_01 = 0f;
}
}
}
// Play solo gun hit audio at specific position
public void SoloGunHit(Vector3 pos)
{
if (timer_02 >= soloGunHitDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource,
soloGunHit[Random.Range(0, soloGunHit.Length)], pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.95f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 50f;
aSrc.loop = false;
aSrc.Play();
timer_02 = 0f;
}
}
}
// Play sniper shot audio at specific position
public void SniperShot(Vector3 pos)
{
if (timer_01 >= sniperDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, sniperShot, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.9f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 6f;
aSrc.loop = false;
aSrc.Play();
timer_01 = 0f;
}
}
}
// Play sniper hit audio at specific position
public void SniperHit(Vector3 pos)
{
if (timer_02 >= sniperHitDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource,
sniperHit[Random.Range(0, sniperHit.Length)], pos, null).gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.9f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 8f;
aSrc.loop = false;
aSrc.Play();
timer_02 = 0f;
}
}
}
// Play shotgun shot audio at specific position
public void ShotGunShot(Vector3 pos)
{
if (timer_01 >= shotGunDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, shotGunShot, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.9f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 8f;
aSrc.loop = false;
aSrc.Play();
timer_01 = 0f;
}
}
}
// Play shotgun hit audio at specific position
public void ShotGunHit(Vector3 pos)
{
if (timer_02 >= shotGunHitDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource,
shotGunHit[Random.Range(0, shotGunHit.Length)], pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.9f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 7f;
aSrc.loop = false;
aSrc.Play();
timer_02 = 0f;
}
}
}
// Play seeker shot audio at specific position
public void SeekerShot(Vector3 pos)
{
if (timer_01 >= seekerDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, seekerShot, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.8f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 8f;
aSrc.loop = false;
aSrc.Play();
timer_01 = 0f;
}
}
}
// Play seeker hit audio at specific position
public void SeekerHit(Vector3 pos)
{
if (timer_02 >= seekerHitDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource,
seekerHit[Random.Range(0, seekerHit.Length)], pos, null).gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.8f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 25f;
aSrc.loop = false;
aSrc.Play();
timer_02 = 0f;
}
}
}
// Play railgun shot audio at specific position
public void RailGunShot(Vector3 pos)
{
if (timer_01 >= railgunDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, railgunShot, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.8f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 4f;
aSrc.loop = false;
aSrc.Play();
timer_01 = 0f;
}
}
}
// Play railgun hit audio at specific position
public void RailGunHit(Vector3 pos)
{
if (timer_02 >= railgunHitDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource,
railgunHit[Random.Range(0, railgunHit.Length)], pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.8f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 20f;
aSrc.loop = false;
aSrc.Play();
timer_02 = 0f;
}
}
}
// Play plasma gun shot audio at specific position
public void PlasmaGunShot(Vector3 pos)
{
if (timer_01 >= plasmagunDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, plasmagunShot, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.8f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 4f;
aSrc.loop = false;
aSrc.Play();
timer_01 = 0f;
}
}
}
// Play plasma gun hit audio at specific position
public void PlasmaGunHit(Vector3 pos)
{
if (timer_02 >= plasmagunHitDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource,
plasmagunHit[Random.Range(0, plasmagunHit.Length)], pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.8f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 50f;
aSrc.loop = false;
aSrc.Play();
timer_02 = 0f;
}
}
}
// Play plasma beam shot and loop audio at specific position
public void PlasmaBeamLoop(Vector3 pos, Transform loopParent)
{
AudioSource aOpen =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, plasmabeamOpen, pos, null)
.gameObject.GetComponent<AudioSource>();
AudioSource aLoop =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, plasmabeamLoop, pos, loopParent)
.gameObject.GetComponent<AudioSource>();
if (aOpen != null && aLoop != null)
{
aOpen.pitch = Random.Range(0.8f, 1f);
aOpen.volume = Random.Range(volumeRange.x, volumeRange.y);
aOpen.minDistance = 50f;
aOpen.loop = false;
aOpen.Play();
aLoop.pitch = Random.Range(0.95f, 1f);
aLoop.volume = Random.Range(volumeRange.x, volumeRange.y);
aLoop.loop = true;
aLoop.minDistance = 50f;
aLoop.Play();
}
}
// Play plasma beam closing audio at specific position
public void PlasmaBeamClose(Vector3 pos)
{
AudioSource aClose =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, plasmabeamClose, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aClose != null)
{
aClose.pitch = Random.Range(0.8f, 1f);
aClose.volume = Random.Range(volumeRange.x, volumeRange.y);
aClose.minDistance = 50f;
aClose.loop = false;
aClose.Play();
}
}
// Play heavy plasma beam shot and loop audio at specific position
public AudioSource PlasmaBeamHeavyLoop(Vector3 pos, Transform loopParent)
{
AudioSource aOpen =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, plasmabeamHeavyOpen, pos, null)
.gameObject.GetComponent<AudioSource>();
AudioSource aLoop =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, plasmabeamHeavyLoop, pos, loopParent)
.gameObject.GetComponent<AudioSource>();
if (aOpen != null && aLoop != null)
{
aOpen.pitch = Random.Range(0.8f, 1f);
aOpen.volume = Random.Range(volumeRange.x, volumeRange.y);
aOpen.minDistance = 50f;
aOpen.loop = false;
aOpen.Play();
aLoop.pitch = Random.Range(0.95f, 1f);
aLoop.volume = Random.Range(volumeRange.x, volumeRange.y);
aLoop.loop = true;
aLoop.minDistance = 50f;
aLoop.Play();
}
return aLoop;
}
// Play heavy plasma beam closing audio at specific position
public void PlasmaBeamHeavyClose(Vector3 pos)
{
AudioSource aClose =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, plasmabeamHeavyClose, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aClose != null)
{
aClose.pitch = Random.Range(0.8f, 1f);
aClose.volume = Random.Range(volumeRange.x, volumeRange.y);
aClose.minDistance = 50f;
aClose.loop = false;
aClose.Play();
}
}
// Play lightning gun shot and loop audio at specific position
public void LightningGunLoop(Vector3 pos, Transform loopParent)
{
AudioSource aOpen =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, lightningGunOpen, pos, null)
.gameObject.GetComponent<AudioSource>();
AudioSource aLoop =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, lightningGunLoop, pos, loopParent.parent)
.gameObject.GetComponent<AudioSource>();
if (aOpen != null && aLoop != null)
{
aOpen.pitch = Random.Range(0.8f, 1f);
aOpen.volume = Random.Range(volumeRange.x, volumeRange.y);
aOpen.minDistance = 50f;
aOpen.loop = false;
aOpen.Play();
aLoop.pitch = Random.Range(0.95f, 1f);
aLoop.volume = Random.Range(volumeRange.x, volumeRange.y);
aLoop.loop = true;
aLoop.minDistance = 50f;
aLoop.Play();
}
}
// Play lightning gun closing audio at specific position
public void LightningGunClose(Vector3 pos)
{
AudioSource aClose =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, lightningGunClose, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aClose != null)
{
aClose.pitch = Random.Range(0.8f, 1f);
aClose.volume = Random.Range(volumeRange.x, volumeRange.y);
aClose.minDistance = 50f;
aClose.loop = false;
aClose.Play();
}
}
// Play flame shot and loop audio at specific position
public void FlameGunLoop(Vector3 pos, Transform loopParent)
{
AudioSource aOpen =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, flameGunOpen, pos, null)
.gameObject.GetComponent<AudioSource>();
AudioSource aLoop =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, flameGunLoop, pos, loopParent.parent)
.gameObject.GetComponent<AudioSource>();
if (aOpen != null && aLoop != null)
{
aOpen.pitch = Random.Range(0.8f, 1f);
aOpen.volume = Random.Range(volumeRange.x, volumeRange.y);
aOpen.minDistance = 50f;
aOpen.loop = false;
aOpen.Play();
aLoop.pitch = Random.Range(0.95f, 1f);
aLoop.volume = Random.Range(volumeRange.x, volumeRange.y);
aLoop.loop = true;
aLoop.minDistance = 50f;
aLoop.Play();
}
}
// Play flame closing audio at specific position
public void FlameGunClose(Vector3 pos)
{
AudioSource aClose =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, flameGunClose, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aClose != null)
{
aClose.pitch = Random.Range(0.8f, 1f);
aClose.volume = Random.Range(volumeRange.x, volumeRange.y);
aClose.minDistance = 50f;
aClose.loop = false;
aClose.Play();
}
}
// Play laser pulse shot audio at specific position
public void LaserImpulseShot(Vector3 pos)
{
if (timer_01 >= laserImpulseDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource, laserImpulseShot, pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.9f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 20f;
aSrc.loop = false;
aSrc.Play();
timer_01 = 0f;
}
}
}
// Play laser pulse hit audio at specific position
public void LaserImpulseHit(Vector3 pos)
{
if (timer_02 >= laserImpulseHitDelay)
{
AudioSource aSrc =
F3DPoolManager.Pools["GeneratedPool"].SpawnAudio(audioSource,
laserImpulseHit[Random.Range(0, plasmagunHit.Length)], pos, null)
.gameObject.GetComponent<AudioSource>();
if (aSrc != null)
{
aSrc.pitch = Random.Range(0.8f, 1f);
aSrc.volume = Random.Range(volumeRange.x, volumeRange.y);
aSrc.minDistance = 20f;
aSrc.loop = false;
aSrc.Play();
timer_02 = 0f;
}
}
}
}
}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: deb1b38f7c8f8e44385c9f01d055bfd0
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:

View File

@ -0,0 +1,234 @@
using UnityEngine;
using System.Collections;
namespace FORGE3D
{
[RequireComponent(typeof(LineRenderer))]
public class F3DBeam : MonoBehaviour
{
public LayerMask layerMask;
[Tooltip("The amount of damage this projectil inflicts generally.")]
public float Damage = 1f;
[Tooltip("The magnitude of the blast when hitting something.")]
public float BlastMagnitude = 0.1f;
[HideInInspector]
public int OwnerId = 0;
public WeaponEffect fxType; // Weapon type
public bool OneShot; // Constant or single beam?
public Texture[] BeamFrames; // Animation frame sequence
public float FrameStep; // Animation time
public float beamScale; // Default beam scale to be kept over distance
public float MaxBeamLength; // Maximum beam length
public bool AnimateUV; // UV Animation
public float UVTime; // UV Animation speed
public Transform rayImpact; // Impact transform
public Transform rayMuzzle; // Muzzle flash transform
LineRenderer lineRenderer; // Line rendered component
RaycastHit hitPoint; // Raycast structure
RaycastHit2D hitPoint2D; // Raycasthit in 2d
int frameNo; // Frame counter
int FrameTimerID; // Frame timer reference
float beamLength; // Current beam length
float initialBeamOffset; // Initial UV offset
public float fxOffset; // Fx offset from bullet's touch point
void Awake()
{
// Get line renderer component
lineRenderer = GetComponent<LineRenderer>();
// Assign first frame texture
if (!AnimateUV && BeamFrames.Length > 0)
lineRenderer.material.mainTexture = BeamFrames[0];
// Randomize uv offset
initialBeamOffset = Random.Range(0f, 5f);
}
// OnSpawned called by pool manager
void OnSpawned()
{
// Do one time raycast in case of one shot flag
if (OneShot)
Raycast();
// Start animation sequence if beam frames array has more than 2 elements
if (BeamFrames.Length > 1)
Animate();
}
// OnDespawned called by pool manager
void OnDespawned()
{
// Reset frame counter
frameNo = 0;
// Clear timer
if (FrameTimerID != -1)
{
F3DTime.time.RemoveTimer(FrameTimerID);
FrameTimerID = -1;
}
}
// Hit point calculation
void Raycast()
{
// Prepare structure and create ray
hitPoint = new RaycastHit();
Ray ray = new Ray(transform.position, transform.forward);
// Calculate default beam proportion multiplier based on default scale and maximum length
float propMult = MaxBeamLength * (beamScale / 10f);
// Raycast
if (Physics.Raycast(ray, out hitPoint, MaxBeamLength, layerMask)
&& DetectorCollision(hitPoint) != OwnerId)
{
// Get current beam length and update line renderer accordingly
beamLength = Vector3.Distance(transform.position, hitPoint.point);
lineRenderer.SetPosition(1, new Vector3(0f, 0f, beamLength));
// Calculate default beam proportion multiplier based on default scale and current length
propMult = beamLength * (beamScale / 10f);
// Spawn prefabs and apply force
switch (fxType)
{
case WeaponEffect.Sniper:
F3DFXController.instance.SniperImpact(hitPoint.point + hitPoint.normal * fxOffset);
break;
case WeaponEffect.RailGun:
F3DFXController.instance.RailgunImpact(hitPoint.point + hitPoint.normal * fxOffset);
break;
case WeaponEffect.PlasmaBeam:
break;
case WeaponEffect.PlasmaBeamHeavy:
break;
}
// Adjust impact effect position
if (rayImpact)
rayImpact.position = hitPoint.point - transform.forward * 0.5f;
}
else
{
// Set beam to maximum length
beamLength = MaxBeamLength;
lineRenderer.SetPosition(1, new Vector3(0f, 0f, beamLength));
// Adjust impact effect position
if (rayImpact)
rayImpact.position = transform.position + transform.forward * beamLength;
}
// Adjust muzzle position
if (rayMuzzle)
rayMuzzle.position = transform.position + transform.forward * 0.1f;
// Set beam scaling according to its length
lineRenderer.material.SetTextureScale("_BaseMap", new Vector2(propMult, 1f));
}
/// <summary>
/// Checks if a HitDetector was hit and registers a hit
/// on it if so.
/// </summary>
/// <param name="hitPoint"></param>
/// <returns>OwnerId of the hit detector (-1 on none)</returns>
int DetectorCollision(RaycastHit hitPoint)
{
if (hitPoint.collider.gameObject.TryGetComponent(out HitDetection detector))
{
// Check if the one firing was hit
if (detector.OwnerId == OwnerId)
{
return OwnerId;
}
ProjectileDamage inflictling = new()
{
DamageValue = Damage,
ImpactMagnitude = BlastMagnitude,
ImpactPoint = hitPoint.point,
ImpactDirection = transform.forward
};
detector.RegisterHit(inflictling);
return detector.OwnerId;
}
return -1;
}
// Advance texture frame
void OnFrameStep()
{
// Set current texture frame based on frame counter
lineRenderer.material.mainTexture = BeamFrames[frameNo];
frameNo++;
// Reset frame counter
if (frameNo == BeamFrames.Length)
frameNo = 0;
}
// Initialize frame animation
void Animate()
{
if (BeamFrames.Length > 1)
{
// Set current frame
frameNo = 0;
lineRenderer.material.mainTexture = BeamFrames[frameNo];
// Add timer
FrameTimerID = F3DTime.time.AddTimer(FrameStep, BeamFrames.Length - 1, OnFrameStep);
frameNo = 1;
}
}
// Apply force to last hit object
void ApplyForce(float force)
{
if (hitPoint.rigidbody != null)
hitPoint.rigidbody.AddForceAtPosition(transform.forward * force, hitPoint.point,
ForceMode.VelocityChange);
}
// Set offset of impact
public void SetOffset(float offset)
{
fxOffset = offset;
}
private float animateUVTime;
void Update()
{
// Animate texture UV
if (AnimateUV)
{
animateUVTime += Time.deltaTime;
if (animateUVTime > 1.0f)
animateUVTime = 0f;
var v = animateUVTime * UVTime + initialBeamOffset;
lineRenderer.material.SetVector("_Offset", new Vector2(v, 0));
}
// Raycast for laser beams
if (!OneShot)
Raycast();
}
}
}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1a9aefbed78059c4c965f18823e35186
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:

View File

@ -0,0 +1,57 @@
using UnityEngine;
using System.Collections;
namespace FORGE3D
{
[RequireComponent(typeof(LineRenderer))]
public class F3DCurvedBeam : MonoBehaviour
{
public Transform dest;
public float beamScale; // Default beam scale to be kept over distance
public float UVTime; // UV Animation speed
LineRenderer lineRenderer; // Line rendered component
public int curvePoints;
public float curveHeight;
float initialBeamOffset; // Initial UV offset
void Start()
{
// Get line renderer component
lineRenderer = GetComponent<LineRenderer>();
// Randomize uv offset
initialBeamOffset = Random.Range(0f, 5f);
lineRenderer.positionCount = curvePoints;
}
void Update()
{
lineRenderer.material.SetTextureOffset("_MainTex", new Vector2(Time.time * UVTime + initialBeamOffset, 0f));
float distToDest = Vector3.Distance(transform.position, dest.position);
lineRenderer.SetPosition(0, transform.position);
float piRate = Mathf.PI / (curvePoints - 1);
for (int i = 1; i < curvePoints - 1; i++)
{
float distRatio = (distToDest / (curvePoints - 1)) * i;
Vector3 midPos = Vector3.Normalize(dest.position - transform.position) * distRatio;
float cHeight = Mathf.Sin(piRate * i) * curveHeight;
midPos += transform.up * cHeight;
lineRenderer.SetPosition(i, transform.position + midPos);
}
lineRenderer.SetPosition(curvePoints - 1, dest.position);
float propMult = distToDest * (beamScale / 10f);
// Set beam scaling according to its length
lineRenderer.material.SetTextureScale("_MainTex", new Vector2(propMult, 1f));
}
}
}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a1fb4a84404a99f4d89184722d264b97
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:

View File

@ -0,0 +1,69 @@
using UnityEngine;
using System.Collections;
namespace FORGE3D
{
public class F3DDespawn : MonoBehaviour
{
public float DespawnDelay; // Despawn delay in ms
public bool DespawnOnMouseUp; // Despawn on mouse up used for beams demo
AudioSource aSrc; // Cached audio source component
void Awake()
{
// Get audio source component
aSrc = GetComponent<AudioSource>();
}
// OnSpawned called by pool manager
public void OnSpawned()
{
// Invokes despawn using timer delay
if (!DespawnOnMouseUp)
F3DTime.time.AddTimer(DespawnDelay, 1, DespawnOnTimer);
}
// OnDespawned called by pool manager
public void OnDespawned()
{
}
// Run required checks for the looping audio source and despawn the game object
public void DespawnOnTimer()
{
if (aSrc != null)
{
if (aSrc.loop)
DespawnOnMouseUp = true;
else
{
DespawnOnMouseUp = false;
Despawn();
}
}
else
{
Despawn();
}
}
// Despawn game object this script attached to
public void Despawn()
{
F3DPoolManager.Pools["GeneratedPool"].Despawn(transform);
//F3DPool.instance.Despawn(transform);
}
void Update()
{
// Despawn on mouse up
if (Input.GetMouseButtonUp(0))
if (aSrc != null && aSrc.loop || DespawnOnMouseUp)
Despawn();
}
}
}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: af19da7458dc9174699d0b34f404eafc
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:

View File

@ -0,0 +1,542 @@
using UnityEngine;
using System;
using System.Linq;
namespace FORGE3D
{
// Weapon types
public enum WeaponEffect
{
Vulcan,
SoloGun,
Sniper,
ShotGun,
Seeker,
RailGun,
PlasmaGun,
PlasmaBeam,
PlasmaBeamHeavy,
LightningGun,
FlameRed,
LaserImpulse,
None
}
public class F3DFXController : MonoBehaviour
{
// Singleton instance
public static F3DFXController instance;
// Current firing socket
private int curSocket = 0;
// Timer reference
private int timerID = -1;
[Header("Turret setup")] public Transform[] TurretSocket; // Sockets reference
public ParticleSystem[] ShellParticles; // Bullet shells particle system
public WeaponEffect SelectedWeaponEffect; // Default starting weapon type
[Header("Vulcan")] public Transform vulcanProjectile; // Projectile prefab
public Transform vulcanMuzzle; // Muzzle flash prefab
public Transform vulcanImpact; // Impact prefab
public float vulcanOffset;
public float VulcanFireRate = 0.07f;
[Header("Solo gun")] public Transform soloGunProjectile;
public Transform soloGunMuzzle;
public Transform soloGunImpact;
public float soloGunOffset;
public float SoloGunFireRate = 0.3f;
[Header("Sniper")] public Transform sniperBeam;
public Transform sniperMuzzle;
public Transform sniperImpact;
public float sniperOffset;
[Header("Shotgun")] public Transform shotGunProjectile;
public Transform shotGunMuzzle;
public Transform shotGunImpact;
public float shotGunOffset;
[Header("Seeker")] public Transform seekerProjectile;
public Transform seekerMuzzle;
public Transform seekerImpact;
public float seekerOffset;
public float SeekerFireRate = 0.5f;
[Header("Rail gun")] public Transform railgunBeam;
public Transform railgunMuzzle;
public Transform railgunImpact;
public float railgunOffset;
public float RailGunFireRate = 1f;
[Header("Plasma gun")] public Transform plasmagunProjectile;
public Transform plasmagunMuzzle;
public Transform plasmagunImpact;
public float plasmaGunOffset;
[Header("Plasma beam")] public Transform plasmaBeam;
public float plasmaOffset;
[Header("Plasma beam heavy")] public Transform plasmaBeamHeavy;
public float plasmaBeamHeavyOffset;
private AudioSource plasmaBeamLoopAudio;
[Header("Lightning gun")] public Transform lightningGunBeam;
public float lightingGunBeamOffset;
[Header("Flame")] public Transform flameRed;
public float flameOffset;
[Header("Laser impulse")] public Transform laserImpulseProjectile;
public Transform laserImpulseMuzzle;
public Transform laserImpulseImpact;
public float laserImpulseOffset;
public float LaserImpulseFireRate = 0.08f;
//Owner of this weapon system
private int _ownerId = 0;
private void Awake()
{
_ownerId = gameObject.GetInstanceID();
// Initialize singleton
instance = this;
// Initialize bullet shells particles
for (int i = 0; i < ShellParticles.Length; i++)
{
var em = ShellParticles[i].emission;
em.enabled = false;
ShellParticles[i].Stop();
ShellParticles[i].gameObject.SetActive(true);
}
}
// Switch to next weapon type
public void NextWeapon()
{
if ((int)SelectedWeaponEffect < Enum.GetNames(typeof(WeaponEffect)).Length - 1)
{
SelectedWeaponEffect++;
}
}
// Switch to previous weapon type
public void PrevWeapon()
{
if (SelectedWeaponEffect > 0)
{
SelectedWeaponEffect--;
}
}
// Advance to next turret socket
private void AdvanceSocket()
{
curSocket++;
if (curSocket >= TurretSocket.Length)
curSocket = 0;
}
// Fire turret weapon
public void Fire()
{
switch (SelectedWeaponEffect)
{
case WeaponEffect.Vulcan:
// Fire vulcan at specified rate until canceled
timerID = F3DTime.time.AddTimer(VulcanFireRate, Vulcan);
// Invoke manually before the timer ticked to avoid initial delay
Vulcan();
break;
case WeaponEffect.SoloGun:
timerID = F3DTime.time.AddTimer(SoloGunFireRate, SoloGun);
SoloGun();
break;
case WeaponEffect.Sniper:
timerID = F3DTime.time.AddTimer(0.3f, Sniper);
Sniper();
break;
case WeaponEffect.ShotGun:
timerID = F3DTime.time.AddTimer(0.3f, ShotGun);
ShotGun();
break;
case WeaponEffect.Seeker:
timerID = F3DTime.time.AddTimer(SeekerFireRate, Seeker);
Seeker();
break;
case WeaponEffect.RailGun:
timerID = F3DTime.time.AddTimer(RailGunFireRate, RailGun);
RailGun();
break;
case WeaponEffect.PlasmaGun:
timerID = F3DTime.time.AddTimer(0.2f, PlasmaGun);
PlasmaGun();
break;
case WeaponEffect.PlasmaBeam:
// Beams has no timer requirement
PlasmaBeam();
break;
case WeaponEffect.PlasmaBeamHeavy:
// Beams has no timer requirement
PlasmaBeamHeavy();
break;
case WeaponEffect.LightningGun:
// Beams has no timer requirement
LightningGun();
break;
case WeaponEffect.FlameRed:
// Flames has no timer requirement
FlameRed();
break;
case WeaponEffect.LaserImpulse:
timerID = F3DTime.time.AddTimer(LaserImpulseFireRate, LaserImpulse);
LaserImpulse();
break;
}
}
// Stop firing
public void Stop()
{
// Remove firing timer
if (timerID != -1)
{
F3DTime.time.RemoveTimerNextTick(timerID);
timerID = -1;
}
switch (SelectedWeaponEffect)
{
case WeaponEffect.PlasmaBeam:
F3DAudioController.instance.PlasmaBeamClose(transform.position);
break;
case WeaponEffect.PlasmaBeamHeavy:
StopPlasmaBeamHeavy();
F3DAudioController.instance.PlasmaBeamHeavyClose(transform.position);
if (plasmaBeamLoopAudio == null) break;
F3DPoolManager.Pools["GeneratedPool"].Despawn(plasmaBeamLoopAudio.gameObject.transform);
break;
case WeaponEffect.LightningGun:
F3DAudioController.instance.LightningGunClose(transform.position);
break;
case WeaponEffect.FlameRed:
F3DAudioController.instance.FlameGunClose(transform.position);
break;
}
}
// Fire vulcan weapon
private void Vulcan()
{
// Get random rotation that offset spawned projectile
var offset = Quaternion.Euler(UnityEngine.Random.onUnitSphere);
// Spawn muzzle flash and projectile with the rotation offset at current socket position
F3DPoolManager.Pools["GeneratedPool"].Spawn(vulcanMuzzle, TurretSocket[curSocket].position,
TurretSocket[curSocket].rotation, TurretSocket[curSocket]);
var newGO =
F3DPoolManager.Pools["GeneratedPool"].Spawn(vulcanProjectile,
TurretSocket[curSocket].position + TurretSocket[curSocket].forward,
offset * TurretSocket[curSocket].rotation, null).gameObject;
var proj = newGO.gameObject.GetComponent<F3DProjectile>();
if (proj)
{
proj.SetOffset(vulcanOffset);
proj.OwnerId = _ownerId;
}
// Emit one bullet shell
if (ShellParticles.Length > 0)
ShellParticles[curSocket].Emit(1);
// Play shot sound effect
F3DAudioController.instance.VulcanShot(TurretSocket[curSocket].position);
// Advance to next turret socket
AdvanceSocket();
}
// Spawn vulcan weapon impact
public void VulcanImpact(Vector3 pos)
{
// Spawn impact prefab at specified position
F3DPoolManager.Pools["GeneratedPool"].Spawn(vulcanImpact, pos, Quaternion.identity, null);
// Play impact sound effect
F3DAudioController.instance.VulcanHit(pos);
}
// Fire sologun weapon
private void SoloGun()
{
var offset = Quaternion.Euler(UnityEngine.Random.onUnitSphere);
F3DPoolManager.Pools["GeneratedPool"].Spawn(soloGunMuzzle, TurretSocket[curSocket].position,
TurretSocket[curSocket].rotation, TurretSocket[curSocket]);
var newGO =
F3DPoolManager.Pools["GeneratedPool"].Spawn(soloGunProjectile,
TurretSocket[curSocket].position + TurretSocket[curSocket].forward,
offset * TurretSocket[curSocket].rotation, null).gameObject;
var proj = newGO.GetComponent<F3DProjectile>();
if (proj)
{
proj.SetOffset(soloGunOffset);
proj.OwnerId = _ownerId;
}
F3DAudioController.instance.SoloGunShot(TurretSocket[curSocket].position);
AdvanceSocket();
}
// Spawn sologun weapon impact
public void SoloGunImpact(Vector3 pos)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(soloGunImpact, pos, Quaternion.identity, null);
F3DAudioController.instance.SoloGunHit(pos);
}
// Fire sniper weapon
private void Sniper()
{
var offset = Quaternion.Euler(UnityEngine.Random.onUnitSphere);
F3DPoolManager.Pools["GeneratedPool"].Spawn(sniperMuzzle, TurretSocket[curSocket].position,
TurretSocket[curSocket].rotation, TurretSocket[curSocket]);
var newGO =
F3DPoolManager.Pools["GeneratedPool"].Spawn(sniperBeam, TurretSocket[curSocket].position,
offset * TurretSocket[curSocket].rotation, null).gameObject;
var beam = newGO.GetComponent<F3DBeam>();
if (beam)
{
beam.SetOffset(sniperOffset);
}
F3DAudioController.instance.SniperShot(TurretSocket[curSocket].position);
if (ShellParticles.Length > 0)
ShellParticles[curSocket].Emit(1);
AdvanceSocket();
}
// Spawn sniper weapon impact
public void SniperImpact(Vector3 pos)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(sniperImpact, pos, Quaternion.identity, null);
F3DAudioController.instance.SniperHit(pos);
}
// Fire shotgun weapon
private void ShotGun()
{
var offset = Quaternion.Euler(UnityEngine.Random.onUnitSphere);
F3DPoolManager.Pools["GeneratedPool"].Spawn(shotGunMuzzle, TurretSocket[curSocket].position,
TurretSocket[curSocket].rotation, TurretSocket[curSocket]);
F3DPoolManager.Pools["GeneratedPool"].Spawn(shotGunProjectile, TurretSocket[curSocket].position,
offset * TurretSocket[curSocket].rotation, null);
F3DAudioController.instance.ShotGunShot(TurretSocket[curSocket].position);
if (ShellParticles.Length > 0)
ShellParticles[curSocket].Emit(1);
AdvanceSocket();
}
// Fire seeker weapon
private void Seeker()
{
var offset = Quaternion.Euler(UnityEngine.Random.onUnitSphere);
seekerMuzzle =
F3DPoolManager.Pools["GeneratedPool"].templates.First(t => t.name == seekerMuzzle.name);
seekerProjectile =
F3DPoolManager.Pools["GeneratedPool"].templates.First(t => t.name == seekerProjectile.name);
F3DPoolManager.Pools["GeneratedPool"].Spawn(seekerMuzzle, TurretSocket[curSocket].position,
TurretSocket[curSocket].rotation, TurretSocket[curSocket]);
var newGO =
F3DPoolManager.Pools["GeneratedPool"].Spawn(seekerProjectile, TurretSocket[curSocket].position,
offset * TurretSocket[curSocket].rotation, null).gameObject;
var proj = newGO.GetComponent<F3DProjectile>();
if (proj)
{
proj.SetOffset(seekerOffset);
proj.OwnerId = _ownerId;
}
F3DAudioController.instance.SeekerShot(TurretSocket[curSocket].position);
AdvanceSocket();
}
// Spawn seeker weapon impact
public void SeekerImpact(Vector3 pos)
{
seekerImpact =
F3DPoolManager.Pools["GeneratedPool"].templates.First(t => t.name == seekerImpact.name);
F3DPoolManager.Pools["GeneratedPool"].Spawn(seekerImpact, pos, Quaternion.identity, null);
F3DAudioController.instance.SeekerHit(pos);
}
// Fire rail gun weapon
private void RailGun()
{
var offset = Quaternion.Euler(UnityEngine.Random.onUnitSphere);
F3DPoolManager.Pools["GeneratedPool"].Spawn(railgunMuzzle, TurretSocket[curSocket].position,
TurretSocket[curSocket].rotation, TurretSocket[curSocket]);
var newGO =
F3DPoolManager.Pools["GeneratedPool"].Spawn(railgunBeam, TurretSocket[curSocket].position,
offset * TurretSocket[curSocket].rotation, null).gameObject;
var beam = newGO.GetComponent<F3DBeam>();
if (beam)
{
beam.SetOffset(railgunOffset);
beam.OwnerId = _ownerId;
}
F3DAudioController.instance.RailGunShot(TurretSocket[curSocket].position);
if (ShellParticles.Length > 0)
ShellParticles[curSocket].Emit(1);
AdvanceSocket();
}
// Spawn rail gun weapon impact
public void RailgunImpact(Vector3 pos)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(railgunImpact, pos, Quaternion.identity, null);
F3DAudioController.instance.RailGunHit(pos);
}
// Fire plasma gun weapon
private void PlasmaGun()
{
var offset = Quaternion.Euler(UnityEngine.Random.onUnitSphere);
F3DPoolManager.Pools["GeneratedPool"].Spawn(plasmagunMuzzle, TurretSocket[curSocket].position,
TurretSocket[curSocket].rotation, TurretSocket[curSocket]);
var newGo =
F3DPoolManager.Pools["GeneratedPool"].Spawn(plasmagunProjectile, TurretSocket[curSocket].position,
offset * TurretSocket[curSocket].rotation, null).gameObject;
var proj = newGo.GetComponent<F3DProjectile>();
if (proj)
{
proj.SetOffset(plasmaOffset);
proj.OwnerId = _ownerId;
}
F3DAudioController.instance.PlasmaGunShot(TurretSocket[curSocket].position);
AdvanceSocket();
}
// Spawn plasma gun weapon impact
public void PlasmaGunImpact(Vector3 pos)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(plasmagunImpact, pos, Quaternion.identity, null);
F3DAudioController.instance.PlasmaGunHit(pos);
}
// Fire plasma beam weapon
private void PlasmaBeam()
{
for (var i = 0; i < TurretSocket.Length; i++)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(plasmaBeam, TurretSocket[i].position,
TurretSocket[i].rotation,
TurretSocket[i]);
}
F3DAudioController.instance.PlasmaBeamLoop(transform.position, transform.parent);
}
private void StopPlasmaBeamHeavy()
{
for (var i = 0; i < TurretSocket.Length; i++)
{
foreach (Transform child in TurretSocket[i])
{
F3DPoolManager.Pools["GeneratedPool"].Despawn(child, plasmaBeamHeavy);
}
}
}
// Fire heavy beam weapon
private void PlasmaBeamHeavy()
{
for (var i = 0; i < TurretSocket.Length; i++)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(plasmaBeamHeavy, TurretSocket[i].position,
TurretSocket[i].rotation,
TurretSocket[i]);
}
plasmaBeamLoopAudio = F3DAudioController.instance.PlasmaBeamHeavyLoop(transform.position, transform.parent);
}
// Fire lightning gun weapon
private void LightningGun()
{
for (var i = 0; i < TurretSocket.Length; i++)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(lightningGunBeam, TurretSocket[i].position,
TurretSocket[i].rotation,
TurretSocket[i]);
}
F3DAudioController.instance.LightningGunLoop(transform.position, transform);
}
// Fire flames weapon
private void FlameRed()
{
for (var i = 0; i < TurretSocket.Length; i++)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(flameRed, TurretSocket[i].position,
TurretSocket[i].rotation,
TurretSocket[i]);
}
F3DAudioController.instance.FlameGunLoop(transform.position, transform);
}
// Fire laser pulse weapon
private void LaserImpulse()
{
var offset = Quaternion.Euler(UnityEngine.Random.onUnitSphere);
F3DPoolManager.Pools["GeneratedPool"].Spawn(laserImpulseMuzzle, TurretSocket[curSocket].position,
TurretSocket[curSocket].rotation, TurretSocket[curSocket]);
var newGO =
F3DPoolManager.Pools["GeneratedPool"].Spawn(laserImpulseProjectile, TurretSocket[curSocket].position,
offset * TurretSocket[curSocket].rotation, null).gameObject;
var proj = newGO.GetComponent<F3DProjectile>();
if (proj)
{
proj.SetOffset(laserImpulseOffset);
proj.OwnerId = _ownerId;
}
F3DAudioController.instance.LaserImpulseShot(TurretSocket[curSocket].position);
AdvanceSocket();
}
// Spawn laser pulse weapon impact
public void LaserImpulseImpact(Vector3 pos)
{
F3DPoolManager.Pools["GeneratedPool"].Spawn(laserImpulseImpact, pos, Quaternion.identity, null);
F3DAudioController.instance.LaserImpulseHit(pos);
}
}
}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d2b82c757a706dd44ad77efcf0d513f4
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:

View File

@ -0,0 +1,81 @@
using UnityEngine;
using System.Collections;
namespace FORGE3D
{
public class F3DFlameThrower : MonoBehaviour
{
public Light pLight; // Attached point light
public ParticleSystem heat; // Heat particles
int lightState; // Point light state flag (fading in or out)
bool despawn; // Despawn state flag
ParticleSystem ps;
void Start()
{
ps = GetComponent<ParticleSystem>();
}
// OnSpawned called by pool manager
void OnSpawned()
{
despawn = false;
lightState = 1;
pLight.intensity = 0f;
}
// OnDespawned called by pool manager
void OnDespawned()
{
}
// Despawn game object
void OnDespawn()
{
F3DPoolManager.Pools["GeneratedPool"].Despawn(transform);
}
void Update()
{
// Despawn on mouse
if (Input.GetMouseButtonUp(0))
{
if (!despawn)
{
// Set despawn flag and add despawn timer allowing particles fading
despawn = true;
F3DTime.time.AddTimer(1f, 1, OnDespawn);
// Stop the particle systems
ps.Stop();
if (heat)
heat.Stop();
// Toggle light state
pLight.intensity = 0.6f;
lightState = -1;
}
}
// Fade in point light
if (lightState == 1)
{
pLight.intensity = Mathf.Lerp(pLight.intensity, 0.7f, Time.deltaTime*10f);
if (pLight.intensity >= 0.5f)
lightState = 0;
}
// Fade out point light
else if (lightState == -1)
{
pLight.intensity = Mathf.Lerp(pLight.intensity, -0.1f, Time.deltaTime*10f);
if (pLight.intensity <= 0f)
lightState = 0;
}
}
}
}

Some files were not shown because too many files have changed in this diff Show More