任务:实现基本玩法

1.策划数学模型
2.搬迁工具类如单例模式模板
3.创建玩家类,用于接受和发出指令、记录玩家信息等
4.创建马类,用来接受信息、物理计算、控制马的碰撞等模拟等
5.实装数学模型,实现马脚的控制
6.探索物理实现方式,给控制点加上碰撞体和刚体,似乎可行
--NG,分离的刚体无法作为整体传递力,脚的反作用力传不到身体上
7.把操控分组,左摇杆控制后两条腿、右摇杆控制前两条腿
8.探索物理的实现方式,尝试仅在主物体上挂载仅一个刚体,探索碰撞体组的使用方式/
((1.给马添加四个碰撞体代表马足
((2.每帧刷新碰撞体的偏移,使其对准真实马蹄位置,所以需要找准offset和世界空间下位置的对应关系
((3.如何让马前进?目前发现无法使用真实物理的反作用力,只能根据输入或其他信息算出这个反作用力
(((1.最终应该通过原速度 + 计算出输入速度,不能使用力,因为使用力涉及的参数极多,很难修改
(((2.应该通过马足真实位置计算输入速度,不能使用控制点位置
(((3.每只足应该记住自己上一帧的位置,并每帧更新
((4.本帧位置减上帧位置 = 运动速度,一个二维向量
((5.并非一直有效,当本帧马足位置低于圆心 + 调整值时,才有效,否则该足贡献的速度为0.同时,需要有输入才有效,若无输入,同样贡献速度为0
((6.NG,主要在判断速度是否有效上出了问题,试试每帧给足和地面测距,小于阈值的才给过,然后才加速度
((7.GoodJob!通过上述方法和其他细微调整,已经使得马可以行走,并且得到不错的效果。但是肯定还有问题,需要后期更进一步调整

目前马能够受到控制,并且可以走动。同样支持键盘游玩,但是体验极差
This commit is contained in:
Roman 2022-07-24 21:15:22 +08:00
parent d1d6ad1c2a
commit 718deb06d1
42 changed files with 6905 additions and 145 deletions

View File

@ -11,6 +11,16 @@ namespace AmplifyShaderEditor
{
AmplifyShaderEditorWindow.CreateConfirmationTemplateShader( "0770190933193b94aaa3065e307002fa" );
}
[MenuItem( "Assets/Create/Amplify Shader/Universal/PBR", false, 85 )]
public static void ApplyTemplateUniversalPBR()
{
AmplifyShaderEditorWindow.CreateConfirmationTemplateShader( "94348b07e5e8bab40bd6c8a1e3df54cd" );
}
[MenuItem( "Assets/Create/Amplify Shader/Universal/Unlit", false, 85 )]
public static void ApplyTemplateUniversalUnlit()
{
AmplifyShaderEditorWindow.CreateConfirmationTemplateShader( "2992e84f91cbeb14eab234972e07ea9d" );
}
[MenuItem( "Assets/Create/Amplify Shader/Legacy/Post Process", false, 85 )]
public static void ApplyTemplateLegacyPostProcess()
{
@ -51,5 +61,15 @@ namespace AmplifyShaderEditor
{
AmplifyShaderEditorWindow.CreateConfirmationTemplateShader( "ed95fe726fd7b4644bb42f4d1ddd2bcd" );
}
[MenuItem( "Assets/Create/Amplify Shader/Universal/Experimental/2D Lit", false, 85 )]
public static void ApplyTemplateUniversalExperimental2DLit()
{
AmplifyShaderEditorWindow.CreateConfirmationTemplateShader( "199187dac283dbe4a8cb1ea611d70c58" );
}
[MenuItem( "Assets/Create/Amplify Shader/Universal/Experimental/2D Unlit", false, 85 )]
public static void ApplyTemplateUniversalExperimental2DUnlit()
{
AmplifyShaderEditorWindow.CreateConfirmationTemplateShader( "cf964e524c8e69742b1d21fbe2ebcc4a" );
}
}
}

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: f076986f9dffb4f45a0b08af469b6a69
folderAsset: yes
timeCreated: 1568133090
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,398 @@
Shader /*ase_name*/ "Hidden/Universal/Experimental/2D Lit" /*end*/
{
Properties
{
/*ase_props*/
}
SubShader
{
/*ase_subshader_options:Name=Additional Options
Option:Vertex Position:Absolute,Relative:Relative
Absolute:SetDefine:ASE_ABSOLUTE_VERTEX_POS 1
Absolute:SetPortName:Sprite Lit:4,Vertex Position
Relative:RemoveDefine:ASE_ABSOLUTE_VERTEX_POS 1
Relative:SetPortName:Sprite Lit:4,Vertex Offset
*/
Tags
{
"RenderPipeline" = "UniversalPipeline"
"RenderType" = "Transparent"
"Queue" = "Transparent+0"
}
Cull Off
HLSLINCLUDE
#pragma target 2.0
#pragma prefer_hlslcc gles
#pragma exclude_renderers d3d11_9x
ENDHLSL
/*ase_pass*/
Pass
{
Name "Sprite Lit"
Tags { "LightMode" = "Universal2D" }
Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
ZTest LEqual
ZWrite Off
Offset 0,0
ColorMask RGBA
/*ase_stencil*/
HLSLPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma multi_compile _ ETC1_EXTERNAL_ALPHA
#pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_0
#pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_1
#pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_2
#pragma multi_compile _ USE_SHAPE_LIGHT_TYPE_3
#define _SURFACE_TYPE_TRANSPARENT 1
#define SHADERPASS_SPRITELIT
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
#include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/LightingUtility.hlsl"
#if USE_SHAPE_LIGHT_TYPE_0
SHAPE_LIGHT(0)
#endif
#if USE_SHAPE_LIGHT_TYPE_1
SHAPE_LIGHT(1)
#endif
#if USE_SHAPE_LIGHT_TYPE_2
SHAPE_LIGHT(2)
#endif
#if USE_SHAPE_LIGHT_TYPE_3
SHAPE_LIGHT(3)
#endif
#include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/CombinedShapeLightShared.hlsl"
/*ase_pragma*/
/*ase_globals*/
struct VertexInput
{
float4 vertex : POSITION;
float3 normal : NORMAL;
float4 tangent : TANGENT;
float4 uv0 : TEXCOORD0;
float4 color : COLOR;
/*ase_vdata:p=p;n=n;t=t;c=c;uv0=tc0*/
UNITY_VERTEX_INPUT_INSTANCE_ID
};
struct VertexOutput
{
float4 clipPos : SV_POSITION;
float4 texCoord0 : TEXCOORD0;
float4 color : TEXCOORD1;
float4 screenPosition : TEXCOORD2;
/*ase_interp(3,):sp=sp;uv0=tc0;*/
UNITY_VERTEX_INPUT_INSTANCE_ID
UNITY_VERTEX_OUTPUT_STEREO
};
#if ETC1_EXTERNAL_ALPHA
TEXTURE2D(_AlphaTex); SAMPLER(sampler_AlphaTex);
float _EnableAlphaTexture;
#endif
/*ase_funcs*/
VertexOutput vert ( VertexInput v /*ase_vert_input*/ )
{
VertexOutput o = (VertexOutput)0;
UNITY_SETUP_INSTANCE_ID(v);
UNITY_TRANSFER_INSTANCE_ID(v, o);
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
/*ase_vert_code:v=VertexInput;o=VertexOutput*/
#ifdef ASE_ABSOLUTE_VERTEX_POS
float3 defaultVertexValue = v.vertex.xyz;
#else
float3 defaultVertexValue = float3(0, 0, 0);
#endif
float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;4;-1;_Vertex*/defaultVertexValue/*end*/;
#ifdef ASE_ABSOLUTE_VERTEX_POS
v.vertex.xyz = vertexValue;
#else
v.vertex.xyz += vertexValue;
#endif
v.normal = /*ase_vert_out:Vertex Normal;Float3;5;-1;_VNormal*/v.normal/*end*/;
v.tangent.xyz = /*ase_vert_out:Vertex Tangent;Float3;6;-1;_VTangent*/v.tangent.xyz/*end*/;
VertexPositionInputs vertexInput = GetVertexPositionInputs(v.vertex.xyz);
o.texCoord0 = v.uv0;
o.color = v.color;
o.clipPos = vertexInput.positionCS;
o.screenPosition = ComputeScreenPos( o.clipPos, _ProjectionParams.x );
return o;
}
half4 frag ( VertexOutput IN /*ase_frag_input*/ ) : SV_Target
{
UNITY_SETUP_INSTANCE_ID( IN );
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( IN );
/*ase_frag_code:IN=VertexOutput*/
float4 Color = /*ase_frag_out:Color;Float4;1;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
float Mask = /*ase_frag_out:Mask;Float;2;-1;_Mask*/1/*end*/;
float3 Normal = /*ase_frag_out:Normal;Float3;3;-1;_Normal*/float3( 0, 0, 1 )/*end*/;
#if ETC1_EXTERNAL_ALPHA
float4 alpha = SAMPLE_TEXTURE2D(_AlphaTex, sampler_AlphaTex, IN.texCoord0.xy);
Color.a = lerp ( Color.a, alpha.r, _EnableAlphaTexture);
#endif
Color *= IN.color;
return CombinedShapeLightShared( Color, Mask, IN.screenPosition.xy / IN.screenPosition.w );
}
ENDHLSL
}
/*ase_pass*/
Pass
{
/*ase_hide_pass:SyncP*/
Name "Sprite Normal"
Tags { "LightMode" = "NormalsRendering" }
Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
ZTest LEqual
ZWrite Off
Offset 0,0
ColorMask RGBA
/*ase_stencil*/
HLSLPROGRAM
#pragma vertex vert
#pragma fragment frag
#define _SURFACE_TYPE_TRANSPARENT 1
#define SHADERPASS_SPRITENORMAL
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
#include "Packages/com.unity.render-pipelines.universal/Shaders/2D/Include/NormalsRenderingShared.hlsl"
/*ase_pragma*/
/*ase_globals*/
struct VertexInput
{
float4 vertex : POSITION;
float3 normal : NORMAL;
float4 tangent : TANGENT;
float4 uv0 : TEXCOORD0;
float4 color : COLOR;
/*ase_vdata:p=p;n=n;t=t;c=c;uv0=tc0*/
UNITY_VERTEX_INPUT_INSTANCE_ID
};
struct VertexOutput
{
float4 clipPos : SV_POSITION;
float4 texCoord0 : TEXCOORD0;
float4 color : TEXCOORD1;
float3 normalWS : TEXCOORD2;
float4 tangentWS : TEXCOORD3;
float3 bitangentWS : TEXCOORD4;
/*ase_interp(5,):sp=sp;uv0=tc0;c=tc1;wn=tc2;wt=tc3;wbt=tc4*/
UNITY_VERTEX_INPUT_INSTANCE_ID
UNITY_VERTEX_OUTPUT_STEREO
};
/*ase_funcs*/
VertexOutput vert ( VertexInput v /*ase_vert_input*/ )
{
VertexOutput o = (VertexOutput)0;
UNITY_SETUP_INSTANCE_ID(v);
UNITY_TRANSFER_INSTANCE_ID(v, o);
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
/*ase_vert_code:v=VertexInput;o=VertexOutput*/
#ifdef ASE_ABSOLUTE_VERTEX_POS
float3 defaultVertexValue = v.vertex.xyz;
#else
float3 defaultVertexValue = float3(0, 0, 0);
#endif
float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;3;-1;_Vertex*/defaultVertexValue/*end*/;
#ifdef ASE_ABSOLUTE_VERTEX_POS
v.vertex.xyz = vertexValue;
#else
v.vertex.xyz += vertexValue;
#endif
v.normal = /*ase_vert_out:Vertex Normal;Float3;4;-1;_VNormal*/v.normal/*end*/;
v.tangent.xyz = /*ase_vert_out:Vertex Tangent;Float3;5;-1;_VTangent*/v.tangent.xyz/*end*/;
VertexPositionInputs vertexInput = GetVertexPositionInputs(v.vertex.xyz);
o.texCoord0 = v.uv0;
o.color = v.color;
o.clipPos = vertexInput.positionCS;
float3 normalWS = TransformObjectToWorldNormal( v.normal );
o.normalWS = NormalizeNormalPerVertex( normalWS );
float4 tangentWS = float4( TransformObjectToWorldDir( v.tangent.xyz ), v.tangent.w );
o.tangentWS = normalize( tangentWS );
o.bitangentWS = cross( normalWS, tangentWS.xyz ) * tangentWS.w;
return o;
}
half4 frag ( VertexOutput IN /*ase_frag_input*/ ) : SV_Target
{
UNITY_SETUP_INSTANCE_ID( IN );
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( IN );
/*ase_frag_code:IN=VertexOutput*/
float4 Color = /*ase_frag_out:Color;Float4;1;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
float3 Normal = /*ase_frag_out:Normal;Float3;2;-1;_Normal*/float3( 0, 0, 1 )/*end*/;
Color *= IN.color;
return NormalsRenderingShared( Color, Normal, IN.tangentWS.xyz, IN.bitangentWS, IN.normalWS);
}
ENDHLSL
}
/*ase_pass*/
Pass
{
/*ase_hide_pass:SyncP*/
Name "Sprite Forward"
Tags { "LightMode" = "UniversalForward" }
Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
ZTest LEqual
ZWrite Off
Offset 0,0
ColorMask RGBA
/*ase_stencil*/
HLSLPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma multi_compile _ ETC1_EXTERNAL_ALPHA
#define _SURFACE_TYPE_TRANSPARENT 1
#define SHADERPASS_SPRITEFORWARD
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
/*ase_pragma*/
/*ase_globals*/
struct VertexInput
{
float4 vertex : POSITION;
float3 normal : NORMAL;
float4 tangent : TANGENT;
float4 uv0 : TEXCOORD0;
float4 color : COLOR;
/*ase_vdata:p=p;n=n;t=t;c=c;uv0=tc0*/
UNITY_VERTEX_INPUT_INSTANCE_ID
};
struct VertexOutput
{
float4 clipPos : SV_POSITION;
float4 texCoord0 : TEXCOORD0;
float4 color : TEXCOORD1;
/*ase_interp(2,):sp=sp;uv0=tc0;c=tc1*/
UNITY_VERTEX_INPUT_INSTANCE_ID
UNITY_VERTEX_OUTPUT_STEREO
};
#if ETC1_EXTERNAL_ALPHA
TEXTURE2D( _AlphaTex ); SAMPLER( sampler_AlphaTex );
float _EnableAlphaTexture;
#endif
/*ase_funcs*/
VertexOutput vert( VertexInput v /*ase_vert_input*/ )
{
VertexOutput o = (VertexOutput)0;
UNITY_SETUP_INSTANCE_ID( v );
UNITY_TRANSFER_INSTANCE_ID( v, o );
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o );
/*ase_vert_code:v=VertexInput;o=VertexOutput*/
#ifdef ASE_ABSOLUTE_VERTEX_POS
float3 defaultVertexValue = v.vertex.xyz;
#else
float3 defaultVertexValue = float3( 0, 0, 0 );
#endif
float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;3;-1;_Vertex*/defaultVertexValue/*end*/;
#ifdef ASE_ABSOLUTE_VERTEX_POS
v.vertex.xyz = vertexValue;
#else
v.vertex.xyz += vertexValue;
#endif
v.normal = /*ase_vert_out:Vertex Normal;Float3;4;-1;_VNormal*/v.normal/*end*/;
VertexPositionInputs vertexInput = GetVertexPositionInputs( v.vertex.xyz );
o.texCoord0 = v.uv0;
o.color = v.color;
o.clipPos = vertexInput.positionCS;
return o;
}
half4 frag( VertexOutput IN /*ase_frag_input*/ ) : SV_Target
{
UNITY_SETUP_INSTANCE_ID( IN );
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( IN );
/*ase_frag_code:IN=VertexOutput*/
float4 Color = /*ase_frag_out:Color;Float4;1;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
#if ETC1_EXTERNAL_ALPHA
float4 alpha = SAMPLE_TEXTURE2D( _AlphaTex, sampler_AlphaTex, IN.texCoord0.xy );
Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture );
#endif
Color *= IN.color;
return Color;
}
ENDHLSL
}
/*ase_pass_end*/
}
CustomEditor "UnityEditor.ShaderGraph.PBRMasterGUI"
FallBack "Hidden/InternalErrorShader"
}

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 199187dac283dbe4a8cb1ea611d70c58
timeCreated: 1568647145
licenseType: Pro
ShaderImporter:
defaultTextures: []
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,149 @@
Shader /*ase_name*/ "Hidden/Universal/Experimental/2D Unlit" /*end*/
{
Properties
{
/*ase_props*/
}
SubShader
{
/*ase_subshader_options:Name=Additional Options
Option:Vertex Position:Absolute,Relative:Relative
Absolute:SetDefine:ASE_ABSOLUTE_VERTEX_POS 1
Absolute:SetPortName:Unlit:3,Vertex Position
Relative:RemoveDefine:ASE_ABSOLUTE_VERTEX_POS 1
Relative:SetPortName:Unlit:3,Vertex Offset
*/
Tags
{
"RenderPipeline" = "UniversalPipeline"
"RenderType" = "Transparent"
"Queue" = "Transparent+0"
}
Cull Off
HLSLINCLUDE
#pragma target 2.0
#pragma prefer_hlslcc gles
#pragma exclude_renderers d3d11_9x
ENDHLSL
/*ase_pass*/
Pass
{
Name "Unlit"
Tags { }
Blend SrcAlpha OneMinusSrcAlpha, One OneMinusSrcAlpha
ZTest LEqual
ZWrite Off
Offset 0,0
ColorMask RGBA
/*ase_stencil*/
HLSLPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma multi_compile _ ETC1_EXTERNAL_ALPHA
#define _SURFACE_TYPE_TRANSPARENT 1
#define SHADERPASS_SPRITEUNLIT
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Color.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ShaderGraphFunctions.hlsl"
/*ase_pragma*/
/*ase_globals*/
struct VertexInput
{
float4 vertex : POSITION;
float3 normal : NORMAL;
float4 tangent : TANGENT;
float4 uv0 : TEXCOORD0;
float4 color : COLOR;
/*ase_vdata:p=p;n=n;t=t;c=c;uv0=tc0*/
UNITY_VERTEX_INPUT_INSTANCE_ID
};
struct VertexOutput
{
float4 clipPos : SV_POSITION;
float4 texCoord0 : TEXCOORD0;
float4 color : TEXCOORD1;
/*ase_interp(2,):sp=sp;uv0=tc0;c=tc1*/
UNITY_VERTEX_INPUT_INSTANCE_ID
UNITY_VERTEX_OUTPUT_STEREO
};
#if ETC1_EXTERNAL_ALPHA
TEXTURE2D( _AlphaTex ); SAMPLER( sampler_AlphaTex );
float _EnableAlphaTexture;
#endif
float4 _RendererColor;
/*ase_funcs*/
VertexOutput vert( VertexInput v /*ase_vert_input*/ )
{
VertexOutput o = (VertexOutput)0;
UNITY_SETUP_INSTANCE_ID( v );
UNITY_TRANSFER_INSTANCE_ID( v, o );
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o );
/*ase_vert_code:v=VertexInput;o=VertexOutput*/
#ifdef ASE_ABSOLUTE_VERTEX_POS
float3 defaultVertexValue = v.vertex.xyz;
#else
float3 defaultVertexValue = float3( 0, 0, 0 );
#endif
float3 vertexValue = /*ase_vert_out:Vertex Offset;Float3;3;-1;_Vertex*/defaultVertexValue/*end*/;
#ifdef ASE_ABSOLUTE_VERTEX_POS
v.vertex.xyz = vertexValue;
#else
v.vertex.xyz += vertexValue;
#endif
v.normal = /*ase_vert_out:Vertex Normal;Float3;4;-1;_VNormal*/v.normal/*end*/;
VertexPositionInputs vertexInput = GetVertexPositionInputs( v.vertex.xyz );
o.texCoord0 = v.uv0;
o.color = v.color;
o.clipPos = vertexInput.positionCS;
return o;
}
half4 frag( VertexOutput IN /*ase_frag_input*/ ) : SV_Target
{
UNITY_SETUP_INSTANCE_ID( IN );
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX( IN );
/*ase_frag_code:IN=VertexOutput*/
float4 Color = /*ase_frag_out:Color;Float4;1;-1;_Color*/float4( 1, 1, 1, 1 )/*end*/;
#if ETC1_EXTERNAL_ALPHA
float4 alpha = SAMPLE_TEXTURE2D( _AlphaTex, sampler_AlphaTex, IN.texCoord0.xy );
Color.a = lerp( Color.a, alpha.r, _EnableAlphaTexture );
#endif
Color *= IN.color;
return Color;
}
ENDHLSL
}
}
CustomEditor "UnityEditor.ShaderGraph.PBRMasterGUI"
FallBack "Hidden/InternalErrorShader"
}

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: cf964e524c8e69742b1d21fbe2ebcc4a
timeCreated: 1568647145
licenseType: Pro
ShaderImporter:
defaultTextures: []
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 94348b07e5e8bab40bd6c8a1e3df54cd
timeCreated: 1520620337
licenseType: Pro
ShaderImporter:
defaultTextures: []
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 2992e84f91cbeb14eab234972e07ea9d
timeCreated: 1568647145
licenseType: Pro
ShaderImporter:
defaultTextures: []
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

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

View File

@ -0,0 +1,22 @@
%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: 1549551891, guid: 74721b9f0af448f5ae2e91102a1a5edd, type: 3}
m_Name: GlobalSerializationConfig
m_EditorClassIdentifier:
HideSerializationCautionaryMessage: 0
HidePrefabCautionaryMessage: 0
HideOdinSerializeAttributeWarningMessages: 0
HideNonSerializedShowInInspectorWarningMessages: 0
buildSerializationFormat: 0
editorSerializationFormat: 2
loggingPolicy: 0
errorHandlingPolicy: 0

View File

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

View File

@ -351,6 +351,117 @@ Transform:
m_Father: {fileID: 0}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &875897228
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 875897230}
- component: {fileID: 875897229}
- component: {fileID: 875897231}
m_Layer: 0
m_Name: "\u5730\u9762"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!212 &875897229
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 875897228}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 0.16, y: 0.16}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!4 &875897230
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 875897228}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -1.6316276, y: -8.9, z: 0.0047016297}
m_LocalScale: {x: 1262.29, y: 54.69, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!61 &875897231
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 875897228}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 6200000, guid: 9e9f5f349c879c743ab379aec70d005a, type: 2}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 0
m_Offset: {x: 0, y: 0}
m_SpriteTilingProperty:
border: {x: 0.049999997, y: 0.049999997, z: 0.049999997, w: 0.049999997}
pivot: {x: 0.5, y: 0.5}
oldSize: {x: 0.16, y: 0.16}
newSize: {x: 0.16, y: 0.16}
adaptiveTilingThreshold: 0.5
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.16, y: 0.16}
m_EdgeRadius: 0
--- !u!1001 &1084903714
PrefabInstance:
m_ObjectHideFlags: 0
@ -358,21 +469,77 @@ PrefabInstance:
m_Modification:
m_TransformParent: {fileID: 1555915082}
m_Modifications:
- target: {fileID: 7821055, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.6605224
objectReference: {fileID: 0}
- target: {fileID: 7821055, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: 0.75080633
objectReference: {fileID: 0}
- target: {fileID: 106631853, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Size.x
value: 0.1
objectReference: {fileID: 0}
- target: {fileID: 106631853, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Size.y
value: 0.1
objectReference: {fileID: 0}
- target: {fileID: 213903470, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Size.x
value: 0.1
objectReference: {fileID: 0}
- target: {fileID: 213903470, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Size.y
value: 0.1
objectReference: {fileID: 0}
- target: {fileID: 448642193, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Size.x
value: 0.1
objectReference: {fileID: 0}
- target: {fileID: 448642193, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Size.y
value: 0.1
objectReference: {fileID: 0}
- target: {fileID: 566743904, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalPosition.x
value: 2.4512196
objectReference: {fileID: 0}
- target: {fileID: 566743904, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalPosition.y
value: 0.15380377
objectReference: {fileID: 0}
- target: {fileID: 685472166, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.98932326
objectReference: {fileID: 0}
- target: {fileID: 685472166, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: 0.14573832
objectReference: {fileID: 0}
- target: {fileID: 719707977, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Size.x
value: 0.1
objectReference: {fileID: 0}
- target: {fileID: 719707977, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Size.y
value: 0.1
objectReference: {fileID: 0}
- target: {fileID: 951836818, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.99922603
value: 0.70312786
objectReference: {fileID: 0}
- target: {fileID: 951836818, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: 0.03933591
value: 0.7110635
objectReference: {fileID: 0}
- target: {fileID: 2110753430, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalPosition.x
value: 2.3447857
- target: {fileID: 1084903726, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Mass
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2110753430, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalPosition.y
value: -0.13307858
- target: {fileID: 1084903726, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Constraints
value: 0
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_RootOrder
@ -380,15 +547,15 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalPosition.x
value: -2.12
value: 16.6
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalPosition.y
value: -4.61
value: 0.54
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalPosition.z
value: -1.0228372
value: 0
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
@ -396,15 +563,15 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.x
value: -0
value: 0
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.y
value: -0
value: 0
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: -0
value: 0
objectReference: {fileID: 0}
- target: {fileID: 50099845796739461, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@ -418,25 +585,109 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 553410378564238167, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.7951422
objectReference: {fileID: 0}
- target: {fileID: 553410378564238167, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: -0.6064231
objectReference: {fileID: 0}
- target: {fileID: 758927187003403290, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.87740093
objectReference: {fileID: 0}
- target: {fileID: 758927187003403290, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: 0.47975802
objectReference: {fileID: 0}
- target: {fileID: 3283039325717014954, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.12258211
objectReference: {fileID: 0}
- target: {fileID: 3283039325717014954, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: -0.99245846
objectReference: {fileID: 0}
- target: {fileID: 3283039325717014954, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 554.08203
objectReference: {fileID: 0}
- target: {fileID: 3613839984805260814, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.9690672
objectReference: {fileID: 0}
- target: {fileID: 3613839984805260814, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: -0.24679716
objectReference: {fileID: 0}
- target: {fileID: 4308434985386491136, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_AutoRebind
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4308434985386491136, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Bounds.m_Center.x
value: -0.61232305
objectReference: {fileID: 0}
- target: {fileID: 4308434985386491136, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Bounds.m_Center.y
value: -1.36059
objectReference: {fileID: 0}
- target: {fileID: 5709595267743773255, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.7260015
value: 0.6955986
objectReference: {fileID: 0}
- target: {fileID: 5709595267743773255, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: -0.6876931
value: -0.7184307
objectReference: {fileID: 0}
- target: {fileID: 7553923325119000229, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.8226019
objectReference: {fileID: 0}
- target: {fileID: 7553923325119000229, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: -0.56861776
objectReference: {fileID: 0}
- target: {fileID: 8522599996288171628, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.w
value: 0.99998426
value: 0.9999842
objectReference: {fileID: 0}
- target: {fileID: 8522599996288171628, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_LocalRotation.z
value: 0.0056176935
value: 0.0056177806
objectReference: {fileID: 0}
- target: {fileID: 8721403442329396673, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: strength
value: 5
objectReference: {fileID: 0}
- target: {fileID: 8721403442329396673, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: footForce
value: 5
objectReference: {fileID: 0}
- target: {fileID: 8721403442329396673, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: effectiveDistance
value: 0.25
objectReference: {fileID: 0}
- target: {fileID: 8721403442329396673, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: footOffestOfInput.Array.data[2].x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8721403442329396673, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: footOffestOfInput.Array.data[2].y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8721403442329396673, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: footOffestOfInput.Array.data[3].x
value: -2
objectReference: {fileID: 0}
- target: {fileID: 8721403442329396673, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: footOffestOfInput.Array.data[3].y
value: -2
objectReference: {fileID: 0}
- target: {fileID: 8765724049729688277, guid: c63483674e2db904197c6beaca347645, type: 3}
propertyPath: m_Name
value: "\u9A6C\u554A"
value: "\u9A6C"
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: c63483674e2db904197c6beaca347645, type: 3}
@ -454,8 +705,9 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 1555915082}
- component: {fileID: 1555915083}
m_Layer: 0
m_Name: "\u9A6C"
m_Name: "\u73A9\u5BB6"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -469,7 +721,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1555915081}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.7172437, y: 0.7393208, z: 1.0228372}
m_LocalPosition: {x: -11.3, y: -3.79, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
@ -477,3 +729,15 @@ Transform:
m_Father: {fileID: 0}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1555915083
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1555915081}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 433c80cc795427f43a06e42eab98aa3f, type: 3}
m_Name:
m_EditorClassIdentifier:

View File

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

View File

@ -0,0 +1,11 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!62 &6200000
PhysicsMaterial2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u5149\u6ED1"
friction: 0
bounciness: 0

View File

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

View File

@ -0,0 +1,11 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!62 &6200000
PhysicsMaterial2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u5730\u9762"
friction: 1
bounciness: 0

View File

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

View File

@ -0,0 +1,11 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!62 &6200000
PhysicsMaterial2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u9A6C\u811A"
friction: 1
bounciness: 0

View File

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

8
Assets/勍/脚本.meta Normal file
View File

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

396
Assets/勍/脚本/Horse.cs Normal file
View File

@ -0,0 +1,396 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
/// <summary>
/// 马类,用于接受来自玩家的指令、进行物理模拟
/// </summary>
public class Horse : MonoBehaviour
{
// _____ _ _ _
// | __ \ | | | (_)
// | |__) | _| |__ | |_ ___
// | ___/ | | | '_ \| | |/ __|
// | | | |_| | |_) | | | (__
// |_| \__,_|_.__/|_|_|\___|
/// <summary>
/// 马的前腿根部
/// </summary>
[BoxGroup("必须绑定的物体")][Header("马的前腿根部")]
public Transform frontLegRoot;
/// <summary>
/// 马的后腿根部
/// </summary>
[BoxGroup("必须绑定的物体")][Header("马的后腿根部")]
public Transform backLegRoot;
/// <summary>
/// 马伸直腿后前脚底部
/// </summary>
[BoxGroup("必须绑定的物体")][Header("马前脚伸直后的最深位置")]
public Transform frontFoot;
/// <summary>
/// 马伸直腿后后脚底部
/// </summary>
[BoxGroup("必须绑定的物体")][Header("马后脚伸直后的最深位置")]
public Transform backFoot;
/// <summary>
/// 马脚Transform
/// </summary>
[BoxGroup("必须绑定的物体")][Header("马脚Transform必须按照左前、右前、左后、右后的顺序绑定")]
public Transform[] footsTransform;
/// <summary>
/// 腿做圆周运动的半径
/// </summary>
[BoxGroup("马的基本运动信息")][Header("马脚圆周运动半径")]
public float footMoveRadius;
/// <summary>
/// 四条腿分别对输入偏差多少
/// </summary>
[ListDrawerSettings] [BoxGroup("马的基本运动信息")][Header("四条腿分别对输入偏差多少")]
public Vector2[] footOffestOfInput;
/// <summary>
/// 马足力量
/// </summary>
[BoxGroup("马的基本运动信息")][Header("马足力量")]
public float footForce;
/// <summary>
/// 马蹄推动马身的力度调整值
/// </summary>
[BoxGroup("马的基本运动信息")][Header("马前进的力度")]
public float strength;
/// <summary>
/// 马蹄供力有效范围
/// </summary>
[BoxGroup("马的基本运动信息")][Header("马蹄供力有效范围")]
public float effectiveDistance;
// _____ _ _
// | __ \ (_) | |
// | |__) | __ ___ ____ _| |_ ___
// | ___/ '__| \ \ / / _` | __/ _ \
// | | | | | |\ V / (_| | || __/
// |_| |_| |_| \_/ \__,_|\__\___|
struct foot
{
/// <summary>
/// 腿对输入偏差多少
/// </summary>
public Vector2 footOffestOfInput;
/// <summary>
/// 马脚控制点通过transform找到
/// </summary>
public Transform footControlPoint;
/// <summary>
/// 真实的马脚的Transform
/// </summary>
public Transform footRealTransform;
/// <summary>
/// 马脚此时目标位置,每帧计算
/// </summary>
public Vector3 footTargetPosition;
/// <summary>
/// 马蹄刚体组件
/// </summary>
public Rigidbody2D footRigidbody2D;
/// <summary>
/// 马蹄的碰撞体,但是不绑在马蹄上,而是为了物理计算绑在马身上
/// </summary>
public BoxCollider2D footBoxCollider2D;
/// <summary>
/// 马蹄前一帧的位置
/// </summary>
public Vector3 footPreviousPosition;
}
private foot[] foots;
/// <summary>
/// 马前腿长度
/// </summary>
private float frontLegLength;
/// <summary>
/// 马后腿长度
/// </summary>
private float backLegLength;
/// <summary>
/// 从前腿根骨骼到马脚运动圆心的距离,用来推算最终马脚位置
/// </summary>
private float frontRootDistanceToCenterOfCircle;
/// <summary>
/// 从后腿根骨骼到马脚运动圆心的距离,用来推算最终马脚位置
/// </summary>
private float backRootDistanceToCenterOfCircle;
/// <summary>
/// 输入的马前脚信息
/// </summary>
private Vector2 inputFrontVector;
/// <summary>
/// 输入的马后脚信息
/// </summary>
private Vector2 inputBackVector;
/// <summary>
/// 原重力尺度在Start中通过随意一条腿的刚体获取
/// </summary>
private float oriGravityScale;
/// <summary>
/// 马蹄碰撞体数组
/// </summary>
private BoxCollider2D[] footBoxColliders;
/// <summary>
/// 马的刚体组件
/// </summary>
private Rigidbody2D horseRig;
void Start()
{
//初始化
Init();
//找到必要的物体和组件
FindSth();
//计算必要的量
CaculateSth();
}
void Update()
{
//计算马脚目标位置
CaculateTargetPosition();
//让马脚朝着目标移动
MoveFoot();
//让马整体运动
MoveHorse();
//更新一些数据
UpdateData();
}
/// <summary>
/// 移动马身体
/// </summary>
private void MoveHorse()
{
Vector2 v = new Vector2();
for(int i = 0; i < 4; i++)
{
//仅在有输入的情况下,会考虑给速度
//看此时该脚是否有输入
bool hasInput = i < 2 ? inputFrontVector.magnitude > 0.1f : inputBackVector.magnitude > 0.1f;
if(!hasInput) continue;
//从足底向正下方发射射线,获取碰撞到的物体
RaycastHit2D hit = Physics2D.Raycast(
foots[i].footRealTransform.position,
Vector2.down,
1000f,
LayerMask.NameToLayer("foot")
);
//如果击中物体的距离已经超过了有效范围,则不贡献速度
if(hit.distance > effectiveDistance) continue;
//判断本帧中,马足位置是否低于圆心+调整值,仅低于时,需要计算影响
//根位置
Vector3 rootPosition = i < 2 ? frontLegRoot.position : backLegRoot.position;
//L
float L = i < 2 ? frontLegLength : backLegLength;
//圆心y坐标
float centerY = L - footMoveRadius;
centerY += effectiveDistance;
//仅低于时,需要计算影响
if(foots[i].footRealTransform.position.y >= centerY) continue;
//本帧位置减上帧位置
Vector3 trans = foots[i].footRealTransform.position - foots[i].footPreviousPosition;
Vector2 v_ = trans;
//把本足的影响加到速度中
v += v_;
}
//给速度乘以力量,得到最终理论速度
v *= strength;
//取反,因为是模拟反作用力
v*=-1;
//减弱y轴的影响不要让马在平地上起飞
v *= new Vector2(1,0.2f);
Debug.Log(v);
//如果模长超过5那必是触发了什么逆天Bug会导致马起飞需要避免这些错误
if(v.magnitude > 10f) v = Vector2.zero;
//把速度加给马的刚体
horseRig.velocity += v;
}
private void UpdateData()
{
//更新四足的上帧位置
for(int i = 0; i < 4; i++)
foots[i].footPreviousPosition = foots[i].footRealTransform.position;
}
void Init()
{
foots = new foot[4];
footBoxColliders = new BoxCollider2D[4];
for(int i = 0; i < 4; i++) foots[i].footPreviousPosition = transform.position;
}
void FindSth()
{
//把四只脚的目标点找到0左前 1右前 2左后 3右后
foots[0].footControlPoint = transform.Find("左前脚").GetChild(0);
foots[1].footControlPoint = transform.Find("右前脚").GetChild(0);
foots[2].footControlPoint = transform.Find("左后脚").GetChild(0);
foots[3].footControlPoint = transform.Find("右后脚").GetChild(0);
//同步四只脚的输入偏差
for (int i = 0; i < 4; i++) foots[i].footOffestOfInput = footOffestOfInput[i];
//找到马蹄刚体组件
for(int i = 0; i < 4; i++) foots[i].footRigidbody2D = foots[i].footControlPoint.GetComponent<Rigidbody2D>();
//找到马蹄的真实Transform
for(int i = 0; i < 4; i++) foots[i].footRealTransform = footsTransform[i];
//找到马蹄的碰撞体
footBoxColliders = GetComponents<BoxCollider2D>();
//给foots的碰撞体赋值
for (int i = 0; i < 4; i++)
{
foots[i].footBoxCollider2D = footBoxColliders[i];
footBoxColliders[i].offset = foots[i].footControlPoint.localPosition ;
}
//找到马的刚体
horseRig = GetComponent<Rigidbody2D>();
}
/// <summary>
/// 计算一些不会变的必要的量
/// </summary>
void CaculateSth()
{
//计算前后腿马腿长度
frontLegLength = Vector3.Distance(frontLegRoot.position, frontFoot.position);
backLegLength = Vector3.Distance(backLegRoot.position, backFoot.position);
//计算从腿根骨骼到马脚运动圆心的距离
frontRootDistanceToCenterOfCircle = frontLegLength - footMoveRadius;
backRootDistanceToCenterOfCircle = backLegLength - footMoveRadius;
//取得原始重力尺度
oriGravityScale = foots[0].footRigidbody2D.gravityScale;
}
/// <summary>
/// 根据记录的输入向量计算马脚本帧的目标位置保存到footTargetPoints数组中
/// </summary>
private void CaculateTargetPosition()
{
//循环4次
for(int i = 0; i < 4; i++)
{
//整体公式为Target = 根位置 - V0L - r + inputdir * offest * r
//根位置
Vector3 rootPosition = i < 2 ? frontLegRoot.position : backLegRoot.position;
//L
float L = i < 2 ? frontLegLength : backLegLength;
//中间向量
Vector3 middleVector = new Vector3(0,L - footMoveRadius,0);
//inputdir
Vector2 inputVector = i < 2 ? inputFrontVector : inputBackVector;
//inputTrans
Vector3 inputTrans = new Vector3
(
inputVector.x * ( footOffestOfInput[i].x + 1),
inputVector.y * ( footOffestOfInput[i].y + 1),
0
)
* footMoveRadius;
//最终计算
//footTargetPoints[i] = rootPosition - middleVector + inputTrans;
foots[i].footTargetPosition = rootPosition - middleVector + inputTrans;
}
}
/// <summary>
/// 把马脚朝着算好的目标点移动
/// </summary>
private void MoveFoot()
{
//循环4次
for(int i = 0; i < 4; i++)
{
//看此时该脚是否有输入
bool hasInput = i < 2 ? inputFrontVector.magnitude > 0.1f : inputBackVector.magnitude > 0.1f;
//如果有输入,则把马脚朝着目标移动
// if(hasInput)
if(true)
{
//若无输入,则把目标定在可以使马腿伸直的地方
Vector3 targetPosition = hasInput ?
foots[i].footTargetPosition :
foots[i].footTargetPosition - new Vector3(0,footMoveRadius + 0.5f,0);
//给刚体以target位置-自身位置作为力的方向
Vector2 Dir = targetPosition - foots[i].footControlPoint.position;
//如果已经很接近目标点了,则不再给速度,同时解除重力,防止出现抖动问题
if(Dir.magnitude < 0.1f)
{
foots[i].footRigidbody2D.gravityScale = 0;
foots[i].footRigidbody2D.velocity = Vector2.zero;
continue;
}
//标准化马脚移动方向
Dir.Normalize();
//最终计算应有的速度
Vector2 force = Dir * footForce * (horseRig.velocity.magnitude * 0.5f + 1);
//赋予脚的刚体以速度
foots[i].footRigidbody2D.velocity = foots[i].footRigidbody2D.velocity * 0.8f + force * 0.2f;
//foots[i].footRigidbody2D.velocity = force;
//foots[i].footRigidbody2D.AddForce(force);
}
// // 强制把马脚移到目标点
//foots[i].footControlPoint.position = foots[i].footTargetPosition;
// 恢复重力
foots[i].footRigidbody2D.gravityScale = oriGravityScale;
// 刷新碰撞体位置
footBoxColliders[i].offset = foots[i].footRealTransform.position - transform.position;
}
}
public void SetInputFrontVector(Vector2 input) => inputFrontVector = input;
public void SetInputBackVector(Vector2 input) => inputBackVector = input;
}

View File

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

View File

@ -0,0 +1,41 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
/// <summary>
/// 玩家类,代表屏幕外的玩家,用来处理输入、传达信息、记录状态
/// </summary>
public class Player : MonoBehaviour
{
private PlayerC playerC;
private Horse horse;
void Start()
{
//找到必要的物体和组件
FindSth();
//绑定输入
InputBinding();
}
private void FindSth()
{
try{
horse = transform.Find("马").GetComponent<Horse>();
}catch(System.Exception) {Debug.LogError("要么子物体中没有马、要么马的名字不是马、要么马身上没有Horse组件");}
}
private void InputBinding()
{
playerC = new PlayerC();
playerC.GamePlay.MoveFrontFoot.performed += ctx => horse.SetInputFrontVector(ctx.ReadValue<Vector2>());
playerC.GamePlay.MoveBackFoot.performed += ctx => horse.SetInputBackVector(ctx.ReadValue<Vector2>());
playerC.GamePlay.MoveFrontFoot.canceled += ctx => horse.SetInputFrontVector(Vector2.zero);
playerC.GamePlay.MoveBackFoot.canceled += ctx => horse.SetInputBackVector(Vector2.zero);
playerC.GamePlay.Enable();
}
}

View File

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

View File

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

View File

@ -0,0 +1,40 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 单例模式类模板
/// </summary>
public class UnitySingleton<T> : MonoBehaviour
where T : Component
{
private static T m_instance;
public static T Instance
{
get
{
if (m_instance == null)
{
m_instance = FindObjectOfType<T>();
if (m_instance == null)
{
Debug.LogError("缺少 " + typeof(T) + " 这个单例,没法在场景中找到");
}
}
return m_instance;
}
}
protected virtual void Awake()
{
if (m_instance == null)
{
m_instance = this as T;
}
else
{
Destroy(gameObject);
}
}
}

View File

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

View File

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

View File

@ -0,0 +1,406 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
// version 1.3.0
// from Assets/勍/输入映射/PlayerC.inputactions
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.InputSystem;
using UnityEngine.InputSystem.Utilities;
public partial class @PlayerC : IInputActionCollection2, IDisposable
{
public InputActionAsset asset { get; }
public @PlayerC()
{
asset = InputActionAsset.FromJson(@"{
""name"": ""PlayerC"",
""maps"": [
{
""name"": ""GamePlay"",
""id"": ""d066c560-5817-4703-aecc-a975f13f7093"",
""actions"": [
{
""name"": ""MoveBackFoot"",
""type"": ""Value"",
""id"": ""1e173331-d5ad-4f9b-a307-56bf2eda0151"",
""expectedControlType"": ""Vector2"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": true
},
{
""name"": ""MoveFrontFoot"",
""type"": ""Value"",
""id"": ""d198c764-78f7-416a-a6b6-611e7f6fe52e"",
""expectedControlType"": ""Vector2"",
""processors"": """",
""interactions"": """",
""initialStateCheck"": true
}
],
""bindings"": [
{
""name"": ""Keyboard"",
""id"": ""2f29b289-9196-49f9-879f-6e48c0fd135e"",
""path"": ""2DVector"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""MoveBackFoot"",
""isComposite"": true,
""isPartOfComposite"": false
},
{
""name"": ""up"",
""id"": ""070f9c54-d3c3-4f9a-909b-c86b36554086"",
""path"": ""<Keyboard>/w"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveBackFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""down"",
""id"": ""044805b5-ecef-4476-9a64-00f88f141f3f"",
""path"": ""<Keyboard>/s"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveBackFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""left"",
""id"": ""2a896e80-041c-4c01-968a-793d2a741a6c"",
""path"": ""<Keyboard>/a"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveBackFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""right"",
""id"": ""177e26dd-3a72-47e3-951a-3f9b3a942d40"",
""path"": ""<Keyboard>/d"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveBackFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""GamePad"",
""id"": ""8e7cc629-4a8a-46f1-914b-46d7fd8da422"",
""path"": ""2DVector(mode=2)"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""MoveBackFoot"",
""isComposite"": true,
""isPartOfComposite"": false
},
{
""name"": ""up"",
""id"": ""aee182e3-5f55-494e-9293-cd5810f4a2dd"",
""path"": ""<Gamepad>/leftStick/up"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveBackFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""down"",
""id"": ""6d7d49a7-f87d-45cb-81bb-a8139654b64b"",
""path"": ""<Gamepad>/leftStick/down"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveBackFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""left"",
""id"": ""dbbc6bdf-e7d3-4a8b-8156-44b49947fb21"",
""path"": ""<Gamepad>/leftStick/left"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveBackFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""right"",
""id"": ""bd9d31fa-3750-42db-a37a-fd6b24b35e29"",
""path"": ""<Gamepad>/leftStick/right"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveBackFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""Keyboard"",
""id"": ""847b8737-4b1b-4699-aca1-9ac3de703a77"",
""path"": ""2DVector"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""MoveFrontFoot"",
""isComposite"": true,
""isPartOfComposite"": false
},
{
""name"": ""up"",
""id"": ""8b9631ca-0fa6-4272-ab7d-5bee70d9d367"",
""path"": ""<Keyboard>/upArrow"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveFrontFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""down"",
""id"": ""bff77e64-88d3-41a3-9600-b07b5940fe0d"",
""path"": ""<Keyboard>/downArrow"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveFrontFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""left"",
""id"": ""3d72b984-a8e0-432a-84fa-2501e1f0bf90"",
""path"": ""<Keyboard>/leftArrow"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveFrontFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""right"",
""id"": ""94fd6f98-3a9d-4ca6-9934-f9ffb5ac487f"",
""path"": ""<Keyboard>/rightArrow"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveFrontFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""GamePad"",
""id"": ""6e216e7e-d474-4342-af09-0f1936433ad9"",
""path"": ""2DVector(mode=2)"",
""interactions"": """",
""processors"": """",
""groups"": """",
""action"": ""MoveFrontFoot"",
""isComposite"": true,
""isPartOfComposite"": false
},
{
""name"": ""up"",
""id"": ""51d7e337-7cdf-4c2e-9c93-7da2ace9f1e5"",
""path"": ""<Gamepad>/rightStick/up"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveFrontFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""down"",
""id"": ""36eb00e0-f26f-4fd4-a154-364f09ec4244"",
""path"": ""<Gamepad>/rightStick/down"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveFrontFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""left"",
""id"": ""4163f149-fe0e-43ce-ab08-95fbb2854cf6"",
""path"": ""<Gamepad>/rightStick/left"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveFrontFoot"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""right"",
""id"": ""2a85b7b4-027a-4d5b-abf6-977ed6338453"",
""path"": ""<Gamepad>/rightStick/right"",
""interactions"": """",
""processors"": """",
""groups"": ""GamePlay"",
""action"": ""MoveFrontFoot"",
""isComposite"": false,
""isPartOfComposite"": true
}
]
}
],
""controlSchemes"": [
{
""name"": ""GamePlay"",
""bindingGroup"": ""GamePlay"",
""devices"": [
{
""devicePath"": ""<Gamepad>"",
""isOptional"": true,
""isOR"": false
},
{
""devicePath"": ""<Keyboard>"",
""isOptional"": false,
""isOR"": false
}
]
}
]
}");
// GamePlay
m_GamePlay = asset.FindActionMap("GamePlay", throwIfNotFound: true);
m_GamePlay_MoveBackFoot = m_GamePlay.FindAction("MoveBackFoot", throwIfNotFound: true);
m_GamePlay_MoveFrontFoot = m_GamePlay.FindAction("MoveFrontFoot", throwIfNotFound: true);
}
public void Dispose()
{
UnityEngine.Object.Destroy(asset);
}
public InputBinding? bindingMask
{
get => asset.bindingMask;
set => asset.bindingMask = value;
}
public ReadOnlyArray<InputDevice>? devices
{
get => asset.devices;
set => asset.devices = value;
}
public ReadOnlyArray<InputControlScheme> controlSchemes => asset.controlSchemes;
public bool Contains(InputAction action)
{
return asset.Contains(action);
}
public IEnumerator<InputAction> GetEnumerator()
{
return asset.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
public void Enable()
{
asset.Enable();
}
public void Disable()
{
asset.Disable();
}
public IEnumerable<InputBinding> bindings => asset.bindings;
public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false)
{
return asset.FindAction(actionNameOrId, throwIfNotFound);
}
public int FindBinding(InputBinding bindingMask, out InputAction action)
{
return asset.FindBinding(bindingMask, out action);
}
// GamePlay
private readonly InputActionMap m_GamePlay;
private IGamePlayActions m_GamePlayActionsCallbackInterface;
private readonly InputAction m_GamePlay_MoveBackFoot;
private readonly InputAction m_GamePlay_MoveFrontFoot;
public struct GamePlayActions
{
private @PlayerC m_Wrapper;
public GamePlayActions(@PlayerC wrapper) { m_Wrapper = wrapper; }
public InputAction @MoveBackFoot => m_Wrapper.m_GamePlay_MoveBackFoot;
public InputAction @MoveFrontFoot => m_Wrapper.m_GamePlay_MoveFrontFoot;
public InputActionMap Get() { return m_Wrapper.m_GamePlay; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(GamePlayActions set) { return set.Get(); }
public void SetCallbacks(IGamePlayActions instance)
{
if (m_Wrapper.m_GamePlayActionsCallbackInterface != null)
{
@MoveBackFoot.started -= m_Wrapper.m_GamePlayActionsCallbackInterface.OnMoveBackFoot;
@MoveBackFoot.performed -= m_Wrapper.m_GamePlayActionsCallbackInterface.OnMoveBackFoot;
@MoveBackFoot.canceled -= m_Wrapper.m_GamePlayActionsCallbackInterface.OnMoveBackFoot;
@MoveFrontFoot.started -= m_Wrapper.m_GamePlayActionsCallbackInterface.OnMoveFrontFoot;
@MoveFrontFoot.performed -= m_Wrapper.m_GamePlayActionsCallbackInterface.OnMoveFrontFoot;
@MoveFrontFoot.canceled -= m_Wrapper.m_GamePlayActionsCallbackInterface.OnMoveFrontFoot;
}
m_Wrapper.m_GamePlayActionsCallbackInterface = instance;
if (instance != null)
{
@MoveBackFoot.started += instance.OnMoveBackFoot;
@MoveBackFoot.performed += instance.OnMoveBackFoot;
@MoveBackFoot.canceled += instance.OnMoveBackFoot;
@MoveFrontFoot.started += instance.OnMoveFrontFoot;
@MoveFrontFoot.performed += instance.OnMoveFrontFoot;
@MoveFrontFoot.canceled += instance.OnMoveFrontFoot;
}
}
}
public GamePlayActions @GamePlay => new GamePlayActions(this);
private int m_GamePlaySchemeIndex = -1;
public InputControlScheme GamePlayScheme
{
get
{
if (m_GamePlaySchemeIndex == -1) m_GamePlaySchemeIndex = asset.FindControlSchemeIndex("GamePlay");
return asset.controlSchemes[m_GamePlaySchemeIndex];
}
}
public interface IGamePlayActions
{
void OnMoveBackFoot(InputAction.CallbackContext context);
void OnMoveFrontFoot(InputAction.CallbackContext context);
}
}

View File

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

View File

@ -0,0 +1,269 @@
{
"name": "PlayerC",
"maps": [
{
"name": "GamePlay",
"id": "d066c560-5817-4703-aecc-a975f13f7093",
"actions": [
{
"name": "MoveBackFoot",
"type": "Value",
"id": "1e173331-d5ad-4f9b-a307-56bf2eda0151",
"expectedControlType": "Vector2",
"processors": "",
"interactions": "",
"initialStateCheck": true
},
{
"name": "MoveFrontFoot",
"type": "Value",
"id": "d198c764-78f7-416a-a6b6-611e7f6fe52e",
"expectedControlType": "Vector2",
"processors": "",
"interactions": "",
"initialStateCheck": true
}
],
"bindings": [
{
"name": "Keyboard",
"id": "2f29b289-9196-49f9-879f-6e48c0fd135e",
"path": "2DVector",
"interactions": "",
"processors": "",
"groups": "",
"action": "MoveBackFoot",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "up",
"id": "070f9c54-d3c3-4f9a-909b-c86b36554086",
"path": "<Keyboard>/w",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveBackFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "044805b5-ecef-4476-9a64-00f88f141f3f",
"path": "<Keyboard>/s",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveBackFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "2a896e80-041c-4c01-968a-793d2a741a6c",
"path": "<Keyboard>/a",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveBackFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "177e26dd-3a72-47e3-951a-3f9b3a942d40",
"path": "<Keyboard>/d",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveBackFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "GamePad",
"id": "8e7cc629-4a8a-46f1-914b-46d7fd8da422",
"path": "2DVector(mode=2)",
"interactions": "",
"processors": "",
"groups": "",
"action": "MoveBackFoot",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "up",
"id": "aee182e3-5f55-494e-9293-cd5810f4a2dd",
"path": "<Gamepad>/leftStick/up",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveBackFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "6d7d49a7-f87d-45cb-81bb-a8139654b64b",
"path": "<Gamepad>/leftStick/down",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveBackFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "dbbc6bdf-e7d3-4a8b-8156-44b49947fb21",
"path": "<Gamepad>/leftStick/left",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveBackFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "bd9d31fa-3750-42db-a37a-fd6b24b35e29",
"path": "<Gamepad>/leftStick/right",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveBackFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "Keyboard",
"id": "847b8737-4b1b-4699-aca1-9ac3de703a77",
"path": "2DVector",
"interactions": "",
"processors": "",
"groups": "",
"action": "MoveFrontFoot",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "up",
"id": "8b9631ca-0fa6-4272-ab7d-5bee70d9d367",
"path": "<Keyboard>/upArrow",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveFrontFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "bff77e64-88d3-41a3-9600-b07b5940fe0d",
"path": "<Keyboard>/downArrow",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveFrontFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "3d72b984-a8e0-432a-84fa-2501e1f0bf90",
"path": "<Keyboard>/leftArrow",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveFrontFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "94fd6f98-3a9d-4ca6-9934-f9ffb5ac487f",
"path": "<Keyboard>/rightArrow",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveFrontFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "GamePad",
"id": "6e216e7e-d474-4342-af09-0f1936433ad9",
"path": "2DVector(mode=2)",
"interactions": "",
"processors": "",
"groups": "",
"action": "MoveFrontFoot",
"isComposite": true,
"isPartOfComposite": false
},
{
"name": "up",
"id": "51d7e337-7cdf-4c2e-9c93-7da2ace9f1e5",
"path": "<Gamepad>/rightStick/up",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveFrontFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "down",
"id": "36eb00e0-f26f-4fd4-a154-364f09ec4244",
"path": "<Gamepad>/rightStick/down",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveFrontFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "left",
"id": "4163f149-fe0e-43ce-ab08-95fbb2854cf6",
"path": "<Gamepad>/rightStick/left",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveFrontFoot",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "right",
"id": "2a85b7b4-027a-4d5b-abf6-977ed6338453",
"path": "<Gamepad>/rightStick/right",
"interactions": "",
"processors": "",
"groups": "GamePlay",
"action": "MoveFrontFoot",
"isComposite": false,
"isPartOfComposite": true
}
]
}
],
"controlSchemes": [
{
"name": "GamePlay",
"bindingGroup": "GamePlay",
"devices": [
{
"devicePath": "<Gamepad>",
"isOptional": true,
"isOR": false
},
{
"devicePath": "<Keyboard>",
"isOptional": false,
"isOR": false
}
]
}
]
}

View File

@ -0,0 +1,14 @@
fileFormatVersion: 2
guid: b9bfe6d24765dbc4f9fdefb8e062c53d
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 8404be70184654265930450def6a9037, type: 3}
generateWrapperCode: 1
wrapperCodePath:
wrapperClassName:
wrapperCodeNamespace:

View File

@ -23,7 +23,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7821054}
m_LocalRotation: {x: -0, y: -0, z: 0.48011786, w: 0.877204}
m_LocalRotation: {x: -0, y: -0, z: 0.70307267, w: 0.711118}
m_LocalPosition: {x: 2.63, y: -0.03, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -31,6 +31,37 @@ Transform:
m_Father: {fileID: 3613839984805260814}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &29448274
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 29448275}
m_Layer: 0
m_Name: "\u540E\u817F\u811A\u5E95"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &29448275
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 29448274}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -2.33, y: -0.13, z: -0.04031739}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 50099845796739461}
m_RootOrder: 18
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &173297168
GameObject:
m_ObjectHideFlags: 0
@ -41,7 +72,7 @@ GameObject:
m_Component:
- component: {fileID: 173297169}
- component: {fileID: 173297170}
m_Layer: 0
m_Layer: 3
m_Name: "\u53F3\u524D\u811A"
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -106,7 +137,7 @@ GameObject:
m_Component:
- component: {fileID: 427451462}
- component: {fileID: 427451463}
m_Layer: 0
m_Layer: 3
m_Name: "\u53F3\u540E\u811A"
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -160,7 +191,7 @@ MonoBehaviour:
- {x: 0, y: 0, z: 0, w: 0}
- {x: 0, y: 0, z: 0, w: 0}
- {x: 0, y: 0, z: 0, w: 0}
m_Flip: 0
m_Flip: 1
--- !u!1 &439821176
GameObject:
m_ObjectHideFlags: 0
@ -171,7 +202,7 @@ GameObject:
m_Component:
- component: {fileID: 439821177}
- component: {fileID: 439821178}
m_Layer: 0
m_Layer: 3
m_Name: "\u5DE6\u540E\u811A"
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -185,7 +216,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 439821176}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -225,7 +256,7 @@ MonoBehaviour:
- {x: 0, y: 0, z: 0, w: 0}
- {x: 0, y: 0, z: 0, w: 0}
- {x: 0, y: 0, z: 0, w: 0}
m_Flip: 0
m_Flip: 1
--- !u!1 &566743903
GameObject:
m_ObjectHideFlags: 0
@ -235,7 +266,9 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 566743904}
m_Layer: 0
- component: {fileID: 719707980}
- component: {fileID: 719707977}
m_Layer: 3
m_Name: New LimbSolver2D (1)_Target
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -249,14 +282,61 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 566743903}
m_LocalRotation: {x: -0, y: -0, z: -0.6548563, w: 0.75575346}
m_LocalPosition: {x: 1.4883441, y: 1.4884486, z: 0}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 4.1667233, y: 1.7712791, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 173297169}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!50 &719707980
Rigidbody2D:
serializedVersion: 4
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 566743903}
m_BodyType: 0
m_Simulated: 1
m_UseFullKinematicContacts: 0
m_UseAutoMass: 0
m_Mass: 1
m_LinearDrag: 0
m_AngularDrag: 0.05
m_GravityScale: 1
m_Material: {fileID: 0}
m_Interpolate: 0
m_SleepingMode: 1
m_CollisionDetection: 0
m_Constraints: 4
--- !u!61 &719707977
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 566743903}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 6200000, guid: 3f96fa1f269cf674da614b8d6fd206a8, type: 2}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 0
m_Offset: {x: 0, y: 0.37}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.5, y: 0.5}
m_EdgeRadius: 0
--- !u!1 &685472165
GameObject:
m_ObjectHideFlags: 0
@ -280,7 +360,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 685472165}
m_LocalRotation: {x: -0, y: -0, z: -0.43980214, w: -0.89809465}
m_LocalRotation: {x: -0, y: -0, z: 0.14573838, w: 0.98932326}
m_LocalPosition: {x: 2.89, y: -0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -297,7 +377,9 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 905566467}
m_Layer: 0
- component: {fileID: 448642196}
- component: {fileID: 448642193}
m_Layer: 3
m_Name: New LimbSolver2D_Target
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -311,14 +393,61 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 905566466}
m_LocalRotation: {x: -0, y: -0, z: -0.6576925, w: 0.7532865}
m_LocalPosition: {x: -1.617593, y: 1.9891539, z: 0}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 1.3844213, y: 1.9082389, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 427451462}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!50 &448642196
Rigidbody2D:
serializedVersion: 4
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 905566466}
m_BodyType: 0
m_Simulated: 1
m_UseFullKinematicContacts: 0
m_UseAutoMass: 0
m_Mass: 1
m_LinearDrag: 0
m_AngularDrag: 0.05
m_GravityScale: 1
m_Material: {fileID: 0}
m_Interpolate: 0
m_SleepingMode: 1
m_CollisionDetection: 0
m_Constraints: 4
--- !u!61 &448642193
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 905566466}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 6200000, guid: 3f96fa1f269cf674da614b8d6fd206a8, type: 2}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 0
m_Offset: {x: 0, y: 0.37}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.5, y: 0.5}
m_EdgeRadius: 0
--- !u!1 &951836817
GameObject:
m_ObjectHideFlags: 0
@ -342,7 +471,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 951836817}
m_LocalRotation: {x: -0, y: -0, z: 0.36415687, w: 0.9313377}
m_LocalRotation: {x: -0, y: -0, z: 0.7110635, w: 0.70312786}
m_LocalPosition: {x: 2.67, y: -0.03, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -373,7 +502,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1219316748}
m_LocalRotation: {x: -0, y: -0, z: 0.13617262, w: 0.9906851}
m_LocalRotation: {x: -0, y: -0, z: 0.7107234, w: 0.7034716}
m_LocalPosition: {x: 2.89, y: -0.01, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -390,7 +519,9 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 1804133629}
m_Layer: 0
- component: {fileID: 106631856}
- component: {fileID: 106631853}
m_Layer: 3
m_Name: New LimbSolver2D (1)_Target
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -404,14 +535,92 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1804133628}
m_LocalRotation: {x: -0, y: -0, z: -0.6535307, w: 0.7569001}
m_LocalPosition: {x: -0.24605179, y: 0.8020568, z: 0}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -2.313099, y: -0.36832428, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 439821177}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!50 &106631856
Rigidbody2D:
serializedVersion: 4
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1804133628}
m_BodyType: 0
m_Simulated: 1
m_UseFullKinematicContacts: 0
m_UseAutoMass: 0
m_Mass: 1
m_LinearDrag: 0
m_AngularDrag: 0.05
m_GravityScale: 1
m_Material: {fileID: 0}
m_Interpolate: 0
m_SleepingMode: 1
m_CollisionDetection: 0
m_Constraints: 4
--- !u!61 &106631853
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1804133628}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 6200000, guid: 3f96fa1f269cf674da614b8d6fd206a8, type: 2}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 0
m_Offset: {x: 0, y: 0.37}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.5, y: 0.5}
m_EdgeRadius: 0
--- !u!1 &1861204019
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1861204020}
m_Layer: 0
m_Name: "\u524D\u817F\u811A\u5E95"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1861204020
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1861204019}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 1.95, y: -0.04, z: -0.04031739}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 50099845796739461}
m_RootOrder: 17
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2110753429
GameObject:
m_ObjectHideFlags: 0
@ -421,7 +630,9 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 2110753430}
m_Layer: 0
- component: {fileID: 213903473}
- component: {fileID: 213903470}
m_Layer: 3
m_Name: New LimbSolver2D_Target
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -435,14 +646,61 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2110753429}
m_LocalRotation: {x: -0, y: -0, z: -0.65063983, w: 0.75938654}
m_LocalPosition: {x: 1.32, y: 0.55, z: 0}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 1.9177513, y: -0.107476234, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2114915568}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!50 &213903473
Rigidbody2D:
serializedVersion: 4
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2110753429}
m_BodyType: 0
m_Simulated: 1
m_UseFullKinematicContacts: 0
m_UseAutoMass: 0
m_Mass: 1
m_LinearDrag: 0
m_AngularDrag: 0.05
m_GravityScale: 1
m_Material: {fileID: 0}
m_Interpolate: 0
m_SleepingMode: 1
m_CollisionDetection: 0
m_Constraints: 4
--- !u!61 &213903470
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2110753429}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 6200000, guid: 3f96fa1f269cf674da614b8d6fd206a8, type: 2}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 0
m_Offset: {x: 0, y: 0.37}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.5, y: 0.5}
m_EdgeRadius: 0
--- !u!1 &2114915567
GameObject:
m_ObjectHideFlags: 0
@ -453,7 +711,7 @@ GameObject:
m_Component:
- component: {fileID: 2114915568}
- component: {fileID: 2114915569}
m_Layer: 0
m_Layer: 3
m_Name: "\u5DE6\u524D\u811A"
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -609,8 +867,8 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 447594391148734010}
m_Bounds:
m_Center: {x: 0.10990229, y: 1.1215049, z: 0}
m_Extent: {x: 0.4843654, y: 1.5325127, z: 0}
m_Center: {x: -2.1130419, y: 0.114145875, z: 0}
m_Extent: {x: 0.4399668, y: 1.5207393, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
m_AutoRebind: 0
@ -715,7 +973,7 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 4548555739299381851}
m_Bounds:
m_Center: {x: 0.04663968, y: 0.00054490566, z: 0}
m_Center: {x: 0.046640396, y: 0.00054466724, z: 0}
m_Extent: {x: 2.9833598, y: 1.529455, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
@ -774,7 +1032,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1824128395887921376}
m_LocalRotation: {x: 0, y: 0, z: -0.46477637, w: 0.8854282}
m_LocalRotation: {x: 0, y: 0, z: 0.0017300934, w: 0.9999985}
m_LocalPosition: {x: 3.1855989, y: 0.00000048540335, z: 0}
m_LocalScale: {x: 1.0000002, y: 1.0000002, z: 1}
m_ConstrainProportionsScale: 0
@ -782,7 +1040,7 @@ Transform:
- {fileID: 1219316749}
m_Father: {fileID: 4491597922211250125}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: -1.023}
--- !u!1 &1918938200114478082
GameObject:
m_ObjectHideFlags: 0
@ -884,8 +1142,8 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 8522599996288171628}
m_Bounds:
m_Center: {x: -0.63334984, y: 0.19928885, z: 0}
m_Extent: {x: 0.8191065, y: 1.3227417, z: 0}
m_Center: {x: -0.7402922, y: -0.032966852, z: 0}
m_Extent: {x: 0.51820207, y: 1.3867431, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
m_AutoRebind: 0
@ -912,8 +1170,8 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2586161855259237125}
m_LocalRotation: {x: 0, y: 0, z: -0.36196133, w: 0.9321931}
m_LocalPosition: {x: -0.026302116, y: 0.18291369, z: 0}
m_LocalRotation: {x: 0, y: 0, z: -0.71538323, w: 0.6987324}
m_LocalPosition: {x: -0.011623869, y: 0.221685, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
@ -1022,7 +1280,7 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 7712677489453891730}
m_Bounds:
m_Center: {x: 0.004005432, y: 0.0019345284, z: 0}
m_Center: {x: 0.0040051937, y: 0.0019350052, z: 0}
m_Extent: {x: 1.730995, y: 2.237885, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
@ -1159,8 +1417,8 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 758927187003403290}
m_Bounds:
m_Center: {x: 2.3203797, y: 2.1284359, z: 0}
m_Extent: {x: 1.1634619, y: 1.2677419, z: 0}
m_Center: {x: 2.8834577, y: 1.5164056, z: 0}
m_Extent: {x: 1.5171115, y: 0.62594986, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
m_AutoRebind: 0
@ -1265,7 +1523,7 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 3283039325717014954}
m_Bounds:
m_Center: {x: -0.61232376, y: -1.3605902, z: 0}
m_Center: {x: -0.61232376, y: -1.3605895, z: 0}
m_Extent: {x: 1.8811502, y: 0.63218814, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
@ -1293,7 +1551,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3939901558948737848}
m_LocalRotation: {x: 0, y: 0, z: -0.46452096, w: 0.88556206}
m_LocalRotation: {x: 0, y: 0, z: 0.0056177806, w: 0.9999842}
m_LocalPosition: {x: 2.199519, y: 0.00000009788684, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -1325,7 +1583,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4223829576435502571}
m_LocalRotation: {x: 0, y: 0, z: -0.4063894, w: 0.9137}
m_LocalRotation: {x: 0, y: 0, z: -0.09297238, w: 0.9956687}
m_LocalPosition: {x: 4.234662, y: -0.8706172, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -1333,7 +1591,7 @@ Transform:
- {fileID: 3613839984805260814}
m_Father: {fileID: 4548555739299381851}
m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: -72.845}
--- !u!1 &4354509052754836139
GameObject:
m_ObjectHideFlags: 0
@ -1435,8 +1693,8 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 5709595267743773255}
m_Bounds:
m_Center: {x: 0.18034178, y: 0.055391908, z: 0}
m_Extent: {x: 0.7437249, y: 1.4409373, z: 0}
m_Center: {x: -0.030106127, y: 0.025359988, z: 0}
m_Extent: {x: 0.57709247, y: 1.5073501, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
m_AutoRebind: 0
@ -1500,7 +1758,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4785949961849431770}
m_LocalRotation: {x: 0, y: 0, z: -0.71819085, w: 0.6958462}
m_LocalRotation: {x: 0, y: 0, z: -0.6377077, w: 0.7702784}
m_LocalPosition: {x: 2.1717074, y: 0.00000029267994, z: 0}
m_LocalScale: {x: 0.9999999, y: 0.9999999, z: 1}
m_ConstrainProportionsScale: 0
@ -1508,7 +1766,7 @@ Transform:
- {fileID: 7821055}
m_Father: {fileID: 7553923325119000229}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: -40.066}
--- !u!1 &4844367161775248575
GameObject:
m_ObjectHideFlags: 0
@ -1532,8 +1790,8 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4844367161775248575}
m_LocalRotation: {x: 0, y: 0, z: -0.5670967, w: 0.82365125}
m_LocalPosition: {x: 4.234796, y: -0.8565663, z: 0}
m_LocalRotation: {x: 0, y: 0, z: -0.7184307, w: 0.6955986}
m_LocalPosition: {x: 4.2351785, y: -0.81765443, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
@ -1567,7 +1825,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5266883265818701397}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 2.7150002, y: 1.325, z: 0}
m_LocalPosition: {x: 4.45, y: 1.94, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
@ -1642,8 +1900,8 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 3613839984805260814}
m_Bounds:
m_Center: {x: -0.23456705, y: 0.8122387, z: 0}
m_Extent: {x: 1.0557585, y: 1.1580331, z: 0}
m_Center: {x: -0.21104848, y: 1.1106416, z: 0}
m_Extent: {x: 0.53063285, y: 1.3755945, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
m_AutoRebind: 0
@ -1748,8 +2006,8 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 553410378564238167}
m_Bounds:
m_Center: {x: -0.17382455, y: -0.099614024, z: 0}
m_Extent: {x: 1.9793634, y: 1.5096724, z: 0}
m_Center: {x: -0.8926394, y: -0.66431546, z: 0}
m_Extent: {x: 1.1780448, y: 2.2737556, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
m_AutoRebind: 0
@ -1854,7 +2112,7 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 222644695571005584}
m_Bounds:
m_Center: {x: 0.09295505, y: -0.016916037, z: 0}
m_Center: {x: 0.09295505, y: -0.016916513, z: 0}
m_Extent: {x: 0.7851751, y: 1.0730853, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
@ -1960,8 +2218,8 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 4491597922211250125}
m_Bounds:
m_Center: {x: 1.1610749, y: 0.41806042, z: 0}
m_Extent: {x: 1.8311799, y: 1.7199361, z: 0}
m_Center: {x: 0.42617273, y: -0.030556917, z: 0}
m_Extent: {x: 1.0636271, y: 2.3464012, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
m_AutoRebind: 0
@ -1988,7 +2246,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6623324084869713201}
m_LocalRotation: {x: 0, y: 0, z: 0.7717921, w: -0.635875}
m_LocalRotation: {x: 0, y: 0, z: 0.4797578, w: 0.87740105}
m_LocalPosition: {x: 3.1885386, y: -0.00000020127122, z: 0}
m_LocalScale: {x: 0.9999999, y: 0.9999999, z: 1}
m_ConstrainProportionsScale: 0
@ -1996,7 +2254,7 @@ Transform:
- {fileID: 685472166}
m_Father: {fileID: 553410378564238167}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: -0.241}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0.387}
--- !u!1 &6633603778721056374
GameObject:
m_ObjectHideFlags: 0
@ -2098,8 +2356,8 @@ MonoBehaviour:
m_BoneTransforms:
- {fileID: 7553923325119000229}
m_Bounds:
m_Center: {x: 0.5041566, y: 0.25244474, z: 0}
m_Extent: {x: 1.1035596, y: 1.2199924, z: 0}
m_Center: {x: 0.8403853, y: 0.93576217, z: 0}
m_Extent: {x: 1.4916611, y: 0.64488125, z: 0}
m_UseBatching: 1
m_AlwaysUpdate: 1
m_AutoRebind: 0
@ -2126,7 +2384,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7445106116714581447}
m_LocalRotation: {x: 0, y: 0, z: -0.2920709, w: 0.9563967}
m_LocalRotation: {x: 0, y: 0, z: -0.6064229, w: 0.79514235}
m_LocalPosition: {x: -0.040212978, y: 0.19710083, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
@ -2145,7 +2403,13 @@ GameObject:
m_Component:
- component: {fileID: 50099845796739461}
- component: {fileID: 1084903717}
m_Layer: 0
- component: {fileID: 1084903726}
- component: {fileID: 1084903722}
- component: {fileID: 1084903723}
- component: {fileID: 1084903724}
- component: {fileID: 1084903725}
- component: {fileID: 8721403442329396673}
m_Layer: 3
m_Name: "\u9A6C\u9AA8\u9ABC"
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -2181,6 +2445,8 @@ Transform:
- {fileID: 173297169}
- {fileID: 427451462}
- {fileID: 439821177}
- {fileID: 1861204020}
- {fileID: 29448275}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -2211,6 +2477,161 @@ MonoBehaviour:
showGizmo: 1
- color: {r: 0, g: 1, b: 0, a: 1}
showGizmo: 1
--- !u!50 &1084903726
Rigidbody2D:
serializedVersion: 4
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8765724049729688277}
m_BodyType: 0
m_Simulated: 1
m_UseFullKinematicContacts: 0
m_UseAutoMass: 0
m_Mass: 1
m_LinearDrag: 0
m_AngularDrag: 0.05
m_GravityScale: 1
m_Material: {fileID: 0}
m_Interpolate: 0
m_SleepingMode: 1
m_CollisionDetection: 0
m_Constraints: 0
--- !u!61 &1084903722
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8765724049729688277}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 0}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 0
m_Offset: {x: 0, y: 0}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.5, y: 0.5}
m_EdgeRadius: 0
--- !u!61 &1084903723
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8765724049729688277}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 0}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 0
m_Offset: {x: 0, y: 0}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.5, y: 0.5}
m_EdgeRadius: 0
--- !u!61 &1084903724
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8765724049729688277}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 0}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 0
m_Offset: {x: 0, y: 0}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.5, y: 0.5}
m_EdgeRadius: 0
--- !u!61 &1084903725
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8765724049729688277}
m_Enabled: 1
m_Density: 1
m_Material: {fileID: 0}
m_IsTrigger: 0
m_UsedByEffector: 0
m_UsedByComposite: 1
m_Offset: {x: 0, y: 0}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
serializedVersion: 2
m_Size: {x: 0.5, y: 0.5}
m_EdgeRadius: 0
--- !u!114 &8721403442329396673
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8765724049729688277}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: de38a93f55344b04f94daf7d0def7050, type: 3}
m_Name:
m_EditorClassIdentifier:
frontLegRoot: {fileID: 5709595267743773255}
backLegRoot: {fileID: 4491597922211250125}
frontFoot: {fileID: 1861204020}
backFoot: {fileID: 29448275}
footsTransform:
- {fileID: 951836818}
- {fileID: 7821055}
- {fileID: 1219316749}
- {fileID: 685472166}
footMoveRadius: 1
footOffestOfInput:
- {x: 0, y: 0}
- {x: -2, y: -2}
- {x: -2, y: -2}
- {x: 0, y: 0}
footForce: 7.5
strength: 5
effectiveDistance: -5
--- !u!1 &8864241425196728455
GameObject:
m_ObjectHideFlags: 0

View File

@ -7,6 +7,7 @@ PhysicsManager:
m_Gravity: {x: 0, y: -9.81, z: 0}
m_DefaultMaterial: {fileID: 0}
m_BounceThreshold: 2
m_DefaultMaxDepenetrationVelocity: 10
m_SleepThreshold: 0.005
m_DefaultContactOffset: 0.01
m_DefaultSolverIterations: 6
@ -17,7 +18,7 @@ PhysicsManager:
m_ClothInterCollisionDistance: 0.1
m_ClothInterCollisionStiffness: 0.2
m_ContactsGeneration: 1
m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
m_LayerCollisionMatrix: fffffffffffffffffffffffff7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
m_AutoSimulation: 1
m_AutoSyncTransforms: 0
m_ReuseCollisionCallbacks: 1
@ -32,5 +33,6 @@ PhysicsManager:
m_FrictionType: 0
m_EnableEnhancedDeterminism: 0
m_EnableUnifiedHeightmaps: 1
m_ImprovedPatchFriction: 0
m_SolverType: 0
m_DefaultMaxAngularSpeed: 50

View File

@ -53,4 +53,4 @@ Physics2DSettings:
m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
m_LayerCollisionMatrix: fffffffffffffffffffffffff7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff

View File

@ -8,10 +8,10 @@ TagManager:
- Default
- TransparentFX
- Ignore Raycast
-
- foot
- Water
- UI
-
- Ground
-
-
-

View File

@ -9,17 +9,17 @@ EditorUserSettings:
value: 515250075c0c595e5f5a5e71122159444e4e4a2f7a7d7f602f284d66b4b76661
flags: 0
RecentlyUsedSceneGuid-1:
value: 5b520d0503545b0d0c0c0a2715770748154f4d2c7d7d7e627a7d4a35b4e1646a
flags: 0
RecentlyUsedSceneGuid-2:
value: 5550060701065c085e5c5924162609444f4f4b297e70226674284564b1b8326d
flags: 0
RecentlyUsedSceneGuid-3:
RecentlyUsedSceneGuid-2:
value: 0204525104005f5f5e5d5526117b0b44424e4073752d2536747c1b31e7b3673c
flags: 0
RecentlyUsedSceneGuid-4:
RecentlyUsedSceneGuid-3:
value: 02020157070050580c5b582340215c44464f4b297f7d7e64792d1c62b1e16269
flags: 0
RecentlyUsedSceneGuid-4:
value: 5b520d0503545b0d0c0c0a2715770748154f4d2c7d7d7e627a7d4a35b4e1646a
flags: 0
vcSharedLogLevel:
value: 0d5e400f0650
flags: 0

View File

@ -19,7 +19,7 @@ MonoBehaviour:
width: 1536
height: 772.8
m_ShowMode: 4
m_Title: "\u5C42\u7EA7"
m_Title: "\u6E38\u620F"
m_RootView: {fileID: 2}
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
@ -100,7 +100,7 @@ MonoBehaviour:
m_MinSize: {x: 400, y: 200}
m_MaxSize: {x: 32384, y: 16192}
vertical: 0
controlID: 79
controlID: 111
--- !u!114 &5
MonoBehaviour:
m_ObjectHideFlags: 52
@ -141,12 +141,12 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 697.6
width: 635.2
height: 722.8
m_MinSize: {x: 100, y: 200}
m_MaxSize: {x: 8096, y: 16192}
vertical: 1
controlID: 119
controlID: 112
--- !u!114 &7
MonoBehaviour:
m_ObjectHideFlags: 52
@ -162,9 +162,9 @@ MonoBehaviour:
m_Children: []
m_Position:
serializedVersion: 2
x: 697.6
x: 635.2
y: 0
width: 194.40002
width: 249.59998
height: 722.8
m_MinSize: {x: 202, y: 221}
m_MaxSize: {x: 4002, y: 4021}
@ -188,9 +188,9 @@ MonoBehaviour:
m_Children: []
m_Position:
serializedVersion: 2
x: 892
x: 884.8
y: 0
width: 300.80005
width: 308.00006
height: 722.8
m_MinSize: {x: 232, y: 271}
m_MaxSize: {x: 10002, y: 10021}
@ -242,8 +242,8 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 697.6
height: 622.4
width: 635.2
height: 300.8
m_MinSize: {x: 201, y: 221}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 16}
@ -267,11 +267,11 @@ MonoBehaviour:
m_Position:
serializedVersion: 2
x: 0
y: 622.4
width: 697.6
height: 100.39996
m_MinSize: {x: 200, y: 200}
m_MaxSize: {x: 4000, y: 4000}
y: 300.8
width: 635.2
height: 422
m_MinSize: {x: 201, y: 221}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 15}
m_Panes:
- {fileID: 15}
@ -297,9 +297,9 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 697.60004
x: 635.2
y: 73.6
width: 192.40002
width: 247.59998
height: 701.8
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
@ -308,9 +308,9 @@ MonoBehaviour:
m_SceneHierarchy:
m_TreeViewState:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
m_ExpandedIDs: 76ecffff82ecffff88ecffff78f0ffff0efbffff
m_SelectedIDs: 60760000
m_LastClickedID: 30304
m_ExpandedIDs: 5efaffff66faffff6efaffff76faffff92faffff0efbffff6e7600007e760000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -395,9 +395,9 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 892
x: 884.8
y: 73.6
width: 298.80005
width: 306.00006
height: 701.8
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
@ -416,22 +416,22 @@ MonoBehaviour:
m_SkipHidden: 0
m_SearchArea: 1
m_Folders:
- Assets/AmplifyShaderEditor
- "Assets/\u52CD/\u7269\u7406\u6750\u8D28"
m_Globs: []
m_OriginalText:
m_ViewMode: 1
m_StartGridSize: 64
m_LastFolders:
- Assets/AmplifyShaderEditor
- "Assets/\u52CD/\u7269\u7406\u6750\u8D28"
m_LastFoldersGridSize: -1
m_LastProjectPath: "C:\\Users\\13259\\Desktop\\\u8D5B\u9A6C"
m_LockTracker:
m_IsLocked: 0
m_FolderTreeState:
scrollPos: {x: 0, y: 0}
m_SelectedIDs: ea7e0000
m_LastClickedID: 32490
m_ExpandedIDs: 000000008a6e00008c6e00008e6e0000906e0000
m_SelectedIDs: d8770000
m_LastClickedID: 30680
m_ExpandedIDs: 00000000a4770000a6770000a8770000aa770000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -459,7 +459,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
m_ExpandedIDs: 000000008a6e00008c6e00008e6e0000906e0000
m_ExpandedIDs: 00000000a4770000a6770000a8770000aa770000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -486,7 +486,7 @@ MonoBehaviour:
m_ListAreaState:
m_SelectedInstanceIDs:
m_LastClickedInstanceID: 0
m_HadKeyboardFocusLastEvent: 0
m_HadKeyboardFocusLastEvent: 1
m_ExpandedInstanceIDs:
m_RenameOverlay:
m_UserAcceptedRename: 0
@ -514,7 +514,7 @@ MonoBehaviour:
m_ScrollPosition: {x: 0, y: 0}
m_GridSize: 64
m_SkipHiddenPackages: 0
m_DirectoriesAreaWidth: 105
m_DirectoriesAreaWidth: 133
--- !u!114 &15
MonoBehaviour:
m_ObjectHideFlags: 52
@ -536,9 +536,9 @@ MonoBehaviour:
m_Pos:
serializedVersion: 2
x: 0
y: 696
width: 696.6
height: 79.39996
y: 374.4
width: 634.2
height: 401
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@ -549,7 +549,7 @@ MonoBehaviour:
m_ShowGizmos: 0
m_TargetDisplay: 0
m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
m_TargetSize: {x: 870.75, y: 72.999954}
m_TargetSize: {x: 792.75, y: 446}
m_TextureFilterMode: 0
m_TextureHideFlags: 61
m_RenderIMGUI: 1
@ -558,16 +558,16 @@ MonoBehaviour:
m_VSyncEnabled: 0
m_Gizmos: 0
m_Stats: 0
m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000
m_SelectedSizes: 01000000000000000000000000000000000000000000000000000000000000000000000000000000
m_ZoomArea:
m_HRangeLocked: 0
m_VRangeLocked: 0
hZoomLockedByDefault: 0
vZoomLockedByDefault: 0
m_HBaseRangeMin: -348.30002
m_HBaseRangeMax: 348.30002
m_VBaseRangeMin: -29.199982
m_VBaseRangeMax: 29.199982
m_HBaseRangeMin: -317.1
m_HBaseRangeMax: 317.1
m_VBaseRangeMin: -178.40001
m_VBaseRangeMax: 178.40001
m_HAllowExceedBaseRangeMin: 1
m_HAllowExceedBaseRangeMax: 1
m_VAllowExceedBaseRangeMin: 1
@ -585,23 +585,23 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 21
width: 696.6
height: 58.399963
m_Scale: {x: 0.99999994, y: 0.99999994}
m_Translation: {x: 348.3, y: 29.199982}
width: 634.2
height: 380
m_Scale: {x: 1, y: 1}
m_Translation: {x: 317.1, y: 190}
m_MarginLeft: 0
m_MarginRight: 0
m_MarginTop: 0
m_MarginBottom: 0
m_LastShownAreaInsideMargins:
serializedVersion: 2
x: -348.30002
y: -29.199984
width: 696.60004
height: 58.399967
x: -317.1
y: -190
width: 634.2
height: 380
m_MinimalGUI: 1
m_defaultScale: 0.99999994
m_LastWindowPixelSize: {x: 870.75, y: 99.249954}
m_defaultScale: 1
m_LastWindowPixelSize: {x: 792.75, y: 501.25}
m_ClearInEditMode: 1
m_NoCameraWarning: 1
m_LowResolutionForAspectRatios: 00000000000000000000
@ -629,8 +629,8 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 73.6
width: 696.6
height: 601.4
width: 634.2
height: 279.8
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@ -641,7 +641,7 @@ MonoBehaviour:
collapsed: 0
displayed: 1
snapOffset: {x: 0, y: 0}
snapOffsetDelta: {x: -100, y: -25.599976}
snapOffsetDelta: {x: -100, y: -25.600006}
snapCorner: 3
id: Tool Settings
index: 0
@ -854,9 +854,9 @@ MonoBehaviour:
m_PlayAudio: 0
m_AudioPlay: 0
m_Position:
m_Target: {x: -2.27013, y: -0.4219437, z: 1.007452}
m_Target: {x: 8.581671, y: 1.2368927, z: 0.09554357}
speed: 2
m_Value: {x: -2.27013, y: -0.4219437, z: 1.007452}
m_Value: {x: 8.581671, y: 1.2368927, z: 0.09554357}
m_RenderMode: 0
m_CameraMode:
drawMode: 0
@ -907,9 +907,9 @@ MonoBehaviour:
speed: 2
m_Value: {x: 0, y: 0, z: 0, w: 1}
m_Size:
m_Target: 6.943548
m_Target: 9.847269
speed: 2
m_Value: 6.943548
m_Value: 9.847269
m_Ortho:
m_Target: 1
speed: 2

View File

@ -0,0 +1 @@
{}