Add StickGame Assets

This commit is contained in:
Dzejkobik007
2024-03-24 22:21:16 +01:00
parent 5a5812c0c7
commit 6c8b523d1f
6643 changed files with 596260 additions and 0 deletions

View File

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

View File

@@ -0,0 +1,782 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!29 &1
OcclusionCullingSettings:
m_ObjectHideFlags: 0
serializedVersion: 2
m_OcclusionBakeSettings:
smallestOccluder: 5
smallestHole: 0.25
backfaceThreshold: 100
m_SceneGUID: 00000000000000000000000000000000
m_OcclusionCullingData: {fileID: 0}
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 9
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
m_FogDensity: 0.01
m_LinearFogStart: 0
m_LinearFogEnd: 300
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
m_AmbientIntensity: 1
m_AmbientMode: 0
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
m_HaloStrength: 0.5
m_FlareStrength: 1
m_FlareFadeSpeed: 3
m_HaloTexture: {fileID: 0}
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
m_DefaultReflectionMode: 0
m_DefaultReflectionResolution: 128
m_ReflectionBounces: 1
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.37311953, g: 0.38074014, b: 0.3587274, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 11
m_GIWorkflowMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
m_IndirectOutputScale: 1
m_AlbedoBoost: 1
m_EnvironmentLightingMode: 0
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 12
m_Resolution: 2
m_BakeResolution: 40
m_AtlasSize: 1024
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_ExtractAmbientOcclusion: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 256
m_ReflectionCompression: 2
m_MixedBakeMode: 2
m_BakeBackend: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 512
m_PVRBounces: 2
m_PVREnvironmentSampleCount: 256
m_PVREnvironmentReferencePointCount: 2048
m_PVRFilteringMode: 1
m_PVRDenoiserTypeDirect: 1
m_PVRDenoiserTypeIndirect: 1
m_PVRDenoiserTypeAO: 1
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVREnvironmentMIS: 1
m_PVRCulling: 1
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
m_PVRFilteringGaussRadiusAO: 2
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
m_ExportTrainingData: 0
m_TrainingDataDestination: TrainingData
m_LightProbeSampleCountMultiplier: 4
m_LightingDataAsset: {fileID: 0}
m_UseShadowmask: 1
--- !u!196 &4
NavMeshSettings:
serializedVersion: 2
m_ObjectHideFlags: 0
m_BuildSettings:
serializedVersion: 2
agentTypeID: 0
agentRadius: 0.5
agentHeight: 2
agentSlope: 45
agentClimb: 0.4
ledgeDropHeight: 0
maxJumpAcrossDistance: 0
minRegionArea: 2
manualCellSize: 0
cellSize: 0.16666667
manualTileSize: 0
tileSize: 256
accuratePlacement: 0
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &279669268
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 279669271}
- component: {fileID: 279669270}
- component: {fileID: 279669269}
m_Layer: 0
m_Name: EventSystem
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &279669269
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 279669268}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3}
m_Name:
m_EditorClassIdentifier:
m_HorizontalAxis: Horizontal
m_VerticalAxis: Vertical
m_SubmitButton: Submit
m_CancelButton: Cancel
m_InputActionsPerSecond: 10
m_RepeatDelay: 0.5
m_ForceModuleActive: 0
--- !u!114 &279669270
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 279669268}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3}
m_Name:
m_EditorClassIdentifier:
m_FirstSelected: {fileID: 0}
m_sendNavigationEvents: 1
m_DragThreshold: 10
--- !u!4 &279669271
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 279669268}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1759771918
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7443408886491481971}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 226e4eaf2fa685f48bdc3dfaa87c1453, type: 3}
m_Name:
m_EditorClassIdentifier:
_allowHostAuthentication: 0
_password: HelloWorld
--- !u!114 &1424052072944914341
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2480283715082037068}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0.25490198, g: 0.25490198, b: 0.25490198, a: 1}
m_RaycastTarget: 1
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 2b3dca501a9d8c8479dc71dd068aa8b8, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &2480283715082037068
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 9139860296647313502}
- component: {fileID: 6745855427589034838}
- component: {fileID: 1424052072944914341}
m_Layer: 5
m_Name: Indicator
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &3965864433892086703
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4808982257735318098}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0.25490198, g: 0.25490198, b: 0.25490198, a: 1}
m_RaycastTarget: 1
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 2b3dca501a9d8c8479dc71dd068aa8b8, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!114 &4393252309946693682
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252309946693695}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 2d50394614f8feb4eb0567fb7618d84d, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &4393252309946693683
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252309946693695}
m_CullTransparentMesh: 0
--- !u!224 &4393252309946693692
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252309946693695}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 9139860296647313502}
m_Father: {fileID: 4393252310487700761}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 16, y: -96}
m_SizeDelta: {x: 256, y: 64}
m_Pivot: {x: 0, y: 1}
--- !u!114 &4393252309946693693
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252309946693695}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 4393252309946693682}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 4393252310487700741}
m_MethodName: OnClick_Client
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!1 &4393252309946693695
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4393252309946693692}
- component: {fileID: 4393252309946693683}
- component: {fileID: 4393252309946693682}
- component: {fileID: 4393252309946693693}
m_Layer: 5
m_Name: Client
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &4393252309963656626
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252309963656639}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 1b187e63031bf7849b249c8212440c3b, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &4393252309963656627
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252309963656639}
m_CullTransparentMesh: 0
--- !u!224 &4393252309963656636
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252309963656639}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 7233259198976730044}
m_Father: {fileID: 4393252310487700761}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 16, y: -16}
m_SizeDelta: {x: 256, y: 64}
m_Pivot: {x: 0, y: 1}
--- !u!114 &4393252309963656637
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252309963656639}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 4393252309963656626}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 4393252310487700741}
m_MethodName: OnClick_Server
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!1 &4393252309963656639
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4393252309963656636}
- component: {fileID: 4393252309963656627}
- component: {fileID: 4393252309963656626}
- component: {fileID: 4393252309963656637}
m_Layer: 5
m_Name: Server
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!1 &4393252310487700740
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4393252310487700761}
- component: {fileID: 4393252310487700741}
- component: {fileID: 4393252310487700760}
- component: {fileID: 4393252310487700763}
- component: {fileID: 4393252310487700762}
m_Layer: 5
m_Name: NetworkHudCanvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &4393252310487700741
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252310487700740}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6d3606bfdac5a4743890fc1a5ecd8f24, type: 3}
m_Name:
m_EditorClassIdentifier:
_autoStartType: 1
_stoppedColor: {r: 0.25490198, g: 0.25490198, b: 0.25490198, a: 1}
_changingColor: {r: 0.78431374, g: 0.6862745, b: 0, a: 1}
_startedColor: {r: 0, g: 0.5882353, b: 0.64705884, a: 1}
_serverIndicator: {fileID: 3965864433892086703}
_clientIndicator: {fileID: 1424052072944914341}
--- !u!223 &4393252310487700760
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252310487700740}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 0
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_AdditionalShaderChannelsFlag: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!224 &4393252310487700761
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252310487700740}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 4393252309963656636}
- {fileID: 4393252309946693692}
m_Father: {fileID: 7443408886491481969}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!114 &4393252310487700762
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252310487700740}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!114 &4393252310487700763
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4393252310487700740}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 1
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 1920, y: 1080}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0.5
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
--- !u!1 &4808982257735318098
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7233259198976730044}
- component: {fileID: 5104387648618217429}
- component: {fileID: 3965864433892086703}
m_Layer: 5
m_Name: Indicator
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!222 &5104387648618217429
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4808982257735318098}
m_CullTransparentMesh: 0
--- !u!222 &6745855427589034838
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2480283715082037068}
m_CullTransparentMesh: 0
--- !u!224 &7233259198976730044
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4808982257735318098}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 4393252309963656636}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!4 &7443408886491481969
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7443408886491481971}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 4393252310487700761}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &7443408886491481970
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7443408886491481971}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d2c95dfde7d73b54dbbdc23155d35d36, type: 3}
m_Name:
m_EditorClassIdentifier:
_logging: {fileID: 0}
_spawnablePrefabs: {fileID: 11400000, guid: ab6a9000f5ff83f45b6761c2a3be018d, type: 2}
_refreshDefaultPrefabs: 0
_runInBackground: 1
_dontDestroyOnLoad: 1
_objectPool: {fileID: 0}
_persistence: 0
--- !u!1 &7443408886491481971
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7443408886491481969}
- component: {fileID: 7443408886491481970}
- component: {fileID: 1759771918}
m_Layer: 0
m_Name: NetworkManager
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &9139860296647313502
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2480283715082037068}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 4393252309946693692}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 0bc02b628363de5499d5e7c00bd63b1b
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,15 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4489d77032a81ef42b0067acf2737d4d, type: 3}
m_Name: Authenticator_Prefabs
m_EditorClassIdentifier:
_prefabs: []

View File

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

View File

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

View File

@@ -0,0 +1,21 @@

using FishNet.Broadcast;
namespace FishNet.Example.Authenticating
{
public struct HostPasswordBroadcast : IBroadcast
{
public string Password;
}
public struct PasswordBroadcast : IBroadcast
{
public string Password;
}
public struct ResponseBroadcast : IBroadcast
{
public bool Passed;
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: d26bb0c99070e9b49bc8632dc0b68214
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,152 @@
using FishNet.Connection;
using FishNet.Example.Authenticating;
using FishNet.Managing;
using FishNet.Transporting;
using System;
using System.Security.Cryptography;
using System.Text;
using UnityEngine;
namespace FishNet.Authenticating
{
/// <summary>
/// This authenticator is an example of how to let host bypass the authentication process.
/// When checking to authenticate on the client side call AuthenticateAsHost, and if returned true skip normal authentication.
/// </summary>
public abstract class HostAuthenticator : Authenticator
{
#region Serialized.
/// <summary>
/// True to enable use of AuthenticateAsHost.
/// </summary>
[Tooltip("True to enable use of AuthenticateAsHost.")]
[SerializeField]
private bool _allowHostAuthentication;
/// <summary>
/// Sets if to allow host authentication.
/// </summary>
/// <param name="value"></param>
public void SetAllowHostAuthentication(bool value) => _allowHostAuthentication = value;
/// <summary>
/// Returns if AllowHostAuthentication is enabled.
/// </summary>
/// <returns></returns>
public bool GetAllowHostAuthentication() => _allowHostAuthentication;
#endregion
#region Private.
/// <summary>
/// A random hash which only exist if the server is started.
/// </summary>
private static string _hostHash = string.Empty;
#endregion
/// <summary>
/// Initializes this script for use.
/// </summary>
/// <param name="networkManager"></param>
public override void InitializeOnce(NetworkManager networkManager)
{
base.InitializeOnce(networkManager);
//Listen for connection state of local server to set hash.
base.NetworkManager.ServerManager.OnServerConnectionState += ServerManager_OnServerConnectionState;
//Listen for broadcast from client. Be sure to set requireAuthentication to false.
base.NetworkManager.ServerManager.RegisterBroadcast<HostPasswordBroadcast>(OnHostPasswordBroadcast, false);
}
/// <summary>
/// Called after the local server connection state changes.
/// </summary>
private void ServerManager_OnServerConnectionState(ServerConnectionStateArgs obj)
{
int length = (obj.ConnectionState == LocalConnectionState.Started) ? 25 : 0;
SetHostHash(length);
}
/// <summary>
/// Received on server when a client sends the password broadcast message.
/// </summary>
/// <param name="conn">Connection sending broadcast.</param>
/// <param name="hpb"></param>
private void OnHostPasswordBroadcast(NetworkConnection conn, HostPasswordBroadcast hpb)
{
//Not accepting host authentications. This could be an attack.
if (!_allowHostAuthentication)
{
conn.Disconnect(true);
return;
}
/* If client is already authenticated this could be an attack. Connections
* are removed when a client disconnects so there is no reason they should
* already be considered authenticated. */
if (conn.Authenticated)
{
conn.Disconnect(true);
return;
}
bool correctPassword = (hpb.Password == _hostHash);
OnHostAuthenticationResult(conn, correctPassword);
}
/// <summary>
/// Called after handling a host authentication result.
/// </summary>
/// <param name="conn">Connection authenticating.</param>
/// <param name="authenticated">True if authentication passed.</param>
protected abstract void OnHostAuthenticationResult(NetworkConnection conn, bool authenticated);
/// <summary>
/// Sets a host hash of length.
/// </summary>
/// https://stackoverflow.com/questions/32932679/using-rngcryptoserviceprovider-to-generate-random-string
private void SetHostHash(int length)
{
if (length <= 0)
{
_hostHash = string.Empty;
}
else
{
const string charPool = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()";
StringBuilder result = new StringBuilder();
using (RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider())
{
byte[] uintBuffer = new byte[sizeof(uint)];
while (length-- > 0)
{
rng.GetBytes(uintBuffer);
uint num = BitConverter.ToUInt32(uintBuffer, 0);
result.Append(charPool[(int)(num % (uint)charPool.Length)]);
}
}
_hostHash = result.ToString();
}
}
/// <summary>
/// Returns true if authentication was sent as host.
/// </summary>
/// <returns></returns>
protected bool AuthenticateAsHost()
{
if (!_allowHostAuthentication)
return false;
if (_hostHash == string.Empty)
return false;
HostPasswordBroadcast hpb = new HostPasswordBroadcast()
{
Password = _hostHash,
};
base.NetworkManager.ClientManager.Broadcast(hpb);
return true;
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c7497d751bb68f444b4343e3edc28e39
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,132 @@
using FishNet.Authenticating;
using FishNet.Connection;
using FishNet.Managing;
using FishNet.Managing.Logging;
using FishNet.Transporting;
using System;
using UnityEngine;
namespace FishNet.Example.Authenticating
{
/// <summary>
/// This is an example of a password authenticator.
/// Never send passwords without encryption.
/// </summary>
public class PasswordAuthenticator : HostAuthenticator
{
#region Public.
/// <summary>
/// Called when authenticator has concluded a result for a connection. Boolean is true if authentication passed, false if failed.
/// Server listens for this event automatically.
/// </summary>
public override event Action<NetworkConnection, bool> OnAuthenticationResult;
#endregion
#region Serialized.
/// <summary>
/// Password to authenticate.
/// </summary>
[Tooltip("Password to authenticate.")]
[SerializeField]
private string _password = "HelloWorld";
#endregion
public override void InitializeOnce(NetworkManager networkManager)
{
base.InitializeOnce(networkManager);
//Listen for connection state change as client.
base.NetworkManager.ClientManager.OnClientConnectionState += ClientManager_OnClientConnectionState;
//Listen for broadcast from client. Be sure to set requireAuthentication to false.
base.NetworkManager.ServerManager.RegisterBroadcast<PasswordBroadcast>(OnPasswordBroadcast, false);
//Listen to response from server.
base.NetworkManager.ClientManager.RegisterBroadcast<ResponseBroadcast>(OnResponseBroadcast);
}
/// <summary>
/// Called when a connection state changes for the local client.
/// </summary>
private void ClientManager_OnClientConnectionState(ClientConnectionStateArgs args)
{
/* If anything but the started state then exit early.
* Only try to authenticate on started state. The server
* doesn't have to send an authentication request before client
* can authenticate, that is entirely optional and up to you. In this
* example the client tries to authenticate soon as they connect. */
if (args.ConnectionState != LocalConnectionState.Started)
return;
//Authentication was sent as host, no need to authenticate normally.
if (AuthenticateAsHost())
return;
PasswordBroadcast pb = new PasswordBroadcast()
{
Password = _password
};
base.NetworkManager.ClientManager.Broadcast(pb);
}
/// <summary>
/// Received on server when a client sends the password broadcast message.
/// </summary>
/// <param name="conn">Connection sending broadcast.</param>
/// <param name="pb"></param>
private void OnPasswordBroadcast(NetworkConnection conn, PasswordBroadcast pb)
{
/* If client is already authenticated this could be an attack. Connections
* are removed when a client disconnects so there is no reason they should
* already be considered authenticated. */
if (conn.Authenticated)
{
conn.Disconnect(true);
return;
}
bool correctPassword = (pb.Password == _password);
SendAuthenticationResponse(conn, correctPassword);
/* Invoke result. This is handled internally to complete the connection or kick client.
* It's important to call this after sending the broadcast so that the broadcast
* makes it out to the client before the kick. */
OnAuthenticationResult?.Invoke(conn, correctPassword);
}
/// <summary>
/// Received on client after server sends an authentication response.
/// </summary>
/// <param name="rb"></param>
private void OnResponseBroadcast(ResponseBroadcast rb)
{
string result = (rb.Passed) ? "Authentication complete." : "Authenitcation failed.";
NetworkManager.Log(result);
}
/// <summary>
/// Sends an authentication result to a connection.
/// </summary>
private void SendAuthenticationResponse(NetworkConnection conn, bool authenticated)
{
/* Tell client if they authenticated or not. This is
* entirely optional but does demonstrate that you can send
* broadcasts to client on pass or fail. */
ResponseBroadcast rb = new ResponseBroadcast()
{
Passed = authenticated
};
base.NetworkManager.ServerManager.Broadcast(conn, rb, false);
}
/// <summary>
/// Called after handling a host authentication result.
/// </summary>
/// <param name="conn">Connection authenticating.</param>
/// <param name="authenticated">True if authentication passed.</param>
protected override void OnHostAuthenticationResult(NetworkConnection conn, bool authenticated)
{
SendAuthenticationResponse(conn, authenticated);
OnAuthenticationResult?.Invoke(conn, authenticated);
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 226e4eaf2fa685f48bdc3dfaa87c1453
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,10 @@
THIS DEMO REQUIRES FISH-NETWORKING PRO
- Start two editors or builds.
- Press play on each.
- Run one as server, and the other as client.
Red shows where the object was rolled back to on the server.
Green shows where the object actually was on server.
Rollback indicators in demo will not be correct when firing as clientHost.

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 683b83b178f491a479b732df31da7ade
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Ground
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.30265415, g: 0.31132078, b: 0.08664116, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3d329b71ccd856144ab8753e70f69e4e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,29 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Circle Additive
m_Shader: {fileID: 10720, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 5
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _MainTex:
m_Texture: {fileID: 2800000, guid: 155f67fd8750f8e4e83c8efb1731f3a0, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _InvFade: 1
m_Colors:
- _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4bf10d94145fd6c4187c18de0af92e43
timeCreated: 1448288937
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,78 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: ClientPosition
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 3
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 0
m_Colors:
- _Color: {r: 0, g: 1, b: 0.034508944, a: 0.49019608}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

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

View File

@@ -0,0 +1,78 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: ServerPosition
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 3
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 0
m_Colors:
- _Color: {r: 1, g: 0.05869128, b: 0, a: 0.49019608}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

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

View File

@@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Target
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

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

View File

@@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Wall
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.4339623, g: 0.4339623, b: 0.4339623, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,949 @@
# Alias OBJ Model File
# Exported from SketchUp, (c) 2000-2012 Trimble Navigation Limited
# File units = meters
mtllib pistol.mtl
g Mesh1 Group2 Group1 Model
usemtl Gray4
v 0.0045 0.018 0.0225
vt 0 22.0472
vn 1 0 -0
v 0.0045 0.0102 0.0225
vt 0 16.9291
v 0.0045 0.0102 -0.0189
vt 27.1654 16.9291
v 0.0045 0.018 -0.0189
vt 27.1654 22.0472
f 1/1/1 2/2/1 3/3/1 4/4/1
v -0.0045 0.018 0.0225
vn 0 0 1
v -0.0045 0.0102 0.0225
v -0.0039 0.0102 0.0225
vt 0.393701 16.9291
v -0.0039 0.0174 0.0225
vt 0.393701 21.6535
v 0.0039 0.0174 0.0225
vt 5.51181 21.6535
v 0.0039 0.0102 0.0225
vt 5.51181 16.9291
vt 5.90551 16.9291
vt 5.90551 22.0472
f 5/1/2 6/2/2 7/5/2 8/6/2 9/7/2 10/8/2 2/9/2 1/10/2
v -0.0045 0.018 -0.0075
vt -19.685 22.0472
vn -1 0 -0
v -0.0045 0.018 -0.0189
vt -27.1654 22.0472
v -0.0045 0.0102 -0.0189
vt -27.1654 16.9291
v -0.0045 0.018 0.0003
vt -14.5669 22.0472
v -0.0045 0.015 0.0003
vt -14.5669 20.0787
v -0.0045 0.015 -0.0075
vt -19.685 20.0787
f 11/11/3 12/12/3 13/13/3 6/2/3 5/1/3 14/14/3 15/15/3 16/16/3
vt 0 27.1654
vn 0 1 -0
vt 0 19.685
v 0.0015 0.018 -0.0075
vt 3.93701 19.685
v 0.0015 0.018 0.0003
vt 3.93701 14.5669
vt 0 14.5669
vt 0 0
vt 5.90551 0
vt 5.90551 27.1654
f 12/17/4 11/18/4 17/19/4 18/20/4 14/21/4 5/22/4 1/23/4 4/24/4
v 0.0015 0.0174 -0.0075
vt 3.93701 21.6535
vt 3.93701 22.0472
vt 0 20.0787
v -0.0039 0.015 -0.0075
vt 0.393701 20.0787
v -0.0039 0.0174 -0.0075
f 19/25/2 17/26/2 11/1/2 16/27/2 20/28/2 21/6/2
vt -19.685 21.6535
v 0.0015 0.0174 0.0003
vt -14.5669 21.6535
f 18/14/3 17/11/3 19/29/3 22/30/3
v 0.0039 0.0174 -0.0189
vt -5.51181 27.1654
vn 0 -1 -0
v 0.0039 0.0174 0.0219
vt -5.51181 0.393701
v -0.0039 0.0174 0.0219
vt -0.393701 0.393701
v -0.0039 0.0174 0.0003
vt -0.393701 14.5669
vt -3.93701 14.5669
vt -3.93701 19.685
vt -0.393701 19.685
v -0.0039 0.0174 -0.0189
vt -0.393701 27.1654
f 23/31/5 24/32/5 25/33/5 26/34/5 22/35/5 19/36/5 21/37/5 27/38/5
vt -0.393701 21.6535
vn -1 -8.44909e-032 -5.30817e-016
vt -27.1654 21.6535
v 0.0039 0.0102 -0.0189
v 0.0039 0.0102 0.0219
vt -0.393701 16.9291
f 24/39/6 23/40/6 28/13/6 29/41/6
vt -5.90551 16.9291
vn 0 0 -1
vt -5.51181 16.9291
vt -5.51181 21.6535
v -0.0039 0.0102 -0.0189
vt -5.90551 22.0472
f 3/42/7 28/43/7 23/44/7 27/39/7 30/41/7 13/2/7 12/1/7 4/45/7
vt -5.90551 27.1654
vt -5.90551 0
vt -5.51181 0
f 29/32/5 28/31/5 3/46/5 2/47/5 10/48/5
vt 0 21.6535
f 10/2/3 9/49/3 24/39/3 29/41/3
vt -0.393701 0
f 9/48/5 8/50/5 25/33/5 24/32/5
v -0.0039 0.0102 0.0219
f 8/49/1 7/2/1 31/5/1 25/6/1
f 30/38/5 31/33/5 7/50/5 6/22/5 13/17/5
vt 14.5669 21.6535
vn 1 -9.10486e-016 -4.47514e-016
vt 27.1654 21.6535
vt 19.685 21.6535
vt 19.685 20.0787
v -0.0039 0.015 0.0003
vt 14.5669 20.0787
f 26/51/8 25/6/8 31/5/8 30/3/8 27/52/8 21/53/8 20/54/8 32/55/8
vt 0.393701 14.5669
vt 0.393701 19.685
f 16/18/4 15/21/4 32/56/4 20/57/4
vt -3.93701 21.6535
vt -0.393701 20.0787
vt -3.93701 22.0472
f 22/58/7 26/39/7 32/59/7 15/27/7 14/1/7 18/60/7
g Mesh2 Group3 Group1 Model
usemtl Gray6
v -0.0039 -0.0156 -0.0225
vt -0.393701 29.5276
v 0.0039 -0.0156 -0.0225
vt -5.51181 29.5276
v 0.0039 -0.0156 -0.0105
v -0.0039 -0.0156 -0.0105
f 33/61/5 34/62/5 35/44/5 36/39/5
v 0.0045 -0.0156 -0.0231
vt 5.90551 29.9213
vt 0.393701 29.5276
vt 5.51181 29.5276
f 37/63/4 33/64/4 34/65/4
v -0.0045 -0.0156 -0.0231
vt 0 29.9213
f 38/66/4 33/64/4 37/63/4
v -0.0045 -0.0156 -0.0099
vt 1.42109e-014 21.2598
f 33/64/4 38/66/4 39/67/4
vt -21.2598 -1.02483e-058
vn -1 -2.08756e-045 1.64071e-015
vt -29.9213 -1.02483e-058
v -0.0045 -0.018 -0.0231
vt -29.9213 -1.5748
v -0.0045 -0.018 -0.0099
vt -21.2598 -1.5748
f 39/68/9 38/69/9 40/70/9 41/71/9
v 0.0045 -0.018 -0.0231
vt -5.90551 -1.5748
vt 0 -1.5748
f 38/22/7 37/47/7 42/72/7 40/73/7
vt 29.9213 1.23281e-044
vn 1 -2.08756e-045 -1.64071e-015
v 0.0045 -0.0156 -0.0099
vt 21.2598 1.23281e-044
v 0.0045 -0.018 -0.0099
vt 21.2598 -1.5748
vt 29.9213 -1.5748
f 37/74/10 43/75/10 44/76/10 42/77/10
vt 5.90551 21.2598
f 35/7/4 43/78/4 37/63/4
f 36/6/4 43/78/4 35/7/4
f 36/6/4 39/67/4 43/78/4
f 39/67/4 36/6/4 33/64/4
v -0.0039 0.0072 0.0219
vt -0.393701 14.9606
vn -1 -6.29366e-016 1.52472e-016
v -0.0039 0.0174 0.0219
v -0.0039 0.0174 -0.0195
vt -27.5591 21.6535
v -0.0039 0.0072 -0.0195
vt -27.5591 14.9606
v -0.0039 0.0072 -0.0165
vt -25.5906 14.9606
vt -29.5276 -2.47782e-016
vt -21.6535 -2.47782e-016
v -0.0039 0.0072 -0.0045
vt -17.7165 14.9606
f 45/79/11 46/39/11 47/80/11 48/81/11 49/82/11 33/83/11 36/84/11 50/85/11
vt 0.393701 14.9606
v -0.00289778 0.0130235 0.0219
vt 1.05133 18.7819
f 45/86/2 51/87/2 46/6/2
v -0.00259808 0.0123 0.0219
vt 1.24798 18.3071
f 51/87/2 45/86/2 52/88/2
v -0.00212132 0.0116787 0.0219
vt 1.56081 17.8994
f 52/88/2 45/86/2 53/89/2
v -0.0015 0.0112019 0.0219
vt 1.9685 17.5866
f 53/89/2 45/86/2 54/90/2
v -0.000776457 0.0109022 0.0219
vt 2.44327 17.3899
f 54/90/2 45/86/2 55/91/2
v -9.86988e-018 0.0108 0.0219
vt 2.95276 17.3228
f 55/91/2 45/86/2 56/92/2
v 0.000776457 0.0109022 0.0219
vt 3.46224 17.3899
f 45/86/2 57/93/2 56/92/2
v 0.0015 0.0112019 0.0219
vt 3.93701 17.5866
f 45/86/2 58/94/2 57/93/2
v 0.0039 0.0072 0.0219
vt 5.51181 14.9606
f 59/95/2 58/94/2 45/86/2
v 0.00212132 0.0116787 0.0219
vt 4.3447 17.8994
f 58/94/2 59/95/2 60/96/2
v 0.00259808 0.0123 0.0219
vt 4.65753 18.3071
f 60/96/2 59/95/2 61/97/2
v 0.00289778 0.0130235 0.0219
vt 4.85418 18.7819
f 61/97/2 59/95/2 62/98/2
v 0.0039 0.0174 0.0219
f 62/98/2 59/95/2 63/7/2
v 0.0039 0.0174 -0.0195
vt 27.5591 21.6535
vn 1 -1.5843e-016 1.83988e-016
v 0.0039 0.0072 -0.0045
vt 17.7165 14.9606
vt 21.6535 8.73238e-016
vt 29.5276 8.73238e-016
v 0.0039 0.0072 -0.0165
vt 25.5906 14.9606
v 0.0039 0.0072 -0.0195
vt 27.5591 14.9606
f 64/99/12 63/6/12 59/86/12 65/100/12 35/101/12 34/102/12 66/103/12 67/104/12
vt 0.393701 27.5591
vt 0.393701 0.393701
vt 5.51181 0.393701
vt 5.51181 27.5591
f 47/105/4 46/106/4 63/107/4 64/108/4
v -9.86988e-018 0.0168 0.0219
vt 2.95276 21.2598
f 46/6/2 68/109/2 63/7/2
v -0.000776457 0.0166978 0.0219
vt 2.44327 21.1928
f 46/6/2 69/110/2 68/109/2
v -0.0015 0.0163981 0.0219
vt 1.9685 20.9961
f 46/6/2 70/111/2 69/110/2
v -0.00212132 0.0159213 0.0219
vt 1.56081 20.6833
f 46/6/2 71/112/2 70/111/2
v -0.00259808 0.0153 0.0219
vt 1.24798 20.2756
f 46/6/2 72/113/2 71/112/2
v -0.00289778 0.0145765 0.0219
vt 1.05133 19.8008
f 46/6/2 73/114/2 72/113/2
v -0.003 0.0138 0.0219
vt 0.984252 19.2913
f 46/6/2 74/115/2 73/114/2
f 46/6/2 51/87/2 74/115/2
usemtl Gray4
v -0.003 0.0138 0.0231
vt 0.393701 18.9978
vt -0.393701 18.9978
vt -0.393701 18.4839
vn -0.965926 -0.258819 -0
v -0.00289778 0.0130235 0.0231
vt 0.393701 18.4839
f 75/116/3 74/117/3 51/118/13 76/119/13
v -0.00289778 0.0145765 0.0231
vt 0.393701 19.7687
vn -0.965926 0.258819 -0
vt -0.393701 19.7687
vt -0.393701 19.2548
vt 0.393701 19.2548
f 77/120/14 73/121/14 74/122/3 75/123/3
v -0.00259808 0.0153 0.0231
vt 0.393701 19.2098
vn -0.866025 0.5 -0
vt -0.393701 19.2098
vt -0.393701 18.6959
vt 0.393701 18.6959
f 78/124/15 72/125/15 73/126/14 77/127/14
v -0.00212132 0.0159213 0.0231
vt 0.393701 17.3593
vn -0.707107 0.707107 -0
vt -0.393701 17.3593
vt -0.393701 16.8454
vt 0.393701 16.8454
f 79/128/16 71/129/16 72/130/15 78/131/15
v -0.0015 0.0163981 0.0231
vt 0.393701 14.3433
vn -0.5 0.866025 -0
vt -0.393701 14.3433
vt -0.393701 13.8295
vt 0.393701 13.8295
f 80/132/17 70/133/17 71/134/16 79/135/16
v -0.000776457 0.0166978 0.0231
vt 0.393701 10.3674
vn -0.258819 0.965926 -0
vt -0.393701 10.3674
vt -0.393701 9.85353
vt 0.393701 9.85353
f 81/136/18 69/137/18 70/138/17 80/139/17
v -9.86988e-018 0.0168 0.0231
vt 0.393701 5.70246
vt -0.393701 5.70246
vt -0.393701 5.18858
vt 0.393701 5.18858
f 82/140/4 68/141/4 69/142/18 81/143/18
v 0.000776457 0.0166978 0.0231
vt -0.393701 -0.666411
vn 0.258819 0.965926 -0
v 0.000776457 0.0166978 0.0219
vt 0.393701 -0.666411
vt 0.393701 -0.152528
vt -0.393701 -0.152528
f 83/144/19 84/145/19 68/146/4 82/147/4
v 0.0015 0.0163981 0.0231
vt -0.393701 4.39754
vn 0.5 0.866025 -0
v 0.0015 0.0163981 0.0219
vt 0.393701 4.39754
vt 0.393701 4.91143
vt -0.393701 4.91143
f 85/148/20 86/149/20 84/150/19 83/151/19
v 0.00212132 0.0159213 0.0231
vt -0.393701 9.1443
vn 0.707107 0.707107 -0
v 0.00212132 0.0159213 0.0219
vt 0.393701 9.1443
vt 0.393701 9.65819
vt -0.393701 9.65819
f 87/152/21 88/153/21 86/154/20 85/155/20
v 0.00259808 0.0153 0.0231
vt -0.393701 13.2504
vn 0.866025 0.5 -0
v 0.00259808 0.0153 0.0219
vt 0.393701 13.2504
vt 0.393701 13.7643
vt -0.393701 13.7643
f 89/156/22 90/157/22 88/158/21 87/159/21
v 0.00289778 0.0145765 0.0231
vt -0.393701 16.436
vn 0.965926 0.258819 -0
v 0.00289778 0.0145765 0.0219
vt 0.393701 16.436
vt 0.393701 16.9498
vt -0.393701 16.9498
f 91/160/23 92/161/23 90/162/22 89/163/22
v 0.003 0.0138 0.0231
vn 1 -4.75916e-016 -0
v 0.003 0.0138 0.0219
f 93/118/24 94/119/24 92/116/23 91/117/23
v 0.00289778 0.0130235 0.0231
vn 0.965926 -0.258819 -0
f 95/122/25 62/123/25 94/120/24 93/121/24
v 0.00259808 0.0123 0.0231
vn 0.866025 -0.5 -0
f 96/126/26 61/127/26 62/124/25 95/125/25
v 0.00212132 0.0116787 0.0231
vn 0.707107 -0.707107 -0
f 97/130/27 60/131/27 61/128/26 96/129/26
v 0.0015 0.0112019 0.0231
vn 0.5 -0.866025 -0
f 98/134/28 58/135/28 60/132/27 97/133/27
v 0.000776457 0.0109022 0.0231
vn 0.258819 -0.965926 -0
f 99/138/29 57/139/29 58/136/28 98/137/28
v -9.86988e-018 0.0108 0.0231
f 100/142/5 56/143/5 57/140/29 99/141/29
v -0.000776457 0.0109022 0.0231
vn -0.258819 -0.965926 -0
f 101/146/30 55/147/30 56/144/5 100/145/5
v -0.0015 0.0112019 0.0231
vn -0.5 -0.866025 -0
f 102/150/31 54/151/31 55/148/30 101/149/30
v -0.00212132 0.0116787 0.0231
vn -0.707107 -0.707107 -0
f 103/154/32 53/155/32 54/152/31 102/153/31
v -0.00259808 0.0123 0.0231
vn -0.866025 -0.5 -0
f 104/158/33 52/159/33 53/156/32 103/157/32
f 76/162/13 51/163/13 52/160/33 104/161/33
v -0.00206741 0.0126064 0.0231
vt 1.59619 18.5081
f 104/88/2 105/164/2 76/87/2
v -0.00168803 0.012112 0.0231
vt 1.84512 18.1837
f 104/88/2 106/165/2 105/164/2
v -0.00119362 0.0117326 0.0231
vt 2.16954 17.9348
f 104/88/2 107/166/2 106/165/2
f 103/89/2 107/166/2 104/88/2
v -0.000617862 0.0114941 0.0231
vt 2.54733 17.7783
f 103/89/2 108/167/2 107/166/2
v -9.86988e-018 0.0114128 0.0231
vt 2.95276 17.7249
f 103/89/2 109/168/2 108/167/2
f 103/89/2 98/94/2 109/168/2
f 102/90/2 98/94/2 103/89/2
f 101/91/2 98/94/2 102/90/2
f 101/91/2 99/93/2 98/94/2
f 99/93/2 101/91/2 100/92/2
f 97/96/2 109/168/2 98/94/2
v 0.000617862 0.0114941 0.0231
vt 3.35818 17.7783
f 109/168/2 97/96/2 110/169/2
v 0.00119362 0.0117326 0.0231
vt 3.73597 17.9348
f 110/169/2 97/96/2 111/170/2
f 111/170/2 97/96/2 96/97/2
v 0.00168803 0.012112 0.0231
vt 4.06039 18.1837
f 111/170/2 96/97/2 112/171/2
v 0.00206741 0.0126064 0.0231
vt 4.30932 18.5081
f 112/171/2 96/97/2 113/172/2
f 113/172/2 96/97/2 95/98/2
v 0.00230589 0.0131821 0.0231
vt 4.46581 18.8859
f 113/172/2 95/98/2 114/173/2
vt 4.92126 19.2913
f 114/173/2 95/98/2 93/174/2
v 0.00238724 0.0138 0.0231
vt 4.51918 19.2913
f 114/173/2 93/174/2 115/175/2
vt 4.85418 19.8008
f 115/175/2 93/174/2 91/176/2
v 0.00230589 0.0144179 0.0231
vt 4.46581 19.6968
f 115/175/2 91/176/2 116/177/2
v 0.00206741 0.0149936 0.0231
vt 4.30932 20.0746
f 116/177/2 91/176/2 117/178/2
vt 4.65753 20.2756
f 117/178/2 91/176/2 89/179/2
v 0.00168803 0.015488 0.0231
vt 4.06039 20.399
f 117/178/2 89/179/2 118/180/2
vt 4.3447 20.6833
f 118/180/2 89/179/2 87/181/2
v 0.00119362 0.0158674 0.0231
vt 3.73597 20.6479
f 118/180/2 87/181/2 119/182/2
v 0.000617862 0.0161059 0.0231
vt 3.35818 20.8044
f 119/182/2 87/181/2 120/183/2
vt 3.93701 20.9961
f 120/183/2 87/181/2 85/184/2
v -9.86988e-018 0.0161872 0.0231
vt 2.95276 20.8578
f 120/183/2 85/184/2 121/185/2
f 121/185/2 85/184/2 80/111/2
f 80/111/2 85/184/2 81/110/2
vt 3.46224 21.1928
f 81/110/2 85/184/2 83/186/2
f 81/110/2 83/186/2 82/109/2
v -0.000617862 0.0161059 0.0231
vt 2.54733 20.8044
f 80/111/2 122/187/2 121/185/2
f 79/112/2 122/187/2 80/111/2
v -0.00119362 0.0158674 0.0231
vt 2.16954 20.6479
f 79/112/2 123/188/2 122/187/2
v -0.00168803 0.015488 0.0231
vt 1.84512 20.399
f 79/112/2 124/189/2 123/188/2
f 78/113/2 124/189/2 79/112/2
v -0.00206741 0.0149936 0.0231
vt 1.59619 20.0746
f 78/113/2 125/190/2 124/189/2
f 77/114/2 125/190/2 78/113/2
v -0.00230589 0.0144179 0.0231
vt 1.4397 19.6968
f 77/114/2 126/191/2 125/190/2
f 75/115/2 126/191/2 77/114/2
v -0.00238724 0.0138 0.0231
vt 1.38633 19.2913
f 75/115/2 127/192/2 126/191/2
v -0.00230589 0.0131821 0.0231
vt 1.4397 18.8859
f 75/115/2 128/193/2 127/192/2
f 76/87/2 128/193/2 75/115/2
f 76/87/2 105/164/2 128/193/2
v -0.00206741 0.0126064 0.0219
vt 0.393701 16.4884
v -0.00230589 0.0131821 0.0219
vt 0.393701 16.8974
vt -0.393701 16.8974
vt -0.393701 16.4884
f 129/194/22 130/195/23 128/196/23 105/197/22
usemtl Gray8
v -0.00206741 0.0149936 0.0219
v -0.00230589 0.0144179 0.0219
v -0.00238724 0.0138 0.0219
v -0.00168803 0.012112 0.0219
v -0.00119362 0.0117326 0.0219
v -0.000617862 0.0114941 0.0219
v -9.86988e-018 0.0114128 0.0219
v 0.000617862 0.0114941 0.0219
v 0.00119362 0.0117326 0.0219
v 0.00168803 0.012112 0.0219
v 0.00206741 0.0126064 0.0219
v 0.00230589 0.0131821 0.0219
v 0.00238724 0.0138 0.0219
v 0.00230589 0.0144179 0.0219
v 0.00206741 0.0149936 0.0219
v 0.00168803 0.015488 0.0219
v 0.00119362 0.0158674 0.0219
v 0.000617862 0.0161059 0.0219
v -9.86988e-018 0.0161872 0.0219
v -0.000617862 0.0161059 0.0219
v -0.00119362 0.0158674 0.0219
v -0.00168803 0.015488 0.0219
f 131/190/2 132/191/2 133/192/2 130/193/2 129/164/2 134/165/2 135/166/2 136/167/2 137/168/2 138/169/2 139/170/2 140/171/2 141/172/2 142/173/2 143/175/2 144/177/2 145/178/2 146/180/2 147/182/2 148/183/2 149/185/2 150/187/2 151/188/2 152/189/2
usemtl Gray4
vt 0.393701 18.7484
vt 0.393701 19.1573
vt -0.393701 19.1573
vt -0.393701 18.7484
f 132/198/25 131/199/26 125/200/26 126/201/25
vt 0.393701 16.8979
vt 0.393701 17.3068
vt -0.393701 17.3068
vt -0.393701 16.8979
f 131/202/26 152/203/27 124/204/27 125/205/26
vt 0.393701 13.8819
vt 0.393701 14.2909
vt -0.393701 14.2909
vt -0.393701 13.8819
f 152/206/27 151/207/28 123/208/28 124/209/27
vt 0.393701 9.90601
vt 0.393701 10.3149
vt -0.393701 10.3149
vt -0.393701 9.90601
f 151/210/28 150/211/29 122/212/29 123/213/28
vt 0.393701 5.24106
vt 0.393701 5.64998
vt -0.393701 5.64998
vt -0.393701 5.24106
f 150/214/29 149/215/5 121/216/5 122/217/29
vt -0.393701 -0.20501
vt -0.393701 -0.613929
vt 0.393701 -0.613929
vt 0.393701 -0.20501
f 149/218/5 148/219/30 120/220/30 121/221/5
vt -0.393701 4.85894
vt -0.393701 4.45003
vt 0.393701 4.45003
vt 0.393701 4.85894
f 148/222/30 147/223/31 119/224/31 120/225/30
vt -0.393701 9.6057
vt -0.393701 9.19678
vt 0.393701 9.19678
vt 0.393701 9.6057
f 147/226/31 146/227/32 118/228/32 119/229/31
vt -0.393701 13.7118
vt -0.393701 13.3029
vt 0.393701 13.3029
vt 0.393701 13.7118
f 146/230/32 145/231/33 117/232/33 118/233/32
f 145/196/33 144/197/13 116/194/13 117/195/33
vt -0.393701 18.9453
vt -0.393701 18.5364
vn -1 1.1338e-015 -0
vt 0.393701 18.5364
vt 0.393701 18.9453
f 144/234/13 143/235/34 115/236/34 116/237/13
vt -0.393701 19.7162
vt -0.393701 19.3073
vt 0.393701 19.3073
vt 0.393701 19.7162
f 143/238/34 142/239/14 114/240/14 115/241/34
f 142/200/14 141/201/15 113/198/15 114/199/14
f 141/204/15 140/205/16 112/202/16 113/203/15
f 140/208/16 139/209/17 111/206/17 112/207/16
f 139/212/17 138/213/18 110/210/18 111/211/17
f 138/216/18 137/217/4 109/214/4 110/215/18
f 137/220/4 136/221/19 108/218/19 109/219/4
f 136/224/19 135/225/20 107/222/20 108/223/19
f 135/228/20 134/229/21 106/226/21 107/227/20
f 134/232/21 129/233/22 105/230/22 106/231/21
vn 1 -5.87897e-016 -0
f 133/240/35 132/241/25 126/238/25 127/239/35
f 130/236/23 133/237/35 127/234/35 128/235/23
usemtl Gray6
f 62/98/2 63/7/2 94/174/2
f 94/174/2 63/7/2 92/176/2
f 92/176/2 63/7/2 90/179/2
f 90/179/2 63/7/2 88/181/2
f 88/181/2 63/7/2 86/184/2
f 86/184/2 63/7/2 84/186/2
f 84/186/2 63/7/2 68/109/2
v 0.0015 0.0162 -0.0195
vt -3.93701 20.8661
f 64/44/7 153/242/7 47/39/7
v 0.0015 0.012 -0.0195
vt -3.93701 18.1102
f 64/44/7 154/243/7 153/242/7
vt -5.51181 14.9606
f 67/244/7 154/243/7 64/44/7
v -0.0015 0.012 -0.0195
vt -1.9685 18.1102
f 154/243/7 67/244/7 155/245/7
f 48/79/7 155/245/7 67/244/7
f 155/245/7 48/79/7 47/39/7
v -0.0015 0.0162 -0.0195
vt -1.9685 20.8661
f 155/245/7 47/39/7 156/246/7
f 156/246/7 47/39/7 153/242/7
usemtl Gray4
v -0.0015 0.0162 -0.0213
vt 1.9685 28.7402
vt 1.9685 27.5591
vt 3.93701 27.5591
v 0.0015 0.0162 -0.0213
vt 3.93701 28.7402
f 157/247/4 156/248/4 153/249/4 158/250/4
vt -27.5591 20.8661
vt -28.7402 20.8661
v -0.0015 0.0138 -0.0213
vt -28.7402 19.2913
vt -27.5591 18.1102
f 156/251/3 157/252/3 159/253/3 155/254/3
vt -1.9685 19.2913
v 0.0015 0.0138 -0.0213
vt -3.93701 19.2913
f 159/255/7 157/246/7 158/242/7 160/256/7
vt 27.5591 18.1102
vt 28.7402 19.2913
vt 28.7402 20.8661
vt 27.5591 20.8661
f 154/257/1 160/258/1 158/259/1 153/260/1
vt -1.9685 32.2931
vn 0 -0.707107 -0.707107
vt -1.9685 33.9634
vt -3.93701 33.9634
vt -3.93701 32.2931
f 155/261/36 159/262/36 160/263/36 154/264/36
usemtl Gray6
f 155/245/7 156/246/7 153/242/7 154/243/7
usemtl Gray4
vt -5.51181 25.5906
vt -0.393701 25.5906
vt -0.393701 27.5591
vt -5.51181 27.5591
f 66/265/5 49/266/5 48/267/5 67/268/5
usemtl Gray6
vt -5.51181 -7.51457
vn 0 0.254493 -0.967075
vt -0.393701 -7.51457
vt -0.393701 7.95542
vt -5.51181 7.95542
f 34/269/37 33/270/37 49/271/37 66/272/37
v 0.0024 0.0072 0.00335799
vt -4.52756 12.5604
vt -5.51181 17.7165
f 59/32/5 161/273/5 65/274/5
v -0.0024 0.0072 0.00335799
vt -1.37795 12.5604
f 59/32/5 162/275/5 161/273/5
f 45/33/5 162/275/5 59/32/5
vt -0.393701 17.7165
f 162/275/5 45/33/5 50/276/5
v -0.0024 0.0072 0.00155799
vt -1.37795 13.7415
f 162/275/5 50/276/5 163/277/5
f 65/274/5 163/277/5 50/276/5
v 0.0024 0.0072 0.00155799
vt -4.52756 13.7415
f 163/277/5 65/274/5 164/278/5
f 164/278/5 65/274/5 161/273/5
usemtl Gray4
vt 13.7415 14.9606
vt 12.5604 14.9606
v 0.0024 -2.81997e-017 0.00335799
vt 12.5604 10.2362
v 0.0024 -2.81997e-017 -0.00639474
vt 18.9598 10.2362
v 0.0024 0.0018 -0.00592105
vt 18.649 11.4173
v 0.0024 0.0018 0.00155799
vt 13.7415 11.4173
f 164/279/1 161/280/1 165/281/1 166/282/1 167/283/1 168/284/1
vt 4.52756 14.9606
vt 1.37795 14.9606
v -0.0024 -2.81997e-017 0.00335799
vt 1.37795 10.2362
vt 4.52756 10.2362
f 161/285/2 162/286/2 169/287/2 165/288/2
vt -12.5604 14.9606
vt -13.7415 14.9606
v -0.0024 0.0018 0.00155799
vt -13.7415 11.4173
v -0.0024 0.0018 -0.00592105
vt -18.649 11.4173
v -0.0024 -2.81997e-017 -0.00639474
vt -18.9598 10.2362
vt -12.5604 10.2362
f 162/289/3 163/290/3 170/291/3 171/292/3 172/293/3 169/294/3
vt -4.52756 14.9606
vt -4.52756 11.4173
vt -1.37795 11.4173
vt -1.37795 14.9606
f 164/295/7 168/296/7 170/297/7 163/298/7
vt 1.37795 13.7415
vt 4.52756 13.7415
vt 4.52756 18.649
vt 1.37795 18.649
f 170/299/4 168/300/4 167/301/4 171/302/4
usemtl Gray6
vt 1.37795 6.29536
vn 0 -0.254493 0.967075
vt 1.37795 5.07405
vt 4.52756 5.07405
vt 4.52756 6.29536
f 171/303/38 172/304/38 166/305/38 167/306/38
vt 0.393701 9.9593
vn -1.49111e-029 -0.254493 0.967075
f 50/307/39 172/304/39 171/303/39
vt 0.393701 -5.51068
f 36/308/39 172/304/39 50/307/39
f 172/304/39 36/308/39 166/305/39
vt 5.51181 -5.51068
f 35/309/39 166/305/39 36/308/39
vt 5.51181 9.9593
f 166/305/39 35/309/39 65/310/39
f 166/305/39 65/310/39 167/306/39
f 167/306/39 65/310/39 171/303/39
f 50/307/39 171/303/39 65/310/39
usemtl Gray4
vt -1.37795 18.9598
vt -4.52756 18.9598
f 169/275/5 172/311/5 166/312/5 165/273/5
usemtl Gray6
f 37/63/4 34/65/4 35/7/4
vt 1.42109e-014 0
vt 1.42109e-014 -1.5748
vt 5.90551 -1.5748
f 43/23/2 39/313/2 41/314/2 44/315/2
vt -5.90551 21.2598
vt -1.42109e-014 21.2598
vt -5.90551 29.9213
f 44/316/5 41/317/5 40/66/5 42/318/5

View File

@@ -0,0 +1,81 @@
fileFormatVersion: 2
guid: c1232b0a1b78ddf44bd877453fb7a84c
timeCreated: 1449962051
licenseType: Store
ModelImporter:
serializedVersion: 18
fileIDToRecycleName:
100000: Mesh1_Group2_Group1_Model
100002: Mesh2_Group3_Group1_Model
100004: //RootNode
400000: Mesh1_Group2_Group1_Model
400002: Mesh2_Group3_Group1_Model
400004: //RootNode
2300000: Mesh1_Group2_Group1_Model
2300002: Mesh2_Group3_Group1_Model
3300000: Mesh1_Group2_Group1_Model
3300002: Mesh2_Group3_Group1_Model
4300000: Mesh1_Group2_Group1_Model
4300002: Mesh2_Group3_Group1_Model
materials:
importMaterials: 1
materialName: 0
materialSearch: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
optimizeGameObjects: 0
motionNodeName:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
animationCompression: 1
animationRotationError: .5
animationPositionError: .5
animationScaleError: .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
splitTangentsAcrossUV: 1
normalImportMode: 0
tangentImportMode: 1
importAnimation: 1
copyAvatar: 0
humanDescription:
human: []
skeleton: []
armTwist: .5
foreArmTwist: .5
upperLegTwist: .5
legTwist: .5
armStretch: .0500000007
legStretch: .0500000007
feetSpacing: 0
rootMotionBoneName:
lastHumanDescriptionAvatarSource: {instanceID: 0}
animationType: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Gray4
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.666667, g: 0.666667, b: 0.666667, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 36f616b823d57714b97b12b9319c9db9
timeCreated: 1449962048
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Gray6
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.376471, g: 0.376471, b: 0.376471, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1aa329960fc39aa4490b3a9e7e965fa8
timeCreated: 1449962047
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Gray8
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.266667, g: 0.266667, b: 0.266667, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e86c377702aa20748ac223d70f899dc1
timeCreated: 1449962047
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Mesh1_Group2_Group1_ModelMat
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.8, g: 0.8, b: 0.8, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

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

View File

@@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Mesh2_Group3_Group1_ModelMat
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.8, g: 0.8, b: 0.8, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

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

View File

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

View File

@@ -0,0 +1,16 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4489d77032a81ef42b0067acf2737d4d, type: 3}
m_Name: ColliderRollback_Prefabs
m_EditorClassIdentifier:
_prefabs:
- {fileID: 8475222101369129519, guid: 8cf33e8e99a9b0c4c8f29ff725650de6, type: 3}

View File

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

View File

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

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 4385a793e032d634bb912f84a23d6db1
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,163 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4117607941181585914
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4117607941181585915}
- component: {fileID: 8475222101369129519}
- component: {fileID: 2759061792589502182}
- component: {fileID: 1348621277}
- component: {fileID: 1348621278}
- component: {fileID: 5081159371976248031}
m_Layer: 2
m_Name: Player
m_TagString: Player
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4117607941181585915
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4117607941181585914}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 2, z: -2}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &8475222101369129519
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4117607941181585914}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 26b716c41e9b56b4baafaf13a523ba2e, type: 3}
m_Name:
m_EditorClassIdentifier:
NetworkObserver: {fileID: 0}
<PrefabId>k__BackingField: 27
<SpawnableCollectionId>k__BackingField: 0
_scenePathHash: 0
<SceneId>k__BackingField: 0
<AssetPathHash>k__BackingField: 7473726319608011331
AdaptiveInterpolationValue: 4
<IsNested>k__BackingField: 0
_enablePrediction: 0
_predictionType: 0
_graphicalObject: {fileID: 0}
_enableStateForwarding: 1
_ownerInterpolation: 1
_enableTeleport: 0
_ownerTeleportThreshold: 1
_spectatorAdaptiveInterpolation: 1
_spectatorInterpolation: 1
_adaptiveSmoothingType: 0
_customSmoothingData:
InterpolationPercent: 1
CollisionInterpolationPercent: 0.1
InterpolationDecreaseStep: 1
InterpolationIncreaseStep: 3
_preconfiguredSmoothingDataPreview:
InterpolationPercent: 0.5
CollisionInterpolationPercent: 0.05
InterpolationDecreaseStep: 1
InterpolationIncreaseStep: 2
<ComponentIndex>k__BackingField: 0
<PredictedSpawn>k__BackingField: {fileID: 0}
_networkBehaviours:
- {fileID: 2759061792589502182}
- {fileID: 1348621277}
- {fileID: 1348621278}
<ParentNetworkObject>k__BackingField: {fileID: 0}
<ChildNetworkObjects>k__BackingField: []
SerializedTransformProperties:
Position: {x: 0, y: 0, z: 0}
Rotation: {x: 0, y: 0, z: 0, w: 0}
LocalScale: {x: 0, y: 0, z: 0}
_isNetworked: 1
_isGlobal: 0
_initializeOrder: 0
_defaultDespawnType: 0
--- !u!114 &2759061792589502182
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4117607941181585914}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9d3558aad46c24549bea48d0e3938264, type: 3}
m_Name:
m_EditorClassIdentifier:
_componentIndexCache: 0
_addedNetworkObject: {fileID: 8475222101369129519}
_networkObjectCache: {fileID: 8475222101369129519}
_hitboxLayer:
serializedVersion: 2
m_Bits: 32
_audio: {fileID: 8300000, guid: 0330762d2b3c8d641bfe11ad89b7e196, type: 3}
_muzzleFlashPrefab: {fileID: 39148481766341303, guid: 4385a793e032d634bb912f84a23d6db1,
type: 3}
--- !u!114 &1348621277
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4117607941181585914}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e6d656f377f37164d8d7431aa4e43cdb, type: 3}
m_Name:
m_EditorClassIdentifier:
_componentIndexCache: 1
_addedNetworkObject: {fileID: 8475222101369129519}
_networkObjectCache: {fileID: 8475222101369129519}
--- !u!114 &1348621278
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4117607941181585914}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c718ab30626bbd648952910f74780a06, type: 3}
m_Name:
m_EditorClassIdentifier:
_componentIndexCache: 2
_addedNetworkObject: {fileID: 8475222101369129519}
_networkObjectCache: {fileID: 8475222101369129519}
_moveRate: 3
--- !u!143 &5081159371976248031
CharacterController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4117607941181585914}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Height: 1.85
m_Radius: 0.5
m_SlopeLimit: 45
m_StepOffset: 0.3
m_SkinWidth: 0.08
m_MinMoveDistance: 0.001
m_Center: {x: 0, y: 0.925, z: 0}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8cf33e8e99a9b0c4c8f29ff725650de6
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &5088285619167334560
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5088285619167334572}
- component: {fileID: 5088285619167334563}
- component: {fileID: 5088285619167334562}
- component: {fileID: 7203670863068453979}
m_Layer: 0
m_Name: ClientPosition
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5088285619167334572
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5088285619167334560}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 2.04, y: 1.37, z: -3.993}
m_LocalScale: {x: 1, y: 1.85, z: 0.1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &5088285619167334563
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5088285619167334560}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &5088285619167334562
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5088285619167334560}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 997fc4a5ccc62814697fc91eb139e535, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!114 &7203670863068453979
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5088285619167334560}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3f244f524a030c6459722c6594b1e9bd, type: 3}
m_Name:
m_EditorClassIdentifier:
_delay: 3

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: ad8f5b5504b971d42886f4f6fd087d90
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &7134941405922954312
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2532797443735268486}
- component: {fileID: 5847025287746828581}
- component: {fileID: 2682424605327152458}
- component: {fileID: 6822465367542887163}
m_Layer: 0
m_Name: ServerPosition
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2532797443735268486
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7134941405922954312}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 3.85, y: 1.37, z: -3.993}
m_LocalScale: {x: 1, y: 1.85, z: 0.1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &5847025287746828581
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7134941405922954312}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &2682424605327152458
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7134941405922954312}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 14cdcc3d5d8692d469297ede7ced7ab8, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!114 &6822465367542887163
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7134941405922954312}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3f244f524a030c6459722c6594b1e9bd, type: 3}
m_Name:
m_EditorClassIdentifier:
_delay: 3

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 85cfddb33a414594490116dc8e2a91f4
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,282 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4295747174325081366
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8244491120346562302}
- component: {fileID: 5312765372148467592}
- component: {fileID: 2637820444415577480}
m_Layer: 5
m_Name: Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &8244491120346562302
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4295747174325081366}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 6334056160868253460}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &5312765372148467592
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4295747174325081366}
m_CullTransparentMesh: 0
--- !u!114 &2637820444415577480
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4295747174325081366}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 14
m_FontStyle: 0
m_BestFit: 1
m_MinSize: 14
m_MaxSize: 36
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text:
--- !u!1 &6334056159345675329
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6334056159345675354}
- component: {fileID: 6334056159345675333}
- component: {fileID: 6334056159345675332}
- component: {fileID: 6334056159345675335}
- component: {fileID: 6334056159345675334}
- component: {fileID: 1319350220}
m_Layer: 5
m_Name: TextCanvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &6334056159345675354
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056159345675329}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_Children:
- {fileID: 6334056160868253460}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!223 &6334056159345675333
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056159345675329}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 0
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_AdditionalShaderChannelsFlag: 25
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!114 &6334056159345675332
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056159345675329}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
--- !u!114 &6334056159345675335
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056159345675329}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!114 &6334056159345675334
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056159345675329}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0dc71af4e9bb144195230171a19cca9, type: 3}
m_Name:
m_EditorClassIdentifier:
_text: {fileID: 2637820444415577480}
--- !u!114 &1319350220
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056159345675329}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3f244f524a030c6459722c6594b1e9bd, type: 3}
m_Name:
m_EditorClassIdentifier:
_delay: 3
--- !u!1 &6334056160868253463
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6334056160868253460}
- component: {fileID: 6334056160868253482}
- component: {fileID: 6334056160868253461}
m_Layer: 5
m_Name: Background
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &6334056160868253460
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056160868253463}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 8244491120346562302}
m_Father: {fileID: 6334056159345675354}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: -30.1}
m_SizeDelta: {x: 0, y: 60.16568}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6334056160868253482
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056160868253463}
m_CullTransparentMesh: 0
--- !u!114 &6334056160868253461
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6334056160868253463}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0, g: 0, b: 0, a: 0.49019608}
m_RaycastTarget: 1
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a7bbd13c7452746409efbaeae6a0d8e3
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 9e30e3df1ec43184daee875457d49364
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,17 @@
using UnityEngine;
namespace FishNet.Example.ColliderRollbacks
{
public class DestroyAfterDelay : MonoBehaviour
{
[SerializeField]
private float _delay = 1f;
private void Awake()
{
Destroy(gameObject, _delay);
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 3f244f524a030c6459722c6594b1e9bd
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,67 @@
using FishNet.Object;
using UnityEngine;
namespace FishNet.Example.ColliderRollbacks
{
/// <summary>
/// DEMO. CODE IS NOT OPTIMIZED.
/// Aims the camera.
/// </summary>
public class Aim : NetworkBehaviour
{
public PlayerCamera PlayerCamera { get; private set; }
private readonly Vector3 _offset = new Vector3(0f, 1.65f, 0f);
public override void OnStartClient()
{
if (base.IsOwner)
PlayerCamera = Camera.main.transform.GetComponent<PlayerCamera>();
}
private void Update()
{
if (!base.IsOwner || PlayerCamera == null)
return;
Cursor.lockState = CursorLockMode.Locked;
Cursor.visible = false;
MoveAim();
MoveCamera();
}
/// <summary>
/// Aims camera.
/// </summary>
private void MoveAim()
{
float speed = 2f;
//Yaw.
transform.Rotate(new Vector3(0f, Input.GetAxis("Mouse X") * speed, 0f));
//Pitch.
float pitch = PlayerCamera.transform.eulerAngles.x - (Input.GetAxis("Mouse Y") * speed);
/* If not signed on X then make it
* signed for easy clamping. */
if (pitch > 180f)
pitch -= 360f;
pitch = Mathf.Clamp(pitch, -89f, 89f);
PlayerCamera.transform.eulerAngles = new Vector3(pitch, transform.eulerAngles.y, transform.eulerAngles.z);
}
/// <summary>
/// Moves camera.
/// </summary>
private void MoveCamera()
{
PlayerCamera.transform.position = transform.position + _offset;
PlayerCamera.transform.rotation = Quaternion.Euler(PlayerCamera.transform.eulerAngles.x, transform.eulerAngles.y, transform.eulerAngles.z);
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e6d656f377f37164d8d7431aa4e43cdb
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,20 @@
using FishNet.Component.ColliderRollback;
using FishNet.Managing.Timing;
using FishNet.Object;
using UnityEngine;
namespace FishNet.Example.ColliderRollbacks
{
/// <summary>
/// DEMO. CODE IS NOT OPTIMIZED.
/// Fires at objects.
/// </summary>
public class Fire : NetworkBehaviour
{
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9d3558aad46c24549bea48d0e3938264
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
using UnityEngine;
namespace FishNet.Example.ColliderRollbacks
{
/// <summary>
/// DEMO. CODE IS NOT OPTIMIZED.
/// Doesn't do much...
/// </summary>
public class PlayerCamera : MonoBehaviour
{
/// <summary>
/// MuzzleFlash on the weapon.
/// </summary>
public Transform MuzzleFlash;
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: fe0209d73083bf744ba4925f8cad7144
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,50 @@
using FishNet.Object;
using UnityEngine;
namespace FishNet.Example.ColliderRollbacks
{
/// <summary>
/// DEMO. CODE IS NOT OPTIMIZED.
/// Moves the player around.
/// </summary>
public class PlayerMotor : NetworkBehaviour
{
[SerializeField]
private float _moveRate = 3f;
private CharacterController _characterController;
public override void OnStartClient()
{
if (base.IsOwner)
_characterController = GetComponent<CharacterController>();
}
private void Update()
{
if (base.IsOwner)
{
Move();
}
}
private void Move()
{
if (_characterController == null)
return;
Vector3 gravity = new Vector3(0f, -10f, 0f);
Vector3 inputs = transform.TransformDirection(
new Vector3(Input.GetAxisRaw("Horizontal"), 0f, Input.GetAxisRaw("Vertical"))
);
_characterController.Move((gravity + inputs) * _moveRate * Time.deltaTime);
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c718ab30626bbd648952910f74780a06
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,95 @@
using FishNet.Connection;
using FishNet.Managing;
using FishNet.Managing.Timing;
using FishNet.Object;
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
namespace FishNet.Example.ColliderRollbacks
{
/// <summary>
/// DEMO. CODE IS NOT OPTIMIZED.
/// Shows where an object was when client hit it, and where it was after server rolled it back.
/// </summary>
public class RollbackVisualizer : NetworkBehaviour
{
[SerializeField]
private GameObject _originalPrefab;
[SerializeField]
private GameObject _rollbackPrefab;
[SerializeField]
private TextCanvas _textCanvasPrefab;
/// <summary>
/// Average accuracy over the past 30 shots.
/// </summary>
private List<float> _accuracyAverage = new List<float>();
private void OnDisable()
{
_accuracyAverage.Clear();
}
/// <summary>
/// Shows difference between where object was when client shot it, and where it was after rollback.
/// </summary>
/// <param name="original"></param>
/// <param name="rolledBack"></param>
[Server]
public void ShowDifference(NetworkObject clientObject, Vector3 original, Vector3 rolledBack)
{
//Only send to client if not host.
if (!base.IsHost)
{
float difference = Vector3.Distance(original, rolledBack);
PrintAverage(false, difference, base.NetworkManager);
TargetShowDifference(clientObject.Owner, original, rolledBack);
}
}
[TargetRpc]
private void TargetShowDifference(NetworkConnection conn, Vector3 original, Vector3 rollback)
{
Instantiate(_originalPrefab, original, transform.rotation);
Instantiate(_rollbackPrefab, rollback, transform.rotation);
float difference = Vector3.Distance(original, rollback);
string accuracyText = PrintAverage(true, difference, base.NetworkManager);
TextCanvas tc = Instantiate(_textCanvasPrefab);
tc.SetText(accuracyText);
}
/// <summary>
/// Prints an average accuracy, returning what was printed.
/// </summary>
/// <param name="fromServer">True if difference is received from the server.</param>
private string PrintAverage(bool fromServer, float difference, NetworkManager nm)
{
//If clientHost...
if (nm.IsHost)
{
string result = $"Accuracy will not show properly when as clientHost.{Environment.NewLine}Use a separate client and server for testing.";
Debug.Log(result);
return result;
}
else
{
_accuracyAverage.Add(difference);
if (_accuracyAverage.Count > 20)
_accuracyAverage.RemoveAt(0);
string currentHit = $"Accuracy is within {difference.ToString("0.0000")} units.";
string allHit = $"{_accuracyAverage.Count} hit average is {(_accuracyAverage.Sum() / _accuracyAverage.Count).ToString("0.0000")}.";
string result = $"{currentHit} {allHit}";
Debug.Log(result);
return result;
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 6c5d5c9fcdb14704d9c64b18dc05a809
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,29 @@
using UnityEngine;
using UnityEngine.UI;
namespace FishNet.Example.ColliderRollbacks
{
public class TextCanvas : MonoBehaviour
{
[SerializeField]
private Text _text;
private static TextCanvas _instance;
private void Awake()
{
if (_instance != null)
Destroy(_instance.gameObject);
_instance = this;
}
public void SetText(string text)
{
_text.text = text;
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: d0dc71af4e9bb144195230171a19cca9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,35 @@
using FishNet.Object;
using UnityEngine;
namespace FishNet.Example.ColliderRollbacks
{
public class Strafe : NetworkBehaviour
{
public float MoveRate = 2f;
public float MoveDistance = 3f;
private bool _movingRight = true;
private float _startX;
public override void OnStartServer()
{
_startX = transform.position.x;
}
private void Update()
{
if (base.IsServer)
{
float x = (_movingRight) ? _startX + MoveDistance : _startX - MoveDistance;
Vector3 goal = new Vector3(x, transform.position.y, transform.position.z);
transform.position = Vector3.MoveTowards(transform.position, goal, MoveRate * Time.deltaTime);
if (transform.position == goal)
_movingRight = !_movingRight;
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 088014ab71fc022458b82ed8c9792b1b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -0,0 +1,104 @@
fileFormatVersion: 2
guid: dd2a76027478bf540b7194d78248edf8
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@@ -0,0 +1,110 @@
fileFormatVersion: 2
guid: 155f67fd8750f8e4e83c8efb1731f3a0
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 7
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: 2
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

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

View File

@@ -0,0 +1,17 @@
using UnityEngine;
namespace FishNet.Example.ComponentStateSync
{
public class AMonoScript : MonoBehaviour
{
private void Start()
{
//Start is here to show enabled toggle within inspector.
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: a5821b28e5b90ef44b4910a640482c15
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,155 @@
using FishNet.Documenting;
using FishNet.Managing.Logging;
using FishNet.Object.Synchronizing;
using FishNet.Object.Synchronizing.Internal;
using FishNet.Serializing;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using UnityEngine;
namespace FishNet.Example.ComponentStateSync
{
/// <summary>
/// It's very important to exclude this from codegen.
/// However, whichever value you are synchronizing must not be excluded. This is why the value is outside the StructySync class.
/// </summary>
public class ComponentStateSync<T> : SyncBase, ICustomSync where T : MonoBehaviour
{
#region Public.
/// <summary>
/// Gets or Sets the enabled state for Component.
/// </summary>
public bool Enabled
{
get => (Component == null) ? false : GetState();
set => SetState(value);
}
/// <summary>
/// Component to state sync.
/// </summary>
public T Component { get; private set; }
/// <summary>
/// Delegate signature for when the component changes.
/// </summary>
public delegate void StateChanged(T component, bool prevState, bool nextState, bool asServer);
/// <summary>
/// Called when the component state changes.
/// </summary>
public event StateChanged OnChange;
#endregion
/// <summary>
/// Initializes this StateSync with a component.
/// </summary>
/// <param name="monoComponent"></param>
public void Initialize(T component)
{
Component = component;
}
/// <summary>
/// Sets the enabled state for Component.
/// </summary>
/// <param name="enabled"></param>
private void SetState(bool enabled)
{
if (base.NetworkManager == null)
return;
if (Component == null)
NetworkManager.LogError($"State cannot be changed as Initialize has not been called with a valid component.");
//If hasn't changed then ignore.
bool prev = GetState();
if (enabled == prev)
return;
//Set to new value and add operation.
Component.enabled = enabled;
AddOperation(Component, prev, enabled);
}
/// <summary>
/// Gets the enabled state for Component.
/// </summary>
/// <returns></returns>
private bool GetState()
{
return Component.enabled;
}
/// <summary>
/// Adds an operation to synchronize.
/// </summary>
private void AddOperation(T component, bool prev, bool next)
{
if (!base.IsRegistered)
return;
if (base.NetworkManager != null && !base.NetworkBehaviour.IsServer)
{
NetworkManager.LogWarning($"Cannot complete operation as server when server is not active.");
return;
}
base.Dirty();
//Data can currently only be set from server, so this is always asServer.
bool asServer = true;
OnChange?.Invoke(component, prev, next, asServer);
}
/// <summary>
/// Writes all changed values.
/// </summary>
///<param name="resetSyncTick">True to set the next time data may sync.</param>
public override void WriteDelta(PooledWriter writer, bool resetSyncTick = true)
{
base.WriteDelta(writer, resetSyncTick);
writer.WriteBoolean(Component.enabled);
}
/// <summary>
/// Writes all values.
/// </summary>
public override void WriteFull(PooledWriter writer)
{
/* Always write full for this custom sync type.
* It would be difficult to know if the
* state has changed given it's a boolean, and
* may or may not be true/false after pooling is added. */
WriteDelta(writer, false);
}
/// <summary>
/// Reads and sets the current values for server or client.
/// </summary>
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[APIExclude]
public override void Read(PooledReader reader, bool asServer)
{
bool nextValue = reader.ReadBoolean();
if (base.NetworkManager == null)
return;
bool prevValue = GetState();
/* When !asServer don't make changes if server is running.
* This is because changes would have already been made on
* the server side and doing so again would result in duplicates
* and potentially overwrite data not yet sent. */
bool asClientAndHost = (!asServer && base.NetworkManager.IsServer);
if (!asClientAndHost)
Component.enabled = nextValue;
OnChange?.Invoke(Component, prevValue, nextValue, asServer);
}
/// <summary>
/// Return the serialized type.
/// </summary>
/// <returns></returns>
public object GetSerializedType() => typeof(bool);
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ce7cdae4a8f3d914fa9141b4bd760faa
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,43 @@
using FishNet.Object;
using FishNet.Object.Synchronizing;
using UnityEngine;
namespace FishNet.Example.ComponentStateSync
{
public class ComponentSyncStateBehaviour : NetworkBehaviour
{
/// <summary>
/// Using my custom SyncType for Structy.
/// </summary>
[SyncObject]
private readonly ComponentStateSync<AMonoScript> _syncScript = new ComponentStateSync<AMonoScript>();
private void Awake()
{
AMonoScript ams = GetComponent<AMonoScript>();
//Initialize with the component of your choice.
_syncScript.Initialize(ams);
//Optionally listen for changes.
_syncScript.OnChange += _syncScript_OnChange;
}
/// <summary>
/// Called when enabled state changes for SyncScript.
/// </summary>
private void _syncScript_OnChange(AMonoScript component, bool prevState, bool nextState, bool asServer)
{
Debug.Log($"Change received on {component.GetType().Name}. New value is {nextState}. Received asServer {asServer}.");
}
private void Update()
{
//Every so often flip the state of the component.
if (base.IsServer && Time.frameCount % 200 == 0)
_syncScript.Enabled = !_syncScript.Enabled;
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: a7327b94eff9c7d4aa876aa54ca6b439
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

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