diff --git a/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main 1.unity b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main 1.unity new file mode 100644 index 000000000..00f2ecdc1 --- /dev/null +++ b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main 1.unity @@ -0,0 +1,816 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.37286404, g: 0.4026641, b: 0.46226418, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 0.4 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 705507994} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 0 + m_BakeBackend: 2 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 500 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 112000000, guid: 3feeca0c11fd0d84aa1834e0e22da648, type: 2} + m_LightingSettings: {fileID: 2073191939} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &562189915 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 562189922} + - component: {fileID: 562189921} + - component: {fileID: 562189920} + - component: {fileID: 562189919} + - component: {fileID: 562189918} + m_Layer: 0 + m_Name: Swing1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!54 &562189918 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 562189915} + serializedVersion: 5 + m_Mass: 1 + m_LinearDamping: 0 + m_AngularDamping: 0.5 + m_CenterOfMass: {x: 0, y: 0, z: 0} + m_InertiaTensor: {x: 1, y: 1, z: 1} + m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ImplicitCom: 1 + m_ImplicitTensor: 1 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!65 &562189919 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 562189915} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &562189920 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 562189915} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: e26b4c54b2b9d934e9bbba88b5f9b449, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &562189921 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 562189915} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &562189922 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 562189915} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0.7071067, w: 0.70710695} + m_LocalPosition: {x: -1.406, y: -0, z: 0.9375} + m_LocalScale: {x: 1, y: 0.20000012, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 906432239} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90.00001} +--- !u!1 &705507993 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 705507995} + - component: {fileID: 705507994} + - component: {fileID: 705507996} + m_Layer: 0 + m_Name: Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &705507994 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.7 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!4 &705507995 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + serializedVersion: 2 + m_LocalRotation: {x: 0.085324295, y: -0.8876446, z: 0.41391522, w: 0.18297842} + m_LocalPosition: {x: 0, y: 15, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 50.000004, y: -156.70401, z: 0} +--- !u!114 &705507996 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 705507993} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalLightData + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_CustomShadowLayers: 0 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 + m_RenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_ShadowRenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_Version: 4 + m_LightLayerMask: 1 + m_ShadowLayerMask: 1 + m_RenderingLayers: 1 + m_ShadowRenderingLayers: 1 +--- !u!1 &906432238 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 906432239} + m_Layer: 0 + m_Name: Swings + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &906432239 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 906432238} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -6.09375, y: 4.5, z: 5.0625} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1197291660} + - {fileID: 562189922} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &963194225 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 963194228} + - component: {fileID: 963194227} + - component: {fileID: 963194229} + - component: {fileID: 963194226} + m_Layer: 0 + m_Name: Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &963194226 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0383ecb7d718b4bd682ab0d0f68bce82, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!20 &963194227 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &963194228 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + serializedVersion: 2 + m_LocalRotation: {x: 0.0013921931, y: 0.9848068, z: -0.17364798, w: 0.00024548118} + m_LocalPosition: {x: 0, y: 6, z: 14} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 20, y: 180, z: 0.162} +--- !u!114 &963194229 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 963194225} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d741c2b5cb0190448822896128d51f8a, type: 3} + m_Name: + m_EditorClassIdentifier: + pickedMesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} + targetMesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} + pickedMaterial: {fileID: 2100000, guid: d35e58ef8c9e0e1429517c447ba73497, type: 2} + targetMaterial: {fileID: 2100000, guid: f1f2a238089ca461f9383525476c3a2b, type: 2} + maxPickDistance: 2 + maxImpulseStrength: 3 + leverage: 10 + splitPickedRopeOnKey: 32 + ropes: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 1197291658} + - {fileID: 0} +--- !u!1 &1197291657 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1197291660} + - component: {fileID: 1197291658} + - component: {fileID: 1197291661} + - component: {fileID: 1197291659} + m_Layer: 0 + m_Name: Swing1_Rope + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1197291658 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1197291657} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 325b217b839086b4ca705834516bc0d5, type: 3} + m_Name: + m_EditorClassIdentifier: + radius: 0.05 + radialVertices: 6 + isLoop: 0 + material: {fileID: 2100000, guid: 189732c736fdb544f98524f96c34aff6, type: 2} + shadowMode: 1 + rendering: + useSimpleLineRenderer: 1 + simpleLineWidth: 0.02 + spawnPoints: + - x: 0 + y: 0 + z: 0 + - x: -2.4452248 + y: 0.06797419 + z: 0.039803684 + interpolation: 0 + simulation: + enabled: 1 + resolution: 5 + massPerMeter: 2 + stiffness: 1 + energyLoss: 0.005 + lengthMultiplier: 1 + gravityMultiplier: 1 + useCustomGravity: 0 + customGravity: + x: 0 + y: -9.81 + z: 0 + substeps: 2 + solverIterations: 3 + collisions: + enabled: 0 + influenceRigidbodies: 0 + stride: 2 + friction: 0.1 + collisionMargin: 0.025 + ignoreLayers: + serializedVersion: 2 + m_Bits: 0 +--- !u!114 &1197291659 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1197291657} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3c7388c73173748148c4ba5f2ad6c713, type: 3} + m_Name: + m_EditorClassIdentifier: + type: 3 + ropeLocation: 1 + autoFindRopeLocation: 0 + rigidbodySettings: + body: {fileID: 562189918} + stiffness: 0.1 + damping: 0.1 + transformSettings: + transform: {fileID: 0} + localConnectionPoint: + x: 0 + y: 1.25 + z: 0 +--- !u!4 &1197291660 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1197291657} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1.34375, y: -0.1, z: 0.938} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 906432239} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1197291661 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1197291657} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3c7388c73173748148c4ba5f2ad6c713, type: 3} + m_Name: + m_EditorClassIdentifier: + type: 0 + ropeLocation: 0 + autoFindRopeLocation: 0 + rigidbodySettings: + body: {fileID: 0} + stiffness: 0.15 + damping: 0.05 + transformSettings: + transform: {fileID: 7215318252446853075} + localConnectionPoint: + x: -4.75 + y: 2.5 + z: 6 +--- !u!850595691 &2073191939 +LightingSettings: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Settings.lighting + serializedVersion: 9 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_RealtimeEnvironmentLighting: 1 + m_BounceScale: 1 + m_AlbedoBoost: 1 + m_IndirectOutputScale: 1 + m_UsingShadowmask: 0 + m_BakeBackend: 2 + m_LightmapMaxSize: 1024 + m_LightmapSizeFixed: 0 + m_UseMipmapLimits: 1 + m_BakeResolution: 40 + m_Padding: 2 + m_LightmapCompression: 3 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAO: 0 + m_MixedBakeMode: 0 + m_LightmapsBakeMode: 1 + m_FilterMode: 1 + m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} + m_ExportTrainingData: 0 + m_EnableWorkerProcessBaking: 1 + m_TrainingDataDestination: TrainingData + m_RealtimeResolution: 2 + m_ForceWhiteAlbedo: 0 + m_ForceUpdates: 0 + m_PVRCulling: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_LightProbeSampleCountMultiplier: 4 + m_PVRBounces: 2 + m_PVRMinBounces: 2 + m_PVREnvironmentImportanceSampling: 1 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_RespectSceneVisibilityWhenBakingGI: 0 +--- !u!1001 &7215318252446853065 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1807824197224447177, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_Name + value: Environment + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalPosition.y + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} +--- !u!4 &7215318252446853075 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6355862402819174107, guid: fc3b5a3644d842a44a1bc8eb5e72a975, type: 3} + m_PrefabInstance: {fileID: 7215318252446853065} + m_PrefabAsset: {fileID: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 963194228} + - {fileID: 705507995} + - {fileID: 906432239} + - {fileID: 7215318252446853065} diff --git a/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main 1.unity.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main 1.unity.meta new file mode 100644 index 000000000..a06f8306e --- /dev/null +++ b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/Main 1.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3a8359e6e75ad814fa648556ce4fba40 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/New.unity b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/New.unity new file mode 100644 index 000000000..cf39af349 --- /dev/null +++ b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/New.unity @@ -0,0 +1,503 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &203844586 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 203844589} + - component: {fileID: 203844588} + - component: {fileID: 203844587} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &203844587 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 203844586} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UsePipelineSettings: 1 + m_AdditionalLightsShadowResolutionTier: 2 + m_CustomShadowLayers: 0 + m_LightCookieSize: {x: 1, y: 1} + m_LightCookieOffset: {x: 0, y: 0} + m_SoftShadowQuality: 0 + m_RenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_ShadowRenderingLayersMask: + serializedVersion: 0 + m_Bits: 1 + m_Version: 4 + m_LightLayerMask: 1 + m_ShadowLayerMask: 1 + m_RenderingLayers: 1 + m_ShadowRenderingLayers: 1 +--- !u!108 &203844588 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 203844586} + m_Enabled: 1 + serializedVersion: 11 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ForceVisible: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 + m_LightUnit: 1 + m_LuxAtDistance: 1 + m_EnableSpotReflector: 1 +--- !u!4 &203844589 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 203844586} + serializedVersion: 2 + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &961739749 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 961739753} + - component: {fileID: 961739752} + - component: {fileID: 961739751} + - component: {fileID: 961739750} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &961739750 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 961739749} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 +--- !u!81 &961739751 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 961739749} + m_Enabled: 1 +--- !u!20 &961739752 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 961739749} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &961739753 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 961739749} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 3.56, z: -5.21} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1619065651 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1619065655} + - component: {fileID: 1619065654} + - component: {fileID: 1619065653} + - component: {fileID: 1619065652} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!65 &1619065652 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619065651} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1619065653 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619065651} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1619065654 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619065651} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1619065655 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619065651} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 50, y: 0.2, z: 50} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 961739753} + - {fileID: 203844589} + - {fileID: 1619065655} diff --git a/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/New.unity.meta b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/New.unity.meta new file mode 100644 index 000000000..dcbcf397c --- /dev/null +++ b/Assets/Scripts/ThirdParty/Rope/Examples/00_Main/New.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 30247964b93529147b0e83456f80e89c +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs b/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs index 4ff3f8385..09e493d05 100644 --- a/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs +++ b/Assets/Scripts/ThirdParty/Rope/Helpers/SimpleRopeInteraction.cs @@ -50,7 +50,7 @@ namespace NBF ropes.Remove(rope); var newRopes = new Rope[2]; - rope.SplitAt(particle, newRopes); + // rope.SplitAt(particle, newRopes); if (newRopes[0] != null) ropes.Add(newRopes[0]); if (newRopes[1] != null) ropes.Add(newRopes[1]); diff --git a/Assets/Scripts/ThirdParty/Rope/Rope.cs b/Assets/Scripts/ThirdParty/Rope/Rope.cs index f744e4667..dc86f1c61 100644 --- a/Assets/Scripts/ThirdParty/Rope/Rope.cs +++ b/Assets/Scripts/ThirdParty/Rope/Rope.cs @@ -36,13 +36,6 @@ namespace NBF } } - public struct OnSplitParams - { - public int minParticleIndex; - public int maxParticleIndex; - public Measurements preSplitMeasurements; - } - public struct EditorColors { public Color ropeSegments; @@ -80,9 +73,8 @@ namespace NBF { [Tooltip("使用简单线渲染而非完整网格渲染。适用于细绳如鱼线,性能更好。")] public bool useSimpleLineRenderer; - - [Tooltip("简单线渲染的宽度。")] - public float simpleLineWidth; + + [Tooltip("简单线渲染的宽度。")] public float simpleLineWidth; } [Space] public RenderingSettings rendering = new RenderingSettings() @@ -91,13 +83,6 @@ namespace NBF simpleLineWidth = 0.02f }; - // public CustomMeshSettings customMesh = new CustomMeshSettings() - // { - // mesh = null, - // rotation = 90.0f, - // scale = Vector3.one, - // stretch = false, - // }; [Tooltip("用于初始放置绳子在世界中的生成点。目前,连续的生成点对被视为线性线段。")] [DisableInPlayMode] public List spawnPoints = new List(); @@ -157,7 +142,7 @@ namespace NBF solverIterations = 2, }; - + [System.Serializable] public struct CollisionSettings { @@ -218,7 +203,7 @@ namespace NBF protected bool initialized; protected bool computingSimulationFrame; protected bool simulationDisabledPrevFrame; - protected bool wasSplit; + protected float timeSinceFixedUpdate; protected JobHandle simulationFrameHandle; @@ -380,7 +365,6 @@ namespace NBF /// /// 模拟粒子的索引 /// 世界空间中的期望位置 - /// 可使用的最大允许冲量强度。如果为零,则不应用限制。 public void SetPositionAt(int particleIndex, float3 position) { if (!Initialize() || particleIndex < 0 || particleIndex >= positions.Length) @@ -606,91 +590,10 @@ namespace NBF return positions.GetLengthOfCurve(isLoop); } - - protected Rope InstantiateSplitRope(int minIdx, int maxIdx, string identifier) - { - var count = maxIdx - minIdx + 1; - if (minIdx < 0 || maxIdx > positions.Length - 1 || count < 2) - { - return null; - } - - // 创建两个大致放置在新绳子位置的生成点(这将创建漂亮的双切线) - var targetLength = _measurements.realCurveLength * ((float)count / _measurements.particleCount); - var point0 = positions[minIdx]; - var point1 = positions[maxIdx]; - var delta = point1 - point0; - var simplifiedLength = math.length(delta); - point1 += math.normalizesafe(delta) * (targetLength - simplifiedLength); - - var rope = Instantiate(gameObject, Vector3.zero, Quaternion.identity).GetComponent(); - rope.name = identifier; - rope.isLoop = false; - rope.spawnPoints = new List() - { - point0, - point1, - }; - - if (rope.Initialize()) - { - // 现在更新模拟粒子以完全匹配原始绳子 - for (int i = 0; i < rope.positions.Length; i++) - { - var sourceIdx = minIdx + i; - if (sourceIdx >= positions.Length) - { - break; - } - - rope.positions[i] = positions[sourceIdx]; - rope.prevPositions[i] = prevPositions[sourceIdx]; - } - - // 使新绳子与旧绳子大小相同 - rope._measurements.realCurveLength = rope.GetCurrentLength(); - rope._measurements.particleSpacing = _measurements.particleSpacing; - - var param = new OnSplitParams() - { - minParticleIndex = minIdx, - maxParticleIndex = maxIdx, - preSplitMeasurements = _measurements, - }; - - rope.SendMessage("OnRopeSplit", param, SendMessageOptions.DontRequireReceiver); - } - - return rope; - } - + /// - /// 在特定模拟粒子处分割绳子并返回新实例化游戏对象的绳子组件。确保 - /// 提供的数组正好有2个槽位。将向每个新创建的绳子发送Unity消息'OnRopeSplit(Rope.OnSplitParams)'。 + /// 计算真实曲线 /// - /// 分割点的模拟粒子索引 - /// 如果不为null,一个正好有2个元素的数组,其中将返回新的绳子游戏对象 - public void SplitAt(int particleIndex, Rope[] outNewRopes = null) - { - if (!Initialize() || (outNewRopes != null && outNewRopes.Length != 2) || wasSplit) - { - return; - } - - wasSplit = true; - - var fst = InstantiateSplitRope(0, particleIndex, name + "_split0"); - var snd = InstantiateSplitRope(particleIndex + 1, positions.Length - 1, name + "_split1"); - - Destroy(gameObject); - - if (outNewRopes != null) - { - outNewRopes[0] = fst; - outNewRopes[1] = snd; - } - } - protected void ComputeRealCurve(Allocator allocator, out Measurements measurements, out NativeArray points) { @@ -800,7 +703,7 @@ namespace NBF { lineRenderer = gameObject.AddComponent(); } - + lineRenderer.useWorldSpace = true; lineRenderer.loop = isLoop; lineRenderer.widthMultiplier = rendering.simpleLineWidth; @@ -809,7 +712,7 @@ namespace NBF lineRenderer.receiveShadows = false; lineRenderer.alignment = LineAlignment.View; } - + // 状态 ComputeRealCurve(Allocator.Persistent, out _measurements, out positions); @@ -957,6 +860,9 @@ namespace NBF protected Collider[] collisionQueryBuffer = new Collider[MaxCollisionPlanesPerParticle]; + /// + /// 更新碰撞平面 + /// public void UpdateCollisionPlanes() { if (!collisions.enabled) @@ -1059,6 +965,9 @@ namespace NBF Profiler.EndSample(); } + /// + /// 准备刚体连接 + /// protected void PrepareRigidbodyConnections() { Profiler.BeginSample(nameof(PrepareRigidbodyConnections)); @@ -1116,6 +1025,9 @@ namespace NBF Profiler.EndSample(); } + /// + /// 应用刚体反馈 + /// protected void ApplyRigidbodyFeedback() { Profiler.BeginSample(nameof(ApplyRigidbodyFeedback)); @@ -1179,6 +1091,9 @@ namespace NBF Profiler.EndSample(); } + /// + /// 安排下一个模拟帧 + /// protected void ScheduleNextSimulationFrame() { Profiler.BeginSample(nameof(ScheduleNextSimulationFrame)); @@ -1240,6 +1155,9 @@ namespace NBF Profiler.EndSample(); } + /// + /// 时间表插值 + /// protected void ScheduleInterpolation() { if (interpolation == RopeInterpolation.None) @@ -1302,6 +1220,9 @@ namespace NBF Profiler.EndSample(); } + /// + /// 完成先前的模拟帧 + /// protected void CompletePreviousSimulationFrame() { if (!computingSimulationFrame) @@ -1317,46 +1238,6 @@ namespace NBF Profiler.EndSample(); } - protected static void FillMeshFrames(ref NativeArray positions, ref NativeArray bitangents, - Matrix4x4[] meshFrames, float spacing, bool isLoop, float rotationOffset, Vector3 scaleMultiplier, - bool stretch) - { - var scale = scaleMultiplier * 0.5f * spacing; - if (stretch) - { - scale.z = scaleMultiplier.z * 0.5f; - } - - var currentRotation = 0.0f; - for (var i = 0; i < positions.Length; i++) // 在这里使用positions数组,希望编译器能优化掉边界检查... - { - var tangent = Vector3.zero; - if (isLoop) - { - tangent = positions[(i + 1) % positions.Length] - positions[i]; - } - else - { - tangent = i < positions.Length - 1 - ? positions[i + 1] - positions[i] - : positions[i] - positions[i - 1]; - } - - var frameScale = stretch - ? new Vector3(scale.x, scale.y, scale.z * tangent.magnitude) - : scale; - tangent.Normalize(); - - var frameRotation = Quaternion.LookRotation(tangent, bitangents[i]) * - Quaternion.Euler(0.0f, 0.0f, currentRotation); - currentRotation += rotationOffset; - - customMeshFrames[i] = Matrix4x4.TRS(positions[i], frameRotation, frameScale); - } - } - - protected static Matrix4x4[] customMeshFrames; - protected void SubmitToRenderer() { if (material == null) @@ -1502,6 +1383,8 @@ namespace NBF } #endif + #region Jobs + [BurstCompile] private struct SimulateJob : IJob { @@ -1807,5 +1690,7 @@ namespace NBF } } } + + #endregion } } \ No newline at end of file diff --git a/Assets/Scripts/ThirdParty/Rope/RopeConnection.cs b/Assets/Scripts/ThirdParty/Rope/RopeConnection.cs index c263d03f2..e23479f05 100644 --- a/Assets/Scripts/ThirdParty/Rope/RopeConnection.cs +++ b/Assets/Scripts/ThirdParty/Rope/RopeConnection.cs @@ -119,23 +119,7 @@ namespace NBF particleIndex = rope.GetParticleIndexAt(ropeDistance); } } - - public void OnRopeSplit(Rope.OnSplitParams p) - { - if (autoFindRopeLocation) - { - // There is no way to determine which side of the split this component was located, just remove it... - Destroy(this); - } - else - { - var idx = p.preSplitMeasurements.GetParticleIndexAt(ropeLocation * p.preSplitMeasurements.realCurveLength); - if (idx < p.minParticleIndex || idx > p.maxParticleIndex) - { - Destroy(this); - } - } - } + public void OnDisable() { diff --git a/Packages/manifest.json b/Packages/manifest.json index bc73693ca..8eba0a6be 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -2,7 +2,7 @@ "dependencies": { "com.unity.2d.sprite": "1.0.0", "com.unity.ai.navigation": "2.0.8", - "com.unity.burst": "1.8.24", + "com.unity.burst": "1.8.25", "com.unity.collab-proxy": "2.8.2", "com.unity.collections": "2.5.7", "com.unity.ide.rider": "3.0.36", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 7522788da..3378ff84c 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -215,7 +215,7 @@ "url": "https://packages.unity.com" }, "com.unity.burst": { - "version": "1.8.24", + "version": "1.8.25", "depth": 0, "source": "registry", "dependencies": { diff --git a/UserSettings/EditorUserSettings.asset b/UserSettings/EditorUserSettings.asset index 2ec8c451b..2311b0518 100644 --- a/UserSettings/EditorUserSettings.asset +++ b/UserSettings/EditorUserSettings.asset @@ -9,35 +9,35 @@ EditorUserSettings: value: 18134705175a055722080a3115371d4a0d55006876786860616b0471b8b07a68ffab74f9ee2a3a30300cea1a11320d0beb1a0c25f7060f494b4cc80018eb09361fc211cb1f862d19c51d19dcc413d6ade0d8ddfcddf9f4d9d29195fcfde6ebeae6f0a9c9afa6f8c5b89ff7a1aacececac4eba4d7c9d28bda flags: 0 RecentlyUsedSceneGuid-0: - value: 50035657070c0b0c55565d7b427a0c44154e4c2e7b7d75627f2c1c32e3b46639 - flags: 0 - RecentlyUsedSceneGuid-1: - value: 5300575451055d580b585f20457a5944134e197d7b2e22617e7a1e66bae1313a - flags: 0 - RecentlyUsedSceneGuid-2: - value: 5301015556035e585c57082643210e4410164b7d2a2923327a791e35e3b3636f - flags: 0 - RecentlyUsedSceneGuid-3: value: 0652525055575c5d5c0f5c7a1477094440151a2b2f2a2434747d4835e1e46661 flags: 0 - RecentlyUsedSceneGuid-4: + RecentlyUsedSceneGuid-1: value: 5505015f5c515a085f5b092149760f441716407a787d7564287b1b36e7e1366e flags: 0 - RecentlyUsedSceneGuid-5: + RecentlyUsedSceneGuid-2: value: 0707515e03070c585e5f0f7513770f444f154f28747b2060747f1e35bae26d6c flags: 0 - RecentlyUsedSceneGuid-6: + RecentlyUsedSceneGuid-3: value: 0007065353055f0c0c0b5f2347725c44474f402e7878756629711f62e6b6606b flags: 0 - RecentlyUsedSceneGuid-7: + RecentlyUsedSceneGuid-4: value: 0108010453510c585c5b0d711677074613154f787d702561797f4b67e1b4656d flags: 0 - RecentlyUsedSceneGuid-8: + RecentlyUsedSceneGuid-5: value: 5102010054540a0e555c5d7615775a48171648737d792533752a1c31bab4603d flags: 0 - RecentlyUsedSceneGuid-9: + RecentlyUsedSceneGuid-6: value: 505203005253585d5e5d0f7515715a4447164e7d2e707e657a7c4863b7b2313d flags: 0 + RecentlyUsedSceneGuid-7: + value: 0008075000545f0d5c5c0a2112710e44124f402f747d7061742a4430b7b1653b + flags: 0 + RecentlyUsedSceneGuid-8: + value: 50010652520c5f0f0f575f77427a0e444115482f747b72657b2f4563e7b86d3b + flags: 0 + RecentlyUsedSceneGuid-9: + value: 50500c55500c0c0d08595923147b0e4410164e7e747d73662e2c4935e0e16068 + flags: 0 UnityEditor.ShaderGraph.Blackboard: value: 18135939215a0a5004000b0e15254b524c030a3f2964643d120d1230e9e93a3fd6e826abbd2e2d293c4ead313b08042de6030a0afa240c0d020be94c4ba75e435d8715fa32c70d15d11612dacc11fee5d3c5d1fe9ab1bf968e93e2ffcbc3e7e2f0b3ffe0e8b0be9afeffa9ffff8e85dd8390e2969e8899daa7 flags: 0