Version 17.5
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 44a536d7fede4b140b3647935ea8c8fa
|
||||
folderAsset: yes
|
||||
timeCreated: 1479853728
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,67 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!91 &9100000
|
||||
AnimatorController:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: LongbowAnimationController
|
||||
serializedVersion: 5
|
||||
m_AnimatorParameters: []
|
||||
m_AnimatorLayers:
|
||||
- serializedVersion: 5
|
||||
m_Name: Base Layer
|
||||
m_StateMachine: {fileID: 110744886}
|
||||
m_Mask: {fileID: 0}
|
||||
m_Motions: []
|
||||
m_Behaviours: []
|
||||
m_BlendingMode: 0
|
||||
m_SyncedLayerIndex: -1
|
||||
m_DefaultWeight: 0
|
||||
m_IKPass: 0
|
||||
m_SyncedLayerAffectsTiming: 0
|
||||
m_Controller: {fileID: 9100000}
|
||||
--- !u!1102 &110288548
|
||||
AnimatorState:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: Idle
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions: []
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: e694f124da5bfd84d97e67e8c2719420, type: 3}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
--- !u!1107 &110744886
|
||||
AnimatorStateMachine:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: Base Layer
|
||||
m_ChildStates:
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 110288548}
|
||||
m_Position: {x: 396, y: 36, z: 0}
|
||||
m_ChildStateMachines: []
|
||||
m_AnyStateTransitions: []
|
||||
m_EntryTransitions: []
|
||||
m_StateMachineTransitions: {}
|
||||
m_StateMachineBehaviours: []
|
||||
m_AnyStatePosition: {x: 204, y: -48, z: 0}
|
||||
m_EntryPosition: {x: 168, y: 120, z: 0}
|
||||
m_ExitPosition: {x: 800, y: 120, z: 0}
|
||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||
m_DefaultState: {fileID: 110288548}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 57d4c0e09fe27de44a83d11d4f4969c7
|
||||
timeCreated: 1454447900
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 38392bbe7ae2c464daae1fe24a1147c1
|
||||
folderAsset: yes
|
||||
timeCreated: 1479762244
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,213 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: ArcheryTargetWeeble
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: S_RECEIVE_SHADOWS S_SPECULAR_BLINNPHONG _EMISSION _LIGHTMAPPING_REALTIME
|
||||
_UVSEC_UV1
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
OriginalShader: Standard
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: b0b65ac2add33d04b9c6485a060c240a, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _SpecGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: g_tOverrideLightmap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _AlphaTestRef
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _EmissionScaleUI
|
||||
second: 1
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.885
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _Lightmapping
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SpecularMode
|
||||
second: 1
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bReceiveShadows
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bUnlit
|
||||
second: 0
|
||||
- first:
|
||||
name: g_bWorldAlignedTexture
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flCubeMapScalar
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flReflectanceBias
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceMax
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flReflectanceMin
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceScale
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _EmissionColorUI
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _EmissionColorWithMapUI
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _SpecColor
|
||||
second: {r: 0.08823532, g: 0.08823532, b: 0.08823532, a: 1}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentU
|
||||
second: {r: -1, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentV
|
||||
second: {r: 0, g: 0, b: 1, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureNormal
|
||||
second: {r: 0, g: 1, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTexturePosition
|
||||
second: {r: 0, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureSize
|
||||
second: {r: 1, g: 1, b: 1, a: 0}
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0ae132d3c08907a4d931b3ed4debc646
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,201 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: Arrow
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: S_OCCLUSION S_RECEIVE_SHADOWS S_SPECULAR_METALLIC _EMISSION _METALLICGLOSSMAP
|
||||
_NORMALMAP
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
OriginalShader: Standard
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 1c0f168f6c6fc724682cb52006182fae, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 0da37da42cf3b044ea1267da7c0d1c3f, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 456569c675d05804d94bbf510b956cbe, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 7bd88445e5dcec94284b355818ef7d87, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 87bd4f8add9797748ab450ca4852a9e1, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _SpecGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: g_tOverrideLightmap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _FogMultiplier
|
||||
second: 1
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SpecularMode
|
||||
second: 2
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bReceiveShadows
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bUnlit
|
||||
second: 0
|
||||
- first:
|
||||
name: g_bWorldAlignedTexture
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flCubeMapScalar
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flReflectanceBias
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceMax
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flReflectanceMin
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceScale
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _SpecColor
|
||||
second: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentU
|
||||
second: {r: -1, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentV
|
||||
second: {r: 0, g: 0, b: 1, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureNormal
|
||||
second: {r: 0, g: 1, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTexturePosition
|
||||
second: {r: 0, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureSize
|
||||
second: {r: 1, g: 1, b: 1, a: 0}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f7cd62d595c763c428123f260c78b711
|
||||
timeCreated: 1456804074
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,133 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: ArrowGlint
|
||||
m_Shader: {fileID: 200, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: c4a7b02e27e148a47b782f8cd5cb598d, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _InvFade
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _TintColor
|
||||
second: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f3004e0c0e5df074abcb3548fd812bfc
|
||||
timeCreated: 1478651609
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,152 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: BalloonColor
|
||||
m_Shader: {fileID: 45, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION _EMISSIONMAP _LIGHTMAPPING_DYNAMIC_LIGHTMAPS _LIGHTMAPPING_REALTIME
|
||||
_UVSEC_UV1
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 616519d6531cad84cbd01281cc9742e0, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _Occlusion
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 0011a038409c4a04885f85d463cfa164, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _SpecGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _AlphaTestRef
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _EmissionScaleUI
|
||||
second: 0.2
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.748
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _Lightmapping
|
||||
second: 1
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _EmissionColorUI
|
||||
second: {r: 0.07586192, g: 0.99999994, b: 0, a: 1}
|
||||
- first:
|
||||
name: _EmissionColorWithMapUI
|
||||
second: {r: 1, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _SpecColor
|
||||
second: {r: 0.2, g: 0.2, b: 0.2, a: 1}
|
||||
- first:
|
||||
name: _SpecularColor
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
@@ -0,0 +1,6 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 406981998f1234442a4f2eb50cfe07e1
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,133 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: BalloonPop
|
||||
m_Shader: {fileID: 203, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 210c1550425ed90419d73be09bde0486, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _InvFade
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _TintColor
|
||||
second: {r: 1, g: 1, b: 1, a: 0.5}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2d01d8c885250364bac66a45791f02e1
|
||||
timeCreated: 1478656020
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,133 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: BalloonPopLine
|
||||
m_Shader: {fileID: 200, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _InvFade
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _TintColor
|
||||
second: {r: 1, g: 1, b: 1, a: 0.5}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 25bc1e9c1d9042d4781cb174093aaaed
|
||||
timeCreated: 1478656749
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,127 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: ItemPickupOutline
|
||||
m_Shader: {fileID: 4800000, guid: 0c1cf10ea69e60e4f9eb8955749f88ec, type: 3}
|
||||
m_ShaderKeywords:
|
||||
m_LightmapFlags: 5
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Outline
|
||||
second: 0.0028
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flOutlineWidth
|
||||
second: 0.0025
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _OutlineColor
|
||||
second: {r: 0.44034123, g: 0.58823526, b: 0.42820066, a: 1}
|
||||
- first:
|
||||
name: g_vOutlineColor
|
||||
second: {r: 0.39008927, g: 0.86764705, b: 0.3508867, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3d938759d8b7a414988ec3261fb5265d
|
||||
timeCreated: 1442338990
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,127 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: ItemPickupOutlineThick
|
||||
m_Shader: {fileID: 4800000, guid: 0c1cf10ea69e60e4f9eb8955749f88ec, type: 3}
|
||||
m_ShaderKeywords:
|
||||
m_LightmapFlags: 5
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Outline
|
||||
second: 0.005
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flOutlineWidth
|
||||
second: 0.001
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _OutlineColor
|
||||
second: {r: 0.44034722, g: 0.5882403, b: 0.42820668, a: 1}
|
||||
- first:
|
||||
name: g_vOutlineColor
|
||||
second: {r: 0.4403412, g: 0.5882352, b: 0.42820063, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 425031c746a6df44aa1dfdb17c2b8b45
|
||||
timeCreated: 1442427993
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,200 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: Longbow
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: S_RECEIVE_SHADOWS S_SPECULAR_METALLIC _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
OriginalShader: Standard
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: 8b486a7fc7f4490409fb152cfaaaea36, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _SpecGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: g_tOverrideLightmap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _FogMultiplier
|
||||
second: 1
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.483
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0.13
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SpecularMode
|
||||
second: 2
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bReceiveShadows
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bUnlit
|
||||
second: 0
|
||||
- first:
|
||||
name: g_bWorldAlignedTexture
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flCubeMapScalar
|
||||
second: 0.472
|
||||
- first:
|
||||
name: g_flReflectanceBias
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceMax
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flReflectanceMin
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceScale
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _SpecColor
|
||||
second: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentU
|
||||
second: {r: -1, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentV
|
||||
second: {r: 0, g: 0, b: 1, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureNormal
|
||||
second: {r: 0, g: 1, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTexturePosition
|
||||
second: {r: 0, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureSize
|
||||
second: {r: 1, g: 1, b: 1, a: 0}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 921837a5408991d429e86efc66f8be6b
|
||||
timeCreated: 1453848957
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,200 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: LongbowNotch
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: S_RECEIVE_SHADOWS S_SPECULAR_METALLIC _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
OriginalShader: Standard
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _SpecGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: g_tOverrideLightmap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _FogMultiplier
|
||||
second: 1
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 1
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SpecularMode
|
||||
second: 2
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bReceiveShadows
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bUnlit
|
||||
second: 0
|
||||
- first:
|
||||
name: g_bWorldAlignedTexture
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flCubeMapScalar
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flReflectanceBias
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceMax
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flReflectanceMin
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceScale
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 0.46323532, g: 0.46323532, b: 0.46323532, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _SpecColor
|
||||
second: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentU
|
||||
second: {r: -1, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentV
|
||||
second: {r: 0, g: 0, b: 1, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureNormal
|
||||
second: {r: 0, g: 1, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTexturePosition
|
||||
second: {r: 0, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureSize
|
||||
second: {r: 1, g: 1, b: 1, a: 0}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5be56a64c3c6c434eb746320e06a27ac
|
||||
timeCreated: 1454951948
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,200 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: LongbowString
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: S_RECEIVE_SHADOWS S_SPECULAR_METALLIC _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap:
|
||||
OriginalShader: Standard
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _SpecGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: g_tOverrideLightmap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _FogMultiplier
|
||||
second: 1
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthDirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectDiffuse
|
||||
second: 1
|
||||
- first:
|
||||
name: _OcclusionStrengthIndirectSpecular
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SpecularMode
|
||||
second: 2
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bReceiveShadows
|
||||
second: 1
|
||||
- first:
|
||||
name: g_bUnlit
|
||||
second: 0
|
||||
- first:
|
||||
name: g_bWorldAlignedTexture
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flCubeMapScalar
|
||||
second: 0.138
|
||||
- first:
|
||||
name: g_flReflectanceBias
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceMax
|
||||
second: 1
|
||||
- first:
|
||||
name: g_flReflectanceMin
|
||||
second: 0
|
||||
- first:
|
||||
name: g_flReflectanceScale
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 0.2352941, g: 0.2352941, b: 0.2352941, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _SpecColor
|
||||
second: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentU
|
||||
second: {r: -1, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedNormalTangentV
|
||||
second: {r: 0, g: 0, b: 1, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureNormal
|
||||
second: {r: 0, g: 1, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTexturePosition
|
||||
second: {r: 0, g: 0, b: 0, a: 0}
|
||||
- first:
|
||||
name: g_vWorldAlignedTextureSize
|
||||
second: {r: 1, g: 1, b: 1, a: 0}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 40fa752affdc6cf45a47396764154085
|
||||
timeCreated: 1454951948
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,133 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: TorchFire
|
||||
m_Shader: {fileID: 203, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 2800000, guid: abf6d945eaf1e3448b2c5264c0b1be0f, type: 3}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _InvFade
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 1, g: 1, b: 1, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
- first:
|
||||
name: _TintColor
|
||||
second: {r: 1, g: 1, b: 1, a: 0.5}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9fff76eb68ad4c44b87be9e2ca168a80
|
||||
timeCreated: 1478653933
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,127 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: TorchHead
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 0.89705884, g: 0.81861967, b: 0.7519464, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 67c31797bbf07114eb2d50aa3ae184e9
|
||||
timeCreated: 1478737675
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,127 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: TorchShaft
|
||||
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_ShaderKeywords: _EMISSION
|
||||
m_LightmapFlags: 1
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
m_SavedProperties:
|
||||
serializedVersion: 2
|
||||
m_TexEnvs:
|
||||
- first:
|
||||
name: _BumpMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailAlbedoMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailMask
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _DetailNormalMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _EmissionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MainTex
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _MetallicGlossMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _OcclusionMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- first:
|
||||
name: _ParallaxMap
|
||||
second:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Floats:
|
||||
- first:
|
||||
name: _BumpScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Cutoff
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _DetailNormalMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _DstBlend
|
||||
second: 0
|
||||
- first:
|
||||
name: _GlossMapScale
|
||||
second: 1
|
||||
- first:
|
||||
name: _Glossiness
|
||||
second: 0.5
|
||||
- first:
|
||||
name: _GlossyReflections
|
||||
second: 1
|
||||
- first:
|
||||
name: _Metallic
|
||||
second: 0
|
||||
- first:
|
||||
name: _Mode
|
||||
second: 0
|
||||
- first:
|
||||
name: _OcclusionStrength
|
||||
second: 1
|
||||
- first:
|
||||
name: _Parallax
|
||||
second: 0.02
|
||||
- first:
|
||||
name: _SmoothnessTextureChannel
|
||||
second: 0
|
||||
- first:
|
||||
name: _SpecularHighlights
|
||||
second: 1
|
||||
- first:
|
||||
name: _SrcBlend
|
||||
second: 1
|
||||
- first:
|
||||
name: _UVSec
|
||||
second: 0
|
||||
- first:
|
||||
name: _ZWrite
|
||||
second: 1
|
||||
m_Colors:
|
||||
- first:
|
||||
name: _Color
|
||||
second: {r: 0.39705884, g: 0.2424016, b: 0.11094292, a: 1}
|
||||
- first:
|
||||
name: _EmissionColor
|
||||
second: {r: 0, g: 0, b: 0, a: 1}
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 24e73955ba8338f41a24cd3aea0285a6
|
||||
timeCreated: 1478737675
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2f4c3e904395a784199b9a0e3166fd96
|
||||
folderAsset: yes
|
||||
timeCreated: 1479762244
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4f68f3439a26778b5669c5238bede000e546f2839bfd9bf440350542dfbc0155
|
||||
size 69600
|
||||
@@ -0,0 +1,85 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 56377e28a47008245871ca7b435044c4
|
||||
timeCreated: 1456804074
|
||||
licenseType: Store
|
||||
ModelImporter:
|
||||
serializedVersion: 19
|
||||
fileIDToRecycleName:
|
||||
100000: //RootNode
|
||||
100002: polySurface2
|
||||
100004: tip
|
||||
400000: //RootNode
|
||||
400002: polySurface2
|
||||
400004: tip
|
||||
2300000: //RootNode
|
||||
2300002: polySurface2
|
||||
2300004: tip
|
||||
3300000: //RootNode
|
||||
3300002: polySurface2
|
||||
3300004: tip
|
||||
4300000: polySurface2
|
||||
4300002: tip
|
||||
materials:
|
||||
importMaterials: 0
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
motionNodeName:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
animationCompression: 1
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
clipAnimations: []
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
importBlendShapes: 1
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
optimizeMeshForGPU: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
importAnimation: 1
|
||||
copyAvatar: 0
|
||||
humanDescription:
|
||||
human: []
|
||||
skeleton: []
|
||||
armTwist: 0.5
|
||||
foreArmTwist: 0.5
|
||||
upperLegTwist: 0.5
|
||||
legTwist: 0.5
|
||||
armStretch: 0.05
|
||||
legStretch: 0.05
|
||||
feetSpacing: 0
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 0
|
||||
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||
animationType: 0
|
||||
humanoidOversampling: 1
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7964036344ff0950ef4b17fe2272d8037a6577a3f062e0a31c2c70e1054bfdc2
|
||||
size 67056
|
||||
@@ -0,0 +1,74 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8c0fbd56181ea0843b1596b4cb0e5498
|
||||
ModelImporter:
|
||||
serializedVersion: 19
|
||||
fileIDToRecycleName:
|
||||
100000: //RootNode
|
||||
400000: //RootNode
|
||||
2300000: //RootNode
|
||||
3300000: //RootNode
|
||||
4300000: balloon
|
||||
materials:
|
||||
importMaterials: 0
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
motionNodeName:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
animationCompression: 1
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
clipAnimations: []
|
||||
isReadable: 0
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
importBlendShapes: 0
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
optimizeMeshForGPU: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 4
|
||||
importAnimation: 1
|
||||
copyAvatar: 0
|
||||
humanDescription:
|
||||
human: []
|
||||
skeleton: []
|
||||
armTwist: 0.5
|
||||
foreArmTwist: 0.5
|
||||
upperLegTwist: 0.5
|
||||
legTwist: 0.5
|
||||
armStretch: 0.05
|
||||
legStretch: 0.05
|
||||
feetSpacing: 0
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 0
|
||||
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||
animationType: 0
|
||||
humanoidOversampling: 1
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5765c2bd241514c95b13b749b875ba934e2333584e215faabdbd1bab48c3fc93
|
||||
size 1818209
|
||||
@@ -0,0 +1,205 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e694f124da5bfd84d97e67e8c2719420
|
||||
timeCreated: 1453848738
|
||||
licenseType: Store
|
||||
ModelImporter:
|
||||
serializedVersion: 19
|
||||
fileIDToRecycleName:
|
||||
100000: arrow
|
||||
100002: bow
|
||||
100004: bow_base
|
||||
100006: bow_base_CTRL
|
||||
100008: bow_base_CTRL_AnimNUL
|
||||
100010: bow_base_CTRL_HmNUL
|
||||
100012: bow_base_CTRL_SpaceNUL
|
||||
100014: //RootNode
|
||||
100016: btmArm0
|
||||
100018: btmArm1
|
||||
100020: btmArm2
|
||||
100022: btmArm3
|
||||
100024: notch
|
||||
100026: stringBtm
|
||||
100028: stringBtmArc
|
||||
100030: stringBtmNotch
|
||||
100032: stringTop
|
||||
100034: stringTopArc
|
||||
100036: stringTopNotch
|
||||
100038: topArm0
|
||||
100040: topArm1
|
||||
100042: topArm2
|
||||
100044: topArm3
|
||||
100046: bow_noString
|
||||
100048: StringGeom
|
||||
400000: arrow
|
||||
400002: bow
|
||||
400004: bow_base
|
||||
400006: bow_base_CTRL
|
||||
400008: bow_base_CTRL_AnimNUL
|
||||
400010: bow_base_CTRL_HmNUL
|
||||
400012: bow_base_CTRL_SpaceNUL
|
||||
400014: //RootNode
|
||||
400016: btmArm0
|
||||
400018: btmArm1
|
||||
400020: btmArm2
|
||||
400022: btmArm3
|
||||
400024: notch
|
||||
400026: stringBtm
|
||||
400028: stringBtmArc
|
||||
400030: stringBtmNotch
|
||||
400032: stringTop
|
||||
400034: stringTopArc
|
||||
400036: stringTopNotch
|
||||
400038: topArm0
|
||||
400040: topArm1
|
||||
400042: topArm2
|
||||
400044: topArm3
|
||||
400046: bow_noString
|
||||
400048: StringGeom
|
||||
4300000: bow
|
||||
4300002: arrow
|
||||
4300004: bow_noString
|
||||
4300006: StringGeom
|
||||
7400000: bowPull
|
||||
9500000: //RootNode
|
||||
13700000: arrow
|
||||
13700002: bow
|
||||
13700004: bow_noString
|
||||
13700006: StringGeom
|
||||
materials:
|
||||
importMaterials: 0
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
motionNodeName:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
animationCompression: 0
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: bowPull
|
||||
takeName: Take 001
|
||||
firstFrame: 1
|
||||
lastFrame: 120
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 0
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 0
|
||||
loopBlendPositionY: 0
|
||||
loopBlendPositionXZ: 0
|
||||
keepOriginalOrientation: 0
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 0
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask:
|
||||
- path:
|
||||
weight: 1
|
||||
- path: arrow
|
||||
weight: 1
|
||||
- path: bow
|
||||
weight: 1
|
||||
- path: bow_base
|
||||
weight: 1
|
||||
- path: bow_base/btmArm0
|
||||
weight: 1
|
||||
- path: bow_base/btmArm0/btmArm1
|
||||
weight: 1
|
||||
- path: bow_base/btmArm0/btmArm1/btmArm2
|
||||
weight: 1
|
||||
- path: bow_base/btmArm0/btmArm1/btmArm2/btmArm3
|
||||
weight: 1
|
||||
- path: bow_base/btmArm0/btmArm1/btmArm2/btmArm3/stringBtm
|
||||
weight: 1
|
||||
- path: bow_base/btmArm0/btmArm1/btmArm2/btmArm3/stringBtm/stringBtmArc
|
||||
weight: 1
|
||||
- path: bow_base/btmArm0/btmArm1/btmArm2/btmArm3/stringBtm/stringBtmArc/stringBtmNotch
|
||||
weight: 1
|
||||
- path: bow_base/notch
|
||||
weight: 1
|
||||
- path: bow_base/topArm0
|
||||
weight: 1
|
||||
- path: bow_base/topArm0/topArm1
|
||||
weight: 1
|
||||
- path: bow_base/topArm0/topArm1/topArm2
|
||||
weight: 1
|
||||
- path: bow_base/topArm0/topArm1/topArm2/topArm3
|
||||
weight: 1
|
||||
- path: bow_base/topArm0/topArm1/topArm2/topArm3/stringTop
|
||||
weight: 1
|
||||
- path: bow_base/topArm0/topArm1/topArm2/topArm3/stringTop/stringTopArc
|
||||
weight: 1
|
||||
- path: bow_base/topArm0/topArm1/topArm2/topArm3/stringTop/stringTopArc/stringTopNotch
|
||||
weight: 1
|
||||
- path: bow_base_CTRL_HmNUL
|
||||
weight: 1
|
||||
- path: bow_base_CTRL_HmNUL/bow_base_CTRL_SpaceNUL
|
||||
weight: 1
|
||||
- path: bow_base_CTRL_HmNUL/bow_base_CTRL_SpaceNUL/bow_base_CTRL_AnimNUL
|
||||
weight: 1
|
||||
- path: bow_base_CTRL_HmNUL/bow_base_CTRL_SpaceNUL/bow_base_CTRL_AnimNUL/bow_base_CTRL
|
||||
weight: 1
|
||||
maskType: 0
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
importBlendShapes: 1
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
optimizeMeshForGPU: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 4
|
||||
importAnimation: 1
|
||||
copyAvatar: 0
|
||||
humanDescription:
|
||||
human: []
|
||||
skeleton: []
|
||||
armTwist: 0.5
|
||||
foreArmTwist: 0.5
|
||||
upperLegTwist: 0.5
|
||||
legTwist: 0.5
|
||||
armStretch: 0.05
|
||||
legStretch: 0.05
|
||||
feetSpacing: 0
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 0
|
||||
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||
animationType: 2
|
||||
humanoidOversampling: 1
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c360cf037a4ff3f4cb643392da004156
|
||||
folderAsset: yes
|
||||
timeCreated: 1479762244
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,16 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!134 &13400000
|
||||
PhysicMaterial:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: ArcheryTargetPhysMaterial
|
||||
dynamicFriction: .600000024
|
||||
staticFriction: .600000024
|
||||
bounciness: 0
|
||||
frictionCombine: 0
|
||||
bounceCombine: 0
|
||||
frictionDirection2: {x: 0, y: 0, z: 0}
|
||||
dynamicFriction2: 0
|
||||
staticFriction2: 0
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c509d5711dc2cc346be2763cd92383ca
|
||||
timeCreated: 1437607164
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a4acc435c26639c4fac0c4358c455259
|
||||
folderAsset: yes
|
||||
timeCreated: 1479762244
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:670fbaba121d9e3827e4925efa128740d2144cc33a022d2f332896740a02fe5e
|
||||
size 99744
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7fe1fef3cfad86946b3a549d6934330b
|
||||
timeCreated: 1444265605
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f7f6131830f973451b0ba203ec6558af1b9ced56f1ee19fbd96dbdc24e0cd266
|
||||
size 73927
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 81fc1450441aca64e8cc1a0e14b1aa77
|
||||
timeCreated: 1457490155
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5a248a0ab4d929a724fafcf8497bad0e5ba35276d09ea44d3432c0465b196844
|
||||
size 9531
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d410d7126dd411c4ea651fc94eae9202
|
||||
timeCreated: 1457490326
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a91f3a661ff91b9022c1ed826e04d28e3109a080daaa1bfbf82858b02f421964
|
||||
size 8779
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8e13c6e5a21aeea4db3c25ef0e529308
|
||||
timeCreated: 1435794528
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8af65b392af103eeea64617874598aa8935d057901e7ee8afc6c369f8c405d56
|
||||
size 88389
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9d2dddaae5c812841accc43e4da1fccd
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2bf1ca17c429e18247c91f7659e568b2b0003293ab34adb4cd03ce008931e410
|
||||
size 80911
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a41945a8549c580408301691c2fd374e
|
||||
timeCreated: 1457902375
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:414508a62433cf2af09ca51c15de70a4d25a5a5af8bf73c4b3f65b6c82dcf7d9
|
||||
size 8828
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 01c670ceb931d524b9a80b70652eb18b
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b41deb624bbd1b50af21b5c84e9baa870bbe3e812d34b847835857788ff72ee2
|
||||
size 85645
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9471d2206e57ca246a4bf982f3c29c8f
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2843c33fb25bbc36575b92c5667702dae8cdc8699fb6c5920db17d90876cd10e
|
||||
size 83995
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a6990c59ffac7cf4b87f644ab4782007
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2cadb1749e0f4d47748063388467155b444f4e2a6ff465aa82eb710031d5717c
|
||||
size 81599
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: daf28736fcb032a44b7a5c1fd0a27b15
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:835ce6e3e6ae517eb676354220738d632b7edebf23c0afd182c6a94e90a67f32
|
||||
size 56994
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f1f5f898fbfdb80478825ce9b01fe8ae
|
||||
timeCreated: 1457488966
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b39352070a3fd47cc3bc7b6923951bd02c7e6e10c9a7e2c5adf4c52092225265
|
||||
size 2391
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 98a3ad29136d5c04f8a025adf1cbd704
|
||||
timeCreated: 1457489493
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8a600aee674b24d3e2e49d39fff9fcba0041692feceeb8516f5c3966e995d94e
|
||||
size 23428
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b9d299b8c6aa86242bec9a060f7e2d81
|
||||
timeCreated: 1442339331
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0a5b43d5b5abf34b61ce153cea4afc66ad0e11f8a4b68335b179f6772c813a27
|
||||
size 23452
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a5b684916cfe6804985d74652a2af09f
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:db62af4bf78901a650793bddb86de38048c55c962c1a59229f8b6df04e4cfc7f
|
||||
size 8100
|
||||
@@ -0,0 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 380bbbca09a806c4c8607dd111d9ed8f
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6596adb54aab23a40abe01461d35a26f
|
||||
folderAsset: yes
|
||||
timeCreated: 1479762244
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,81 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: Target that sends events when hit by an arrow
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEngine.Events;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class ArcheryTarget : MonoBehaviour
|
||||
{
|
||||
public UnityEvent onTakeDamage;
|
||||
|
||||
public bool onceOnly = false;
|
||||
public Transform targetCenter;
|
||||
|
||||
public Transform baseTransform;
|
||||
public Transform fallenDownTransform;
|
||||
public float fallTime = 0.5f;
|
||||
|
||||
const float targetRadius = 0.25f;
|
||||
|
||||
private bool targetEnabled = true;
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void ApplyDamage()
|
||||
{
|
||||
OnDamageTaken();
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void FireExposure()
|
||||
{
|
||||
OnDamageTaken();
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnDamageTaken()
|
||||
{
|
||||
if ( targetEnabled )
|
||||
{
|
||||
onTakeDamage.Invoke();
|
||||
StartCoroutine( this.FallDown() );
|
||||
|
||||
if ( onceOnly )
|
||||
{
|
||||
targetEnabled = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private IEnumerator FallDown()
|
||||
{
|
||||
if ( baseTransform )
|
||||
{
|
||||
Quaternion startingRot = baseTransform.rotation;
|
||||
|
||||
float startTime = Time.time;
|
||||
float rotLerp = 0f;
|
||||
|
||||
while ( rotLerp < 1 )
|
||||
{
|
||||
rotLerp = Util.RemapNumberClamped( Time.time, startTime, startTime + fallTime, 0f, 1f );
|
||||
baseTransform.rotation = Quaternion.Lerp( startingRot, fallenDownTransform.rotation, rotLerp );
|
||||
yield return null;
|
||||
}
|
||||
}
|
||||
|
||||
yield return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f2f2850d002f14a47bff32fdf73df53e
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,263 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: The arrow for the longbow
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class Arrow : MonoBehaviour
|
||||
{
|
||||
public ParticleSystem glintParticle;
|
||||
public Rigidbody arrowHeadRB;
|
||||
public Rigidbody shaftRB;
|
||||
|
||||
public PhysicMaterial targetPhysMaterial;
|
||||
|
||||
private Vector3 prevPosition;
|
||||
private Quaternion prevRotation;
|
||||
private Vector3 prevVelocity;
|
||||
private Vector3 prevHeadPosition;
|
||||
|
||||
public SoundPlayOneshot fireReleaseSound;
|
||||
public SoundPlayOneshot airReleaseSound;
|
||||
public SoundPlayOneshot hitTargetSound;
|
||||
|
||||
public PlaySound hitGroundSound;
|
||||
|
||||
private bool inFlight;
|
||||
private bool released;
|
||||
private bool hasSpreadFire = false;
|
||||
|
||||
private int travelledFrames = 0;
|
||||
|
||||
private GameObject scaleParentObject = null;
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void Start()
|
||||
{
|
||||
Physics.IgnoreCollision( shaftRB.GetComponent<Collider>(), Player.instance.headCollider );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void FixedUpdate()
|
||||
{
|
||||
if ( released && inFlight )
|
||||
{
|
||||
prevPosition = transform.position;
|
||||
prevRotation = transform.rotation;
|
||||
prevVelocity = GetComponent<Rigidbody>().velocity;
|
||||
prevHeadPosition = arrowHeadRB.transform.position;
|
||||
travelledFrames++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void ArrowReleased( float inputVelocity )
|
||||
{
|
||||
inFlight = true;
|
||||
released = true;
|
||||
|
||||
airReleaseSound.Play();
|
||||
|
||||
if ( glintParticle != null )
|
||||
{
|
||||
glintParticle.Play();
|
||||
}
|
||||
|
||||
if ( gameObject.GetComponentInChildren<FireSource>().isBurning )
|
||||
{
|
||||
fireReleaseSound.Play();
|
||||
}
|
||||
|
||||
// Check if arrow is shot inside or too close to an object
|
||||
RaycastHit[] hits = Physics.SphereCastAll( transform.position, 0.01f, transform.forward, 0.80f, Physics.DefaultRaycastLayers, QueryTriggerInteraction.Ignore );
|
||||
foreach ( RaycastHit hit in hits )
|
||||
{
|
||||
if ( hit.collider.gameObject != gameObject && hit.collider.gameObject != arrowHeadRB.gameObject && hit.collider != Player.instance.headCollider )
|
||||
{
|
||||
Destroy( gameObject );
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
travelledFrames = 0;
|
||||
prevPosition = transform.position;
|
||||
prevRotation = transform.rotation;
|
||||
prevHeadPosition = arrowHeadRB.transform.position;
|
||||
prevVelocity = GetComponent<Rigidbody>().velocity;
|
||||
|
||||
Destroy( gameObject, 30 );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnCollisionEnter( Collision collision )
|
||||
{
|
||||
if ( inFlight )
|
||||
{
|
||||
Rigidbody rb = GetComponent<Rigidbody>();
|
||||
float rbSpeed = rb.velocity.sqrMagnitude;
|
||||
bool canStick = ( targetPhysMaterial != null && collision.collider.sharedMaterial == targetPhysMaterial && rbSpeed > 0.2f );
|
||||
bool hitBalloon = collision.collider.gameObject.GetComponent<Balloon>() != null;
|
||||
|
||||
if ( travelledFrames < 2 && !canStick )
|
||||
{
|
||||
// Reset transform but halve your velocity
|
||||
transform.position = prevPosition - prevVelocity * Time.deltaTime;
|
||||
transform.rotation = prevRotation;
|
||||
|
||||
Vector3 reflfectDir = Vector3.Reflect( arrowHeadRB.velocity, collision.contacts[0].normal );
|
||||
arrowHeadRB.velocity = reflfectDir * 0.25f;
|
||||
shaftRB.velocity = reflfectDir * 0.25f;
|
||||
|
||||
travelledFrames = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
if ( glintParticle != null )
|
||||
{
|
||||
glintParticle.Stop( true );
|
||||
}
|
||||
|
||||
// Only play hit sounds if we're moving quickly
|
||||
if ( rbSpeed > 0.1f )
|
||||
{
|
||||
hitGroundSound.Play();
|
||||
}
|
||||
|
||||
FireSource arrowFire = gameObject.GetComponentInChildren<FireSource>();
|
||||
FireSource fireSourceOnTarget = collision.collider.GetComponentInParent<FireSource>();
|
||||
|
||||
if ( arrowFire != null && arrowFire.isBurning && ( fireSourceOnTarget != null ) )
|
||||
{
|
||||
if ( !hasSpreadFire )
|
||||
{
|
||||
collision.collider.gameObject.SendMessageUpwards( "FireExposure", gameObject, SendMessageOptions.DontRequireReceiver );
|
||||
hasSpreadFire = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Only count collisions with good speed so that arrows on the ground can't deal damage
|
||||
// always pop balloons
|
||||
if ( rbSpeed > 0.1f || hitBalloon )
|
||||
{
|
||||
collision.collider.gameObject.SendMessageUpwards( "ApplyDamage", SendMessageOptions.DontRequireReceiver );
|
||||
gameObject.SendMessage( "HasAppliedDamage", SendMessageOptions.DontRequireReceiver );
|
||||
}
|
||||
}
|
||||
|
||||
if ( hitBalloon )
|
||||
{
|
||||
// Revert my physics properties cause I don't want balloons to influence my travel
|
||||
transform.position = prevPosition;
|
||||
transform.rotation = prevRotation;
|
||||
arrowHeadRB.velocity = prevVelocity;
|
||||
Physics.IgnoreCollision( arrowHeadRB.GetComponent<Collider>(), collision.collider );
|
||||
Physics.IgnoreCollision( shaftRB.GetComponent<Collider>(), collision.collider );
|
||||
}
|
||||
|
||||
if ( canStick )
|
||||
{
|
||||
StickInTarget( collision, travelledFrames < 2 );
|
||||
}
|
||||
|
||||
// Player Collision Check (self hit)
|
||||
if ( Player.instance && collision.collider == Player.instance.headCollider )
|
||||
{
|
||||
Player.instance.PlayerShotSelf();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void StickInTarget( Collision collision, bool bSkipRayCast )
|
||||
{
|
||||
Vector3 prevForward = prevRotation * Vector3.forward;
|
||||
|
||||
// Only stick in target if the collider is front of the arrow head
|
||||
if ( !bSkipRayCast )
|
||||
{
|
||||
RaycastHit[] hitInfo;
|
||||
hitInfo = Physics.RaycastAll( prevHeadPosition - prevVelocity * Time.deltaTime, prevForward, prevVelocity.magnitude * Time.deltaTime * 2.0f );
|
||||
bool properHit = false;
|
||||
for ( int i = 0; i < hitInfo.Length; ++i )
|
||||
{
|
||||
RaycastHit hit = hitInfo[i];
|
||||
|
||||
if ( hit.collider == collision.collider )
|
||||
{
|
||||
properHit = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ( !properHit )
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Destroy( glintParticle );
|
||||
|
||||
inFlight = false;
|
||||
|
||||
shaftRB.velocity = Vector3.zero;
|
||||
shaftRB.angularVelocity = Vector3.zero;
|
||||
shaftRB.isKinematic = true;
|
||||
shaftRB.useGravity = false;
|
||||
shaftRB.transform.GetComponent<BoxCollider>().enabled = false;
|
||||
|
||||
arrowHeadRB.velocity = Vector3.zero;
|
||||
arrowHeadRB.angularVelocity = Vector3.zero;
|
||||
arrowHeadRB.isKinematic = true;
|
||||
arrowHeadRB.useGravity = false;
|
||||
arrowHeadRB.transform.GetComponent<BoxCollider>().enabled = false;
|
||||
|
||||
hitTargetSound.Play();
|
||||
|
||||
|
||||
// If the hit item has a parent, dock an empty object to that
|
||||
// this fixes an issue with scaling hierarchy. I suspect this is not sustainable for a large object / scaling hierarchy.
|
||||
scaleParentObject = new GameObject( "Arrow Scale Parent" );
|
||||
Transform parentTransform = collision.collider.transform;
|
||||
|
||||
// Don't do this for weebles because of how it has a fixed joint
|
||||
ExplosionWobble wobble = collision.collider.gameObject.GetComponent<ExplosionWobble>();
|
||||
if ( !wobble )
|
||||
{
|
||||
if ( parentTransform.parent )
|
||||
{
|
||||
parentTransform = parentTransform.parent;
|
||||
}
|
||||
}
|
||||
|
||||
scaleParentObject.transform.parent = parentTransform;
|
||||
|
||||
// Move the arrow to the place on the target collider we were expecting to hit prior to the impact itself knocking it around
|
||||
transform.parent = scaleParentObject.transform;
|
||||
transform.rotation = prevRotation;
|
||||
transform.position = prevPosition;
|
||||
transform.position = collision.contacts[0].point - transform.forward * ( 0.75f - ( Util.RemapNumberClamped( prevVelocity.magnitude, 0f, 10f, 0.0f, 0.1f ) + Random.Range( 0.0f, 0.05f ) ) );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnDestroy()
|
||||
{
|
||||
if ( scaleParentObject != null )
|
||||
{
|
||||
Destroy( scaleParentObject );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d520699ed41daaf48b924d994ac87378
|
||||
timeCreated: 1437005176
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,297 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: The object attached to the player's hand that spawns and fires the
|
||||
// arrow
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class ArrowHand : MonoBehaviour
|
||||
{
|
||||
private Hand hand;
|
||||
private Longbow bow;
|
||||
|
||||
private GameObject currentArrow;
|
||||
public GameObject arrowPrefab;
|
||||
|
||||
public Transform arrowNockTransform;
|
||||
|
||||
public float nockDistance = 0.1f;
|
||||
public float lerpCompleteDistance = 0.08f;
|
||||
public float rotationLerpThreshold = 0.15f;
|
||||
public float positionLerpThreshold = 0.15f;
|
||||
|
||||
private bool allowArrowSpawn = true;
|
||||
private bool nocked;
|
||||
|
||||
private bool inNockRange = false;
|
||||
private bool arrowLerpComplete = false;
|
||||
|
||||
public SoundPlayOneshot arrowSpawnSound;
|
||||
|
||||
private AllowTeleportWhileAttachedToHand allowTeleport = null;
|
||||
|
||||
public int maxArrowCount = 10;
|
||||
private List<GameObject> arrowList;
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void Awake()
|
||||
{
|
||||
allowTeleport = GetComponent<AllowTeleportWhileAttachedToHand>();
|
||||
allowTeleport.teleportAllowed = true;
|
||||
allowTeleport.overrideHoverLock = false;
|
||||
|
||||
arrowList = new List<GameObject>();
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnAttachedToHand( Hand attachedHand )
|
||||
{
|
||||
hand = attachedHand;
|
||||
FindBow();
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private GameObject InstantiateArrow()
|
||||
{
|
||||
GameObject arrow = Instantiate( arrowPrefab, arrowNockTransform.position, arrowNockTransform.rotation ) as GameObject;
|
||||
arrow.name = "Bow Arrow";
|
||||
arrow.transform.parent = arrowNockTransform;
|
||||
Util.ResetTransform( arrow.transform );
|
||||
|
||||
arrowList.Add( arrow );
|
||||
|
||||
while ( arrowList.Count > maxArrowCount )
|
||||
{
|
||||
GameObject oldArrow = arrowList[0];
|
||||
arrowList.RemoveAt( 0 );
|
||||
if ( oldArrow )
|
||||
{
|
||||
Destroy( oldArrow );
|
||||
}
|
||||
}
|
||||
|
||||
return arrow;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void HandAttachedUpdate( Hand hand )
|
||||
{
|
||||
if ( bow == null )
|
||||
{
|
||||
FindBow();
|
||||
}
|
||||
|
||||
if ( bow == null )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if ( allowArrowSpawn && ( currentArrow == null ) ) // If we're allowed to have an active arrow in hand but don't yet, spawn one
|
||||
{
|
||||
currentArrow = InstantiateArrow();
|
||||
arrowSpawnSound.Play();
|
||||
}
|
||||
|
||||
float distanceToNockPosition = Vector3.Distance( transform.parent.position, bow.nockTransform.position );
|
||||
|
||||
// If there's an arrow spawned in the hand and it's not nocked yet
|
||||
if ( !nocked )
|
||||
{
|
||||
// If we're close enough to nock position that we want to start arrow rotation lerp, do so
|
||||
if ( distanceToNockPosition < rotationLerpThreshold )
|
||||
{
|
||||
float lerp = Util.RemapNumber( distanceToNockPosition, rotationLerpThreshold, lerpCompleteDistance, 0, 1 );
|
||||
|
||||
arrowNockTransform.rotation = Quaternion.Lerp( arrowNockTransform.parent.rotation, bow.nockRestTransform.rotation, lerp );
|
||||
}
|
||||
else // Not close enough for rotation lerp, reset rotation
|
||||
{
|
||||
arrowNockTransform.localRotation = Quaternion.identity;
|
||||
}
|
||||
|
||||
// If we're close enough to the nock position that we want to start arrow position lerp, do so
|
||||
if ( distanceToNockPosition < positionLerpThreshold )
|
||||
{
|
||||
float posLerp = Util.RemapNumber( distanceToNockPosition, positionLerpThreshold, lerpCompleteDistance, 0, 1 );
|
||||
|
||||
posLerp = Mathf.Clamp( posLerp, 0f, 1f );
|
||||
|
||||
arrowNockTransform.position = Vector3.Lerp( arrowNockTransform.parent.position, bow.nockRestTransform.position, posLerp );
|
||||
}
|
||||
else // Not close enough for position lerp, reset position
|
||||
{
|
||||
arrowNockTransform.position = arrowNockTransform.parent.position;
|
||||
}
|
||||
|
||||
|
||||
// Give a haptic tick when lerp is visually complete
|
||||
if ( distanceToNockPosition < lerpCompleteDistance )
|
||||
{
|
||||
if ( !arrowLerpComplete )
|
||||
{
|
||||
arrowLerpComplete = true;
|
||||
hand.controller.TriggerHapticPulse( 500 );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( arrowLerpComplete )
|
||||
{
|
||||
arrowLerpComplete = false;
|
||||
}
|
||||
}
|
||||
|
||||
// Allow nocking the arrow when controller is close enough
|
||||
if ( distanceToNockPosition < nockDistance )
|
||||
{
|
||||
if ( !inNockRange )
|
||||
{
|
||||
inNockRange = true;
|
||||
bow.ArrowInPosition();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( inNockRange )
|
||||
{
|
||||
inNockRange = false;
|
||||
}
|
||||
}
|
||||
|
||||
// If arrow is close enough to the nock position and we're pressing the trigger, and we're not nocked yet, Nock
|
||||
if ( ( distanceToNockPosition < nockDistance ) && hand.controller.GetPress( SteamVR_Controller.ButtonMask.Trigger ) && !nocked )
|
||||
{
|
||||
if ( currentArrow == null )
|
||||
{
|
||||
currentArrow = InstantiateArrow();
|
||||
}
|
||||
|
||||
nocked = true;
|
||||
bow.StartNock( this );
|
||||
hand.HoverLock( GetComponent<Interactable>() );
|
||||
allowTeleport.teleportAllowed = false;
|
||||
currentArrow.transform.parent = bow.nockTransform;
|
||||
Util.ResetTransform( currentArrow.transform );
|
||||
Util.ResetTransform( arrowNockTransform );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// If arrow is nocked, and we release the trigger
|
||||
if ( nocked && ( !hand.controller.GetPress( SteamVR_Controller.ButtonMask.Trigger ) || hand.controller.GetPressUp( SteamVR_Controller.ButtonMask.Trigger ) ) )
|
||||
{
|
||||
if ( bow.pulled ) // If bow is pulled back far enough, fire arrow, otherwise reset arrow in arrowhand
|
||||
{
|
||||
FireArrow();
|
||||
}
|
||||
else
|
||||
{
|
||||
arrowNockTransform.rotation = currentArrow.transform.rotation;
|
||||
currentArrow.transform.parent = arrowNockTransform;
|
||||
Util.ResetTransform( currentArrow.transform );
|
||||
nocked = false;
|
||||
bow.ReleaseNock();
|
||||
hand.HoverUnlock( GetComponent<Interactable>() );
|
||||
allowTeleport.teleportAllowed = true;
|
||||
}
|
||||
|
||||
bow.StartRotationLerp(); // Arrow is releasing from the bow, tell the bow to lerp back to controller rotation
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnDetachedFromHand( Hand hand )
|
||||
{
|
||||
Destroy( gameObject );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void FireArrow()
|
||||
{
|
||||
currentArrow.transform.parent = null;
|
||||
|
||||
Arrow arrow = currentArrow.GetComponent<Arrow>();
|
||||
arrow.shaftRB.isKinematic = false;
|
||||
arrow.shaftRB.useGravity = true;
|
||||
arrow.shaftRB.transform.GetComponent<BoxCollider>().enabled = true;
|
||||
|
||||
arrow.arrowHeadRB.isKinematic = false;
|
||||
arrow.arrowHeadRB.useGravity = true;
|
||||
arrow.arrowHeadRB.transform.GetComponent<BoxCollider>().enabled = true;
|
||||
|
||||
arrow.arrowHeadRB.AddForce( currentArrow.transform.forward * bow.GetArrowVelocity(), ForceMode.VelocityChange );
|
||||
arrow.arrowHeadRB.AddTorque( currentArrow.transform.forward * 10 );
|
||||
|
||||
nocked = false;
|
||||
|
||||
currentArrow.GetComponent<Arrow>().ArrowReleased( bow.GetArrowVelocity() );
|
||||
bow.ArrowReleased();
|
||||
|
||||
allowArrowSpawn = false;
|
||||
Invoke( "EnableArrowSpawn", 0.5f );
|
||||
StartCoroutine( ArrowReleaseHaptics() );
|
||||
|
||||
currentArrow = null;
|
||||
allowTeleport.teleportAllowed = true;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void EnableArrowSpawn()
|
||||
{
|
||||
allowArrowSpawn = true;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private IEnumerator ArrowReleaseHaptics()
|
||||
{
|
||||
yield return new WaitForSeconds( 0.05f );
|
||||
|
||||
hand.otherHand.controller.TriggerHapticPulse( 1500 );
|
||||
yield return new WaitForSeconds( 0.05f );
|
||||
|
||||
hand.otherHand.controller.TriggerHapticPulse( 800 );
|
||||
yield return new WaitForSeconds( 0.05f );
|
||||
|
||||
hand.otherHand.controller.TriggerHapticPulse( 500 );
|
||||
yield return new WaitForSeconds( 0.05f );
|
||||
|
||||
hand.otherHand.controller.TriggerHapticPulse( 300 );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnHandFocusLost( Hand hand )
|
||||
{
|
||||
gameObject.SetActive( false );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnHandFocusAcquired( Hand hand )
|
||||
{
|
||||
gameObject.SetActive( true );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void FindBow()
|
||||
{
|
||||
bow = hand.otherHand.GetComponentInChildren<Longbow>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d85480da87762944399dab6c99985eef
|
||||
timeCreated: 1437005170
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,22 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: Sets a random rotation for the arrow head
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class ArrowheadRotation : MonoBehaviour
|
||||
{
|
||||
//-------------------------------------------------
|
||||
void Start()
|
||||
{
|
||||
float randX = Random.Range( 0f, 180f );
|
||||
transform.localEulerAngles = new Vector3( randX, -90f, 90f );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f195fe0cc42f49241a3c7521a19fa350
|
||||
timeCreated: 1458350266
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,222 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: BALLOONS!!
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class Balloon : MonoBehaviour
|
||||
{
|
||||
public enum BalloonColor { Red, OrangeRed, Orange, YellowOrange, Yellow, GreenYellow, Green, BlueGreen, Blue, VioletBlue, Violet, RedViolet, LightGray, DarkGray, Random };
|
||||
|
||||
private Hand hand;
|
||||
|
||||
public GameObject popPrefab;
|
||||
|
||||
public float maxVelocity = 5f;
|
||||
|
||||
public float lifetime = 15f;
|
||||
public bool burstOnLifetimeEnd = false;
|
||||
|
||||
public GameObject lifetimeEndParticlePrefab;
|
||||
public SoundPlayOneshot lifetimeEndSound;
|
||||
|
||||
private float destructTime = 0f;
|
||||
private float releaseTime = 99999f;
|
||||
|
||||
public SoundPlayOneshot collisionSound;
|
||||
private float lastSoundTime = 0f;
|
||||
private float soundDelay = 0.2f;
|
||||
|
||||
private Rigidbody balloonRigidbody;
|
||||
|
||||
private bool bParticlesSpawned = false;
|
||||
|
||||
private static float s_flLastDeathSound = 0f;
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void Start()
|
||||
{
|
||||
destructTime = Time.time + lifetime + Random.value;
|
||||
hand = GetComponentInParent<Hand>();
|
||||
balloonRigidbody = GetComponent<Rigidbody>();
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void Update()
|
||||
{
|
||||
if ( ( destructTime != 0 ) && ( Time.time > destructTime ) )
|
||||
{
|
||||
if ( burstOnLifetimeEnd )
|
||||
{
|
||||
SpawnParticles( lifetimeEndParticlePrefab, lifetimeEndSound );
|
||||
}
|
||||
|
||||
Destroy( gameObject );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void SpawnParticles( GameObject particlePrefab, SoundPlayOneshot sound )
|
||||
{
|
||||
// Don't do this twice
|
||||
if ( bParticlesSpawned )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
bParticlesSpawned = true;
|
||||
|
||||
if ( particlePrefab != null )
|
||||
{
|
||||
GameObject particleObject = Instantiate( particlePrefab, transform.position, transform.rotation ) as GameObject;
|
||||
particleObject.GetComponent<ParticleSystem>().Play();
|
||||
Destroy( particleObject, 2f );
|
||||
}
|
||||
|
||||
if ( sound != null )
|
||||
{
|
||||
float lastSoundDiff = Time.time - s_flLastDeathSound;
|
||||
if ( lastSoundDiff < 0.1f )
|
||||
{
|
||||
sound.volMax *= 0.25f;
|
||||
sound.volMin *= 0.25f;
|
||||
}
|
||||
sound.Play();
|
||||
s_flLastDeathSound = Time.time;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void FixedUpdate()
|
||||
{
|
||||
// Slow-clamp velocity
|
||||
if ( balloonRigidbody.velocity.sqrMagnitude > maxVelocity )
|
||||
{
|
||||
balloonRigidbody.velocity *= 0.97f;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void ApplyDamage()
|
||||
{
|
||||
SpawnParticles( popPrefab, null );
|
||||
Destroy( gameObject );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnCollisionEnter( Collision collision )
|
||||
{
|
||||
if ( bParticlesSpawned )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Hand collisionParentHand = null;
|
||||
|
||||
BalloonHapticBump balloonColliderScript = collision.gameObject.GetComponent<BalloonHapticBump>();
|
||||
|
||||
if ( balloonColliderScript != null && balloonColliderScript.physParent != null )
|
||||
{
|
||||
collisionParentHand = balloonColliderScript.physParent.GetComponentInParent<Hand>();
|
||||
}
|
||||
|
||||
if ( Time.time > ( lastSoundTime + soundDelay ) )
|
||||
{
|
||||
if ( collisionParentHand != null ) // If the collision was with a controller
|
||||
{
|
||||
if ( Time.time > ( releaseTime + soundDelay ) ) // Only play sound if it's not immediately after release
|
||||
{
|
||||
collisionSound.Play();
|
||||
lastSoundTime = Time.time;
|
||||
}
|
||||
}
|
||||
else // Collision was not with a controller, play sound
|
||||
{
|
||||
collisionSound.Play();
|
||||
lastSoundTime = Time.time;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if ( destructTime > 0 ) // Balloon is released away from the controller, don't do the haptic stuff that follows
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if ( balloonRigidbody.velocity.magnitude > ( maxVelocity * 10 ) )
|
||||
{
|
||||
balloonRigidbody.velocity = balloonRigidbody.velocity.normalized * maxVelocity;
|
||||
}
|
||||
|
||||
if ( hand != null )
|
||||
{
|
||||
ushort collisionStrength = (ushort)Mathf.Clamp( Util.RemapNumber( collision.relativeVelocity.magnitude, 0f, 3f, 500f, 800f ), 500f, 800f );
|
||||
|
||||
hand.controller.TriggerHapticPulse( collisionStrength );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void SetColor( BalloonColor color )
|
||||
{
|
||||
GetComponentInChildren<MeshRenderer>().material.color = BalloonColorToRGB( color );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private Color BalloonColorToRGB( BalloonColor balloonColorVar )
|
||||
{
|
||||
Color defaultColor = new Color( 255, 0, 0 );
|
||||
|
||||
switch ( balloonColorVar )
|
||||
{
|
||||
case BalloonColor.Red:
|
||||
return new Color( 237, 29, 37, 255 ) / 255;
|
||||
case BalloonColor.OrangeRed:
|
||||
return new Color( 241, 91, 35, 255 ) / 255;
|
||||
case BalloonColor.Orange:
|
||||
return new Color( 245, 140, 31, 255 ) / 255;
|
||||
case BalloonColor.YellowOrange:
|
||||
return new Color( 253, 185, 19, 255 ) / 255;
|
||||
case BalloonColor.Yellow:
|
||||
return new Color( 254, 243, 0, 255 ) / 255;
|
||||
case BalloonColor.GreenYellow:
|
||||
return new Color( 172, 209, 54, 255 ) / 255;
|
||||
case BalloonColor.Green:
|
||||
return new Color( 0, 167, 79, 255 ) / 255;
|
||||
case BalloonColor.BlueGreen:
|
||||
return new Color( 108, 202, 189, 255 ) / 255;
|
||||
case BalloonColor.Blue:
|
||||
return new Color( 0, 119, 178, 255 ) / 255;
|
||||
case BalloonColor.VioletBlue:
|
||||
return new Color( 82, 80, 162, 255 ) / 255;
|
||||
case BalloonColor.Violet:
|
||||
return new Color( 102, 46, 143, 255 ) / 255;
|
||||
case BalloonColor.RedViolet:
|
||||
return new Color( 182, 36, 102, 255 ) / 255;
|
||||
case BalloonColor.LightGray:
|
||||
return new Color( 192, 192, 192, 255 ) / 255;
|
||||
case BalloonColor.DarkGray:
|
||||
return new Color( 128, 128, 128, 255 ) / 255;
|
||||
case BalloonColor.Random:
|
||||
int randomColor = Random.Range( 0, 12 );
|
||||
return BalloonColorToRGB( (BalloonColor)randomColor );
|
||||
}
|
||||
|
||||
return defaultColor;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 429a484b95998f84eaa98fa068caa5e9
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,87 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: Can be attached to the controller to collide with the balloons
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class BalloonColliders : MonoBehaviour
|
||||
{
|
||||
public GameObject[] colliders;
|
||||
private Vector3[] colliderLocalPositions;
|
||||
private Quaternion[] colliderLocalRotations;
|
||||
|
||||
private Rigidbody rb;
|
||||
|
||||
//-------------------------------------------------
|
||||
void Awake()
|
||||
{
|
||||
rb = GetComponent<Rigidbody>();
|
||||
|
||||
colliderLocalPositions = new Vector3[colliders.Length];
|
||||
colliderLocalRotations = new Quaternion[colliders.Length];
|
||||
|
||||
for ( int i = 0; i < colliders.Length; ++i )
|
||||
{
|
||||
colliderLocalPositions[i] = colliders[i].transform.localPosition;
|
||||
colliderLocalRotations[i] = colliders[i].transform.localRotation;
|
||||
|
||||
colliders[i].name = gameObject.name + "." + colliders[i].name;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnEnable()
|
||||
{
|
||||
for ( int i = 0; i < colliders.Length; ++i )
|
||||
{
|
||||
colliders[i].transform.SetParent( transform );
|
||||
|
||||
colliders[i].transform.localPosition = colliderLocalPositions[i];
|
||||
colliders[i].transform.localRotation = colliderLocalRotations[i];
|
||||
|
||||
colliders[i].transform.SetParent( null );
|
||||
|
||||
FixedJoint fixedJoint = colliders[i].AddComponent<FixedJoint>();
|
||||
fixedJoint.connectedBody = rb;
|
||||
fixedJoint.breakForce = Mathf.Infinity;
|
||||
fixedJoint.breakTorque = Mathf.Infinity;
|
||||
fixedJoint.enableCollision = false;
|
||||
fixedJoint.enablePreprocessing = true;
|
||||
|
||||
colliders[i].SetActive( true );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnDisable()
|
||||
{
|
||||
for ( int i = 0; i < colliders.Length; ++i )
|
||||
{
|
||||
if ( colliders[i] != null )
|
||||
{
|
||||
Destroy( colliders[i].GetComponent<FixedJoint>() );
|
||||
|
||||
colliders[i].SetActive( false );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnDestroy()
|
||||
{
|
||||
for ( int i = 0; i < colliders.Length; ++i )
|
||||
{
|
||||
Destroy( colliders[i] );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 667230ade3b20b641a0ba08bdfd760fc
|
||||
timeCreated: 1459309437
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,31 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: Provides a haptic bump when colliding with balloons
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class BalloonHapticBump : MonoBehaviour
|
||||
{
|
||||
public GameObject physParent;
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnCollisionEnter( Collision other )
|
||||
{
|
||||
Balloon contactBalloon = other.collider.GetComponentInParent<Balloon>();
|
||||
if ( contactBalloon != null )
|
||||
{
|
||||
Hand hand = physParent.GetComponentInParent<Hand>();
|
||||
if ( hand != null )
|
||||
{
|
||||
hand.controller.TriggerHapticPulse( 500 );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ec82b6ce2e2435444a434107cddceb0b
|
||||
timeCreated: 1457740675
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,121 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: Spawns balloons
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class BalloonSpawner : MonoBehaviour
|
||||
{
|
||||
public float minSpawnTime = 5f;
|
||||
public float maxSpawnTime = 15f;
|
||||
private float nextSpawnTime;
|
||||
public GameObject balloonPrefab;
|
||||
|
||||
public bool autoSpawn = true;
|
||||
public bool spawnAtStartup = true;
|
||||
|
||||
public bool playSounds = true;
|
||||
public SoundPlayOneshot inflateSound;
|
||||
public SoundPlayOneshot stretchSound;
|
||||
|
||||
public bool sendSpawnMessageToParent = false;
|
||||
|
||||
public float scale = 1f;
|
||||
|
||||
public Transform spawnDirectionTransform;
|
||||
public float spawnForce;
|
||||
|
||||
public bool attachBalloon = false;
|
||||
|
||||
public Balloon.BalloonColor color = Balloon.BalloonColor.Random;
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void Start()
|
||||
{
|
||||
if ( balloonPrefab == null )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if ( autoSpawn && spawnAtStartup )
|
||||
{
|
||||
SpawnBalloon( color );
|
||||
nextSpawnTime = Random.Range( minSpawnTime, maxSpawnTime ) + Time.time;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void Update()
|
||||
{
|
||||
if ( balloonPrefab == null )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if ( ( Time.time > nextSpawnTime ) && autoSpawn )
|
||||
{
|
||||
SpawnBalloon( color );
|
||||
nextSpawnTime = Random.Range( minSpawnTime, maxSpawnTime ) + Time.time;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public GameObject SpawnBalloon( Balloon.BalloonColor color = Balloon.BalloonColor.Red )
|
||||
{
|
||||
if ( balloonPrefab == null )
|
||||
{
|
||||
return null;
|
||||
}
|
||||
GameObject balloon = Instantiate( balloonPrefab, transform.position, transform.rotation ) as GameObject;
|
||||
balloon.transform.localScale = new Vector3( scale, scale, scale );
|
||||
if ( attachBalloon )
|
||||
{
|
||||
balloon.transform.parent = transform;
|
||||
}
|
||||
|
||||
if ( sendSpawnMessageToParent )
|
||||
{
|
||||
if ( transform.parent != null )
|
||||
{
|
||||
transform.parent.SendMessage( "OnBalloonSpawned", balloon, SendMessageOptions.DontRequireReceiver );
|
||||
}
|
||||
}
|
||||
|
||||
if ( playSounds )
|
||||
{
|
||||
if ( inflateSound != null )
|
||||
{
|
||||
inflateSound.Play();
|
||||
}
|
||||
if ( stretchSound != null )
|
||||
{
|
||||
stretchSound.Play();
|
||||
}
|
||||
}
|
||||
balloon.GetComponentInChildren<Balloon>().SetColor( color );
|
||||
if ( spawnDirectionTransform != null )
|
||||
{
|
||||
balloon.GetComponentInChildren<Rigidbody>().AddForce( spawnDirectionTransform.forward * spawnForce );
|
||||
}
|
||||
|
||||
return balloon;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void SpawnBalloonFromEvent( int color )
|
||||
{
|
||||
// Copy of SpawnBalloon using int because we can't pass in enums through the event system
|
||||
SpawnBalloon( (Balloon.BalloonColor)color );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cc1b8e5b8c3365a49b0274fb637151d6
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,25 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: Makes the weeble wobble
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class ExplosionWobble : MonoBehaviour
|
||||
{
|
||||
//-------------------------------------------------
|
||||
public void ExplosionEvent( Vector3 explosionPos )
|
||||
{
|
||||
var rb = GetComponent<Rigidbody>();
|
||||
if ( rb )
|
||||
{
|
||||
rb.AddExplosionForce( 2000, explosionPos, 10.0f );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 012bb97850e84ad4c890dcab506009bc
|
||||
timeCreated: 1457151512
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,112 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: This object can be set on fire
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class FireSource : MonoBehaviour
|
||||
{
|
||||
public GameObject fireParticlePrefab;
|
||||
public bool startActive;
|
||||
private GameObject fireObject;
|
||||
|
||||
public ParticleSystem customParticles;
|
||||
|
||||
public bool isBurning;
|
||||
|
||||
public float burnTime;
|
||||
public float ignitionDelay = 0;
|
||||
private float ignitionTime;
|
||||
|
||||
private Hand hand;
|
||||
|
||||
public AudioSource ignitionSound;
|
||||
|
||||
public bool canSpreadFromThisSource = true;
|
||||
|
||||
//-------------------------------------------------
|
||||
void Start()
|
||||
{
|
||||
if ( startActive )
|
||||
{
|
||||
StartBurning();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void Update()
|
||||
{
|
||||
if ( ( burnTime != 0 ) && ( Time.time > ( ignitionTime + burnTime ) ) && isBurning )
|
||||
{
|
||||
isBurning = false;
|
||||
if ( customParticles != null )
|
||||
{
|
||||
customParticles.Stop();
|
||||
}
|
||||
else
|
||||
{
|
||||
Destroy( fireObject );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnTriggerEnter( Collider other )
|
||||
{
|
||||
if ( isBurning && canSpreadFromThisSource )
|
||||
{
|
||||
other.SendMessageUpwards( "FireExposure", SendMessageOptions.DontRequireReceiver );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void FireExposure()
|
||||
{
|
||||
if ( fireObject == null )
|
||||
{
|
||||
Invoke( "StartBurning", ignitionDelay );
|
||||
}
|
||||
|
||||
if ( hand = GetComponentInParent<Hand>() )
|
||||
{
|
||||
hand.controller.TriggerHapticPulse( 1000 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void StartBurning()
|
||||
{
|
||||
isBurning = true;
|
||||
ignitionTime = Time.time;
|
||||
|
||||
// Play the fire ignition sound if there is one
|
||||
if ( ignitionSound != null )
|
||||
{
|
||||
ignitionSound.Play();
|
||||
}
|
||||
|
||||
if ( customParticles != null )
|
||||
{
|
||||
customParticles.Play();
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( fireParticlePrefab != null )
|
||||
{
|
||||
fireObject = Instantiate( fireParticlePrefab, transform.position, transform.rotation ) as GameObject;
|
||||
fireObject.transform.parent = transform;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f86ab2e727cd09f43849955c5b35f490
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
@@ -0,0 +1,442 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: The bow
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
[RequireComponent( typeof( Interactable ) )]
|
||||
public class Longbow : MonoBehaviour
|
||||
{
|
||||
public enum Handedness { Left, Right };
|
||||
|
||||
public Handedness currentHandGuess = Handedness.Left;
|
||||
private float timeOfPossibleHandSwitch = 0f;
|
||||
private float timeBeforeConfirmingHandSwitch = 1.5f;
|
||||
private bool possibleHandSwitch = false;
|
||||
|
||||
public Transform pivotTransform;
|
||||
public Transform handleTransform;
|
||||
|
||||
private Hand hand;
|
||||
private ArrowHand arrowHand;
|
||||
|
||||
public Transform nockTransform;
|
||||
public Transform nockRestTransform;
|
||||
|
||||
public bool autoSpawnArrowHand = true;
|
||||
public ItemPackage arrowHandItemPackage;
|
||||
public GameObject arrowHandPrefab;
|
||||
|
||||
public bool nocked;
|
||||
public bool pulled;
|
||||
|
||||
private const float minPull = 0.05f;
|
||||
private const float maxPull = 0.5f;
|
||||
private float nockDistanceTravelled = 0f;
|
||||
private float hapticDistanceThreshold = 0.01f;
|
||||
private float lastTickDistance;
|
||||
private const float bowPullPulseStrengthLow = 100;
|
||||
private const float bowPullPulseStrengthHigh = 500;
|
||||
private Vector3 bowLeftVector;
|
||||
|
||||
public float arrowMinVelocity = 3f;
|
||||
public float arrowMaxVelocity = 30f;
|
||||
private float arrowVelocity = 30f;
|
||||
|
||||
private float minStrainTickTime = 0.1f;
|
||||
private float maxStrainTickTime = 0.5f;
|
||||
private float nextStrainTick = 0;
|
||||
|
||||
private bool lerpBackToZeroRotation;
|
||||
private float lerpStartTime;
|
||||
private float lerpDuration = 0.15f;
|
||||
private Quaternion lerpStartRotation;
|
||||
|
||||
private float nockLerpStartTime;
|
||||
|
||||
private Quaternion nockLerpStartRotation;
|
||||
|
||||
public float drawOffset = 0.06f;
|
||||
|
||||
public LinearMapping bowDrawLinearMapping;
|
||||
|
||||
private bool deferNewPoses = false;
|
||||
private Vector3 lateUpdatePos;
|
||||
private Quaternion lateUpdateRot;
|
||||
|
||||
public SoundBowClick drawSound;
|
||||
private float drawTension;
|
||||
public SoundPlayOneshot arrowSlideSound;
|
||||
public SoundPlayOneshot releaseSound;
|
||||
public SoundPlayOneshot nockSound;
|
||||
|
||||
SteamVR_Events.Action newPosesAppliedAction;
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnAttachedToHand( Hand attachedHand )
|
||||
{
|
||||
hand = attachedHand;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void Awake()
|
||||
{
|
||||
newPosesAppliedAction = SteamVR_Events.NewPosesAppliedAction( OnNewPosesApplied );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnEnable()
|
||||
{
|
||||
newPosesAppliedAction.enabled = true;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnDisable()
|
||||
{
|
||||
newPosesAppliedAction.enabled = false;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void LateUpdate()
|
||||
{
|
||||
if ( deferNewPoses )
|
||||
{
|
||||
lateUpdatePos = transform.position;
|
||||
lateUpdateRot = transform.rotation;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnNewPosesApplied()
|
||||
{
|
||||
if ( deferNewPoses )
|
||||
{
|
||||
// Set longbow object back to previous pose position to avoid jitter
|
||||
transform.position = lateUpdatePos;
|
||||
transform.rotation = lateUpdateRot;
|
||||
|
||||
deferNewPoses = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void HandAttachedUpdate( Hand hand )
|
||||
{
|
||||
// Reset transform since we cheated it right after getting poses on previous frame
|
||||
transform.localPosition = Vector3.zero;
|
||||
transform.localRotation = Quaternion.identity;
|
||||
|
||||
// Update handedness guess
|
||||
EvaluateHandedness();
|
||||
|
||||
if ( nocked )
|
||||
{
|
||||
deferNewPoses = true;
|
||||
|
||||
Vector3 nockToarrowHand = ( arrowHand.arrowNockTransform.parent.position - nockRestTransform.position ); // Vector from bow nock transform to arrowhand nock transform - used to align bow when drawing
|
||||
|
||||
// Align bow
|
||||
// Time lerp value used for ramping into drawn bow orientation
|
||||
float lerp = Util.RemapNumberClamped( Time.time, nockLerpStartTime, ( nockLerpStartTime + lerpDuration ), 0f, 1f );
|
||||
|
||||
float pullLerp = Util.RemapNumberClamped( nockToarrowHand.magnitude, minPull, maxPull, 0f, 1f ); // Normalized current state of bow draw 0 - 1
|
||||
|
||||
Vector3 arrowNockTransformToHeadset = ( ( Player.instance.hmdTransform.position + ( Vector3.down * 0.05f ) ) - arrowHand.arrowNockTransform.parent.position ).normalized;
|
||||
Vector3 arrowHandPosition = ( arrowHand.arrowNockTransform.parent.position + ( ( arrowNockTransformToHeadset * drawOffset ) * pullLerp ) ); // Use this line to lerp arrowHand nock position
|
||||
//Vector3 arrowHandPosition = arrowHand.arrowNockTransform.position; // Use this line if we don't want to lerp arrowHand nock position
|
||||
|
||||
Vector3 pivotToString = ( arrowHandPosition - pivotTransform.position ).normalized;
|
||||
Vector3 pivotToLowerHandle = ( handleTransform.position - pivotTransform.position ).normalized;
|
||||
bowLeftVector = -Vector3.Cross( pivotToLowerHandle, pivotToString );
|
||||
pivotTransform.rotation = Quaternion.Lerp( nockLerpStartRotation, Quaternion.LookRotation( pivotToString, bowLeftVector ), lerp );
|
||||
|
||||
// Move nock position
|
||||
if ( Vector3.Dot( nockToarrowHand, -nockTransform.forward ) > 0 )
|
||||
{
|
||||
float distanceToarrowHand = nockToarrowHand.magnitude * lerp;
|
||||
|
||||
nockTransform.localPosition = new Vector3( 0f, 0f, Mathf.Clamp( -distanceToarrowHand, -maxPull, 0f ) );
|
||||
|
||||
nockDistanceTravelled = -nockTransform.localPosition.z;
|
||||
|
||||
arrowVelocity = Util.RemapNumber( nockDistanceTravelled, minPull, maxPull, arrowMinVelocity, arrowMaxVelocity );
|
||||
|
||||
drawTension = Util.RemapNumberClamped( nockDistanceTravelled, 0, maxPull, 0f, 1f );
|
||||
|
||||
this.bowDrawLinearMapping.value = drawTension; // Send drawTension value to LinearMapping script, which drives the bow draw animation
|
||||
|
||||
if ( nockDistanceTravelled > minPull )
|
||||
{
|
||||
pulled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
pulled = false;
|
||||
}
|
||||
|
||||
if ( ( nockDistanceTravelled > ( lastTickDistance + hapticDistanceThreshold ) ) || nockDistanceTravelled < ( lastTickDistance - hapticDistanceThreshold ) )
|
||||
{
|
||||
ushort hapticStrength = (ushort)Util.RemapNumber( nockDistanceTravelled, 0, maxPull, bowPullPulseStrengthLow, bowPullPulseStrengthHigh );
|
||||
hand.controller.TriggerHapticPulse( hapticStrength );
|
||||
hand.otherHand.controller.TriggerHapticPulse( hapticStrength );
|
||||
|
||||
drawSound.PlayBowTensionClicks( drawTension );
|
||||
|
||||
lastTickDistance = nockDistanceTravelled;
|
||||
}
|
||||
|
||||
if ( nockDistanceTravelled >= maxPull )
|
||||
{
|
||||
if ( Time.time > nextStrainTick )
|
||||
{
|
||||
hand.controller.TriggerHapticPulse( 400 );
|
||||
hand.otherHand.controller.TriggerHapticPulse( 400 );
|
||||
|
||||
drawSound.PlayBowTensionClicks( drawTension );
|
||||
|
||||
nextStrainTick = Time.time + Random.Range( minStrainTickTime, maxStrainTickTime );
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
nockTransform.localPosition = new Vector3( 0f, 0f, 0f );
|
||||
|
||||
this.bowDrawLinearMapping.value = 0f;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( lerpBackToZeroRotation )
|
||||
{
|
||||
float lerp = Util.RemapNumber( Time.time, lerpStartTime, lerpStartTime + lerpDuration, 0, 1 );
|
||||
|
||||
pivotTransform.localRotation = Quaternion.Lerp( lerpStartRotation, Quaternion.identity, lerp );
|
||||
|
||||
if ( lerp >= 1 )
|
||||
{
|
||||
lerpBackToZeroRotation = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void ArrowReleased()
|
||||
{
|
||||
nocked = false;
|
||||
hand.HoverUnlock( GetComponent<Interactable>() );
|
||||
hand.otherHand.HoverUnlock( arrowHand.GetComponent<Interactable>() );
|
||||
|
||||
if ( releaseSound != null )
|
||||
{
|
||||
releaseSound.Play();
|
||||
}
|
||||
|
||||
this.StartCoroutine( this.ResetDrawAnim() );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private IEnumerator ResetDrawAnim()
|
||||
{
|
||||
float startTime = Time.time;
|
||||
float startLerp = drawTension;
|
||||
|
||||
while ( Time.time < ( startTime + 0.02f ) )
|
||||
{
|
||||
float lerp = Util.RemapNumberClamped( Time.time, startTime, startTime + 0.02f, startLerp, 0f );
|
||||
this.bowDrawLinearMapping.value = lerp;
|
||||
yield return null;
|
||||
}
|
||||
|
||||
this.bowDrawLinearMapping.value = 0;
|
||||
|
||||
yield break;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public float GetArrowVelocity()
|
||||
{
|
||||
return arrowVelocity;
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void StartRotationLerp()
|
||||
{
|
||||
lerpStartTime = Time.time;
|
||||
lerpBackToZeroRotation = true;
|
||||
lerpStartRotation = pivotTransform.localRotation;
|
||||
|
||||
Util.ResetTransform( nockTransform );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void StartNock( ArrowHand currentArrowHand )
|
||||
{
|
||||
arrowHand = currentArrowHand;
|
||||
hand.HoverLock( GetComponent<Interactable>() );
|
||||
nocked = true;
|
||||
nockLerpStartTime = Time.time;
|
||||
nockLerpStartRotation = pivotTransform.rotation;
|
||||
|
||||
// Sound of arrow sliding on nock as it's being pulled back
|
||||
arrowSlideSound.Play();
|
||||
|
||||
// Decide which hand we're drawing with and lerp to the correct side
|
||||
DoHandednessCheck();
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void EvaluateHandedness()
|
||||
{
|
||||
Hand.HandType handType = hand.GuessCurrentHandType();
|
||||
|
||||
if ( handType == Hand.HandType.Left )// Bow hand is further left than arrow hand.
|
||||
{
|
||||
// We were considering a switch, but the current controller orientation matches our currently assigned handedness, so no longer consider a switch
|
||||
if ( possibleHandSwitch && currentHandGuess == Handedness.Left )
|
||||
{
|
||||
possibleHandSwitch = false;
|
||||
}
|
||||
|
||||
// If we previously thought the bow was right-handed, and were not already considering switching, start considering a switch
|
||||
if ( !possibleHandSwitch && currentHandGuess == Handedness.Right )
|
||||
{
|
||||
possibleHandSwitch = true;
|
||||
timeOfPossibleHandSwitch = Time.time;
|
||||
}
|
||||
|
||||
// If we are considering a handedness switch, and it's been this way long enough, switch
|
||||
if ( possibleHandSwitch && Time.time > ( timeOfPossibleHandSwitch + timeBeforeConfirmingHandSwitch ) )
|
||||
{
|
||||
currentHandGuess = Handedness.Left;
|
||||
possibleHandSwitch = false;
|
||||
}
|
||||
}
|
||||
else // Bow hand is further right than arrow hand
|
||||
{
|
||||
// We were considering a switch, but the current controller orientation matches our currently assigned handedness, so no longer consider a switch
|
||||
if ( possibleHandSwitch && currentHandGuess == Handedness.Right )
|
||||
{
|
||||
possibleHandSwitch = false;
|
||||
}
|
||||
|
||||
// If we previously thought the bow was right-handed, and were not already considering switching, start considering a switch
|
||||
if ( !possibleHandSwitch && currentHandGuess == Handedness.Left )
|
||||
{
|
||||
possibleHandSwitch = true;
|
||||
timeOfPossibleHandSwitch = Time.time;
|
||||
}
|
||||
|
||||
// If we are considering a handedness switch, and it's been this way long enough, switch
|
||||
if ( possibleHandSwitch && Time.time > ( timeOfPossibleHandSwitch + timeBeforeConfirmingHandSwitch ) )
|
||||
{
|
||||
currentHandGuess = Handedness.Right;
|
||||
possibleHandSwitch = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void DoHandednessCheck()
|
||||
{
|
||||
// Based on our current best guess about hand, switch bow orientation and arrow lerp direction
|
||||
if ( currentHandGuess == Handedness.Left )
|
||||
{
|
||||
pivotTransform.localScale = new Vector3( 1f, 1f, 1f );
|
||||
}
|
||||
else
|
||||
{
|
||||
pivotTransform.localScale = new Vector3( 1f, -1f, 1f );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void ArrowInPosition()
|
||||
{
|
||||
DoHandednessCheck();
|
||||
|
||||
if ( nockSound != null )
|
||||
{
|
||||
nockSound.Play();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void ReleaseNock()
|
||||
{
|
||||
// ArrowHand tells us to do this when we release the buttons when bow is nocked but not drawn far enough
|
||||
nocked = false;
|
||||
hand.HoverUnlock( GetComponent<Interactable>() );
|
||||
this.StartCoroutine( this.ResetDrawAnim() );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void ShutDown()
|
||||
{
|
||||
if ( hand != null && hand.otherHand.currentAttachedObject != null )
|
||||
{
|
||||
if ( hand.otherHand.currentAttachedObject.GetComponent<ItemPackageReference>() != null )
|
||||
{
|
||||
if ( hand.otherHand.currentAttachedObject.GetComponent<ItemPackageReference>().itemPackage == arrowHandItemPackage )
|
||||
{
|
||||
hand.otherHand.DetachObject( hand.otherHand.currentAttachedObject );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnHandFocusLost( Hand hand )
|
||||
{
|
||||
gameObject.SetActive( false );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnHandFocusAcquired( Hand hand )
|
||||
{
|
||||
gameObject.SetActive( true );
|
||||
OnAttachedToHand( hand );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
private void OnDetachedFromHand( Hand hand )
|
||||
{
|
||||
Destroy( gameObject );
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
void OnDestroy()
|
||||
{
|
||||
ShutDown();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 30032368544f1a341976db391b260507
|
||||
timeCreated: 1436921549
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,39 @@
|
||||
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
|
||||
//
|
||||
// Purpose: Sounds for the bow pulling back
|
||||
//
|
||||
//=============================================================================
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace Valve.VR.InteractionSystem
|
||||
{
|
||||
//-------------------------------------------------------------------------
|
||||
public class SoundBowClick : MonoBehaviour
|
||||
{
|
||||
public AudioClip bowClick;
|
||||
public AnimationCurve pitchTensionCurve;
|
||||
public float minPitch;
|
||||
public float maxPitch;
|
||||
|
||||
AudioSource thisAudioSource;
|
||||
|
||||
//-------------------------------------------------
|
||||
void Awake()
|
||||
{
|
||||
thisAudioSource = GetComponent<AudioSource>();
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
public void PlayBowTensionClicks( float normalizedTension )
|
||||
{
|
||||
// Tension is a float between 0 and 1. 1 being max tension and 0 being no tension
|
||||
float y = pitchTensionCurve.Evaluate( normalizedTension );
|
||||
|
||||
thisAudioSource.pitch = ( ( maxPitch - minPitch ) * y ) + minPitch;
|
||||
thisAudioSource.PlayOneShot( bowClick );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: dc121f192dd724945a1998a9c1f1727d
|
||||
timeCreated: 1436570818
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: b93fe5c516cf6ed4b9153ec790f856e2, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b5c78ec7a0919a445ad9472465dc95e3
|
||||
folderAsset: yes
|
||||
timeCreated: 1479762244
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:bc2f24a72cc0c751d1cc00090462972e6852b39ce56fc62b7ee1f1cb8476cdea
|
||||
size 52328
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user