修改捏线逻辑
This commit is contained in:
@@ -77,6 +77,8 @@ MonoBehaviour:
|
|||||||
waterSampleStep: 2
|
waterSampleStep: 2
|
||||||
waterInterpolate: 1
|
waterInterpolate: 1
|
||||||
waterUpdateEvery: 1
|
waterUpdateEvery: 1
|
||||||
|
waterLiftStrength: 0.25
|
||||||
|
keepStartAdjacentNodeFollow: 1
|
||||||
waterPostConstraintIterations: 2
|
waterPostConstraintIterations: 2
|
||||||
renderSubdivisionsIdle: 6
|
renderSubdivisionsIdle: 6
|
||||||
renderSubdivisionsMoving: 2
|
renderSubdivisionsMoving: 2
|
||||||
@@ -209,7 +211,7 @@ GameObject:
|
|||||||
- component: {fileID: 135844594273256032}
|
- component: {fileID: 135844594273256032}
|
||||||
- component: {fileID: 1923684598771359451}
|
- component: {fileID: 1923684598771359451}
|
||||||
- component: {fileID: 2475726686148443307}
|
- component: {fileID: 2475726686148443307}
|
||||||
m_Layer: 7
|
m_Layer: 15
|
||||||
m_Name: Lure
|
m_Name: Lure
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
@@ -494,7 +496,7 @@ GameObject:
|
|||||||
- component: {fileID: 153691655494134957}
|
- component: {fileID: 153691655494134957}
|
||||||
- component: {fileID: 2717383850592950062}
|
- component: {fileID: 2717383850592950062}
|
||||||
- component: {fileID: 6678694395924494533}
|
- component: {fileID: 6678694395924494533}
|
||||||
m_Layer: 16
|
m_Layer: 15
|
||||||
m_Name: Float
|
m_Name: Float
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
@@ -672,6 +674,9 @@ MonoBehaviour:
|
|||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier: Assembly-CSharp::BobberPresentationController
|
m_EditorClassIdentifier: Assembly-CSharp::BobberPresentationController
|
||||||
fallbackWaterLevel: 0
|
fallbackWaterLevel: 0
|
||||||
|
waterRenderer: {fileID: 0}
|
||||||
|
waterCollisionLayer: 1
|
||||||
|
waterQueryObjectWidth: 0.5
|
||||||
waterProviderBehaviour: {fileID: 114112904742580403}
|
waterProviderBehaviour: {fileID: 114112904742580403}
|
||||||
enterWaterDepth: 0.002
|
enterWaterDepth: 0.002
|
||||||
exitWaterDepth: -0.01
|
exitWaterDepth: -0.01
|
||||||
@@ -699,10 +704,14 @@ MonoBehaviour:
|
|||||||
planarTiltThreshold: 0.3
|
planarTiltThreshold: 0.3
|
||||||
planarDominanceMultiplier: 1.2
|
planarDominanceMultiplier: 1.2
|
||||||
postureHysteresis: 0.04
|
postureHysteresis: 0.04
|
||||||
|
postureConfirmTime: 0.08
|
||||||
|
postureSwitchCooldown: 0.1
|
||||||
tiltedAngle: 38
|
tiltedAngle: 38
|
||||||
lyingAngle: 88
|
lyingAngle: 88
|
||||||
uprightMaxTiltAngle: 8
|
uprightMaxTiltAngle: 8
|
||||||
planarTiltFactor: 120
|
planarTiltFactor: 120
|
||||||
|
planarDirectionDeadZone: 0.01
|
||||||
|
planarDirectionLerpSpeed: 10
|
||||||
rotationLerpSpeed: 8
|
rotationLerpSpeed: 8
|
||||||
debugResetKey: 1
|
debugResetKey: 1
|
||||||
debugTapKey: 1
|
debugTapKey: 1
|
||||||
@@ -710,6 +719,8 @@ MonoBehaviour:
|
|||||||
debugLiftKey: 1
|
debugLiftKey: 1
|
||||||
debugBlackDriftKey: 1
|
debugBlackDriftKey: 1
|
||||||
drawDebug: 1
|
drawDebug: 1
|
||||||
|
UseTestPosture: 0
|
||||||
|
TestPosture: 0
|
||||||
--- !u!1 &1933124697579601
|
--- !u!1 &1933124697579601
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -787,6 +798,8 @@ MonoBehaviour:
|
|||||||
waterSampleStep: 2
|
waterSampleStep: 2
|
||||||
waterInterpolate: 1
|
waterInterpolate: 1
|
||||||
waterUpdateEvery: 1
|
waterUpdateEvery: 1
|
||||||
|
waterLiftStrength: 0.25
|
||||||
|
keepStartAdjacentNodeFollow: 1
|
||||||
waterPostConstraintIterations: 2
|
waterPostConstraintIterations: 2
|
||||||
renderSubdivisionsIdle: 6
|
renderSubdivisionsIdle: 6
|
||||||
renderSubdivisionsMoving: 2
|
renderSubdivisionsMoving: 2
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
using System;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace NBF
|
namespace NBF
|
||||||
@@ -14,8 +15,11 @@ namespace NBF
|
|||||||
private Rigidbody rb;
|
private Rigidbody rb;
|
||||||
|
|
||||||
|
|
||||||
|
private float maxCatchupDuration = 0.5f;
|
||||||
private Transform targetTransform;
|
private Transform targetTransform;
|
||||||
private float originalSpring;
|
private float originalSpring;
|
||||||
|
private float pinchElapsedTime;
|
||||||
|
|
||||||
|
|
||||||
public bool isPinched { get; private set; }
|
public bool isPinched { get; private set; }
|
||||||
|
|
||||||
@@ -31,27 +35,37 @@ namespace NBF
|
|||||||
|
|
||||||
void FixedUpdate()
|
void FixedUpdate()
|
||||||
{
|
{
|
||||||
if (isPinched && targetTransform != null)
|
if (isPinched && !moveToTargetDone && targetTransform != null)
|
||||||
{
|
{
|
||||||
transform.position =
|
pinchElapsedTime += Time.fixedDeltaTime;
|
||||||
Vector3.MoveTowards(transform.position, targetTransform.position, Time.deltaTime * _speed);
|
// transform.position =
|
||||||
if (!moveToTargetDone)
|
// Vector3.MoveTowards(transform.position, targetTransform.position, Time.deltaTime * _speed);
|
||||||
|
rb.MovePosition(Vector3.MoveTowards(transform.position, targetTransform.position,
|
||||||
|
Time.deltaTime * _speed));
|
||||||
|
if (Vector3.Distance(transform.position, targetTransform.position) < 0.1f ||
|
||||||
|
pinchElapsedTime >= maxCatchupDuration)
|
||||||
{
|
{
|
||||||
if (Vector3.Distance(transform.position, targetTransform.position) < 0.1f)
|
moveToTargetDone = true;
|
||||||
{
|
|
||||||
moveToTargetDone = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (moveToTargetDone)
|
|
||||||
{
|
|
||||||
transform.position = targetTransform.position;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SyncPosition();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LateUpdate()
|
||||||
|
{
|
||||||
|
SyncPosition();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SyncPosition()
|
||||||
|
{
|
||||||
|
if (!isPinched) return;
|
||||||
|
if (!moveToTargetDone) return;
|
||||||
|
rb.MovePosition(targetTransform.position);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 外部调用:开始捏住流程
|
// 外部调用:开始捏住流程
|
||||||
public void StartPinch(Transform fingerTransform, float speed = 3)
|
public void StartPinch(Transform fingerTransform, float speed = 3, float _maxCatchupDuration = 0.3f)
|
||||||
{
|
{
|
||||||
_speed = speed;
|
_speed = speed;
|
||||||
Rigidbody fingerRb = fingerTransform.GetComponent<Rigidbody>();
|
Rigidbody fingerRb = fingerTransform.GetComponent<Rigidbody>();
|
||||||
@@ -61,6 +75,8 @@ namespace NBF
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
maxCatchupDuration = _maxCatchupDuration;
|
||||||
|
pinchElapsedTime = 0f;
|
||||||
isPinched = true;
|
isPinched = true;
|
||||||
rb.useGravity = false;
|
rb.useGravity = false;
|
||||||
rb.isKinematic = true;
|
rb.isKinematic = true;
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ Material:
|
|||||||
- _Crest_CausticsDepthOfField: 6
|
- _Crest_CausticsDepthOfField: 6
|
||||||
- _Crest_CausticsDistortionScale: 250
|
- _Crest_CausticsDistortionScale: 250
|
||||||
- _Crest_CausticsDistortionStrength: 0.16
|
- _Crest_CausticsDistortionStrength: 0.16
|
||||||
- _Crest_CausticsEnabled: 0
|
- _Crest_CausticsEnabled: 1
|
||||||
- _Crest_CausticsFocalDepth: 2
|
- _Crest_CausticsFocalDepth: 2
|
||||||
- _Crest_CausticsMotionBlur: 1
|
- _Crest_CausticsMotionBlur: 1
|
||||||
- _Crest_CausticsScrollSpeed: 1
|
- _Crest_CausticsScrollSpeed: 1
|
||||||
@@ -71,7 +71,7 @@ Material:
|
|||||||
- _Crest_ShadowsAffectsAmbientFactor: 0.5
|
- _Crest_ShadowsAffectsAmbientFactor: 0.5
|
||||||
- _Crest_SunBoost: 2
|
- _Crest_SunBoost: 2
|
||||||
m_Colors:
|
m_Colors:
|
||||||
- _Crest_AbsorptionColor: {r: 0, g: 0, b: 0, a: 0.1019608}
|
- _Crest_AbsorptionColor: {r: 0.34162676, g: 0.6954546, b: 0.85, a: 0.1019608}
|
||||||
- _Crest_Scattering: {r: 0, g: 0, b: 0, a: 1}
|
- _Crest_Scattering: {r: 0, g: 0.09803919, b: 0.19999996, a: 1}
|
||||||
m_BuildTextureStacks: []
|
m_BuildTextureStacks: []
|
||||||
m_AllowLocking: 1
|
m_AllowLocking: 1
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ PhysicsManager:
|
|||||||
m_EnableAdaptiveForce: 0
|
m_EnableAdaptiveForce: 0
|
||||||
m_ClothInterCollisionDistance: 0.1
|
m_ClothInterCollisionDistance: 0.1
|
||||||
m_ClothInterCollisionStiffness: 0.2
|
m_ClothInterCollisionStiffness: 0.2
|
||||||
m_LayerCollisionMatrix: efffffffefffffffefffffffefffffffc020bbffefffffffffffffffffffffffefffffffefffffffefffffffefffffffefffffffffffffffefffffffefffffffffffffffffffffffefffffffffffffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
m_LayerCollisionMatrix: efffffffefffffffefffffffefffffffc020bbffefffffffffffffffffffffffefffffffefffffffefffffffefffffffefffffffffffffffef7fffffef3ff3ffffffffffffffffffef7fffffff7fffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||||
m_SimulationMode: 0
|
m_SimulationMode: 0
|
||||||
m_AutoSyncTransforms: 0
|
m_AutoSyncTransforms: 0
|
||||||
m_ReuseCollisionCallbacks: 1
|
m_ReuseCollisionCallbacks: 1
|
||||||
|
|||||||
@@ -33,13 +33,13 @@ TagManager:
|
|||||||
-
|
-
|
||||||
-
|
-
|
||||||
- WaterMask
|
- WaterMask
|
||||||
- PW_VFX
|
-
|
||||||
- PW_Object_Small
|
-
|
||||||
- PW_Object_Medium
|
-
|
||||||
- PW_Object_Large
|
-
|
||||||
-
|
-
|
||||||
- Player
|
- Player
|
||||||
- Interactive
|
- Gear
|
||||||
-
|
-
|
||||||
-
|
-
|
||||||
- Boat
|
- Boat
|
||||||
|
|||||||
Reference in New Issue
Block a user