フライパン内部挙動調整

This commit is contained in:
kimura 2021-06-24 12:31:47 +09:00
parent 43282296b7
commit ba1eac2396
1 changed files with 15 additions and 11 deletions

View File

@ -10,6 +10,7 @@ public class PanController : MonoBehaviour, IDragHandler, IBeginDragHandler
{
[SerializeField] private float lerpTime = 0.1f;
private Transform cacheTransform;
private Vector3 firstPos;
private Vector3 offset;
private readonly (float min, float max) borderX = (-1.2f, 3.1f);
private readonly (float min, float max) borderY = (-1.1f, 0.3f);
@ -26,6 +27,7 @@ public class PanController : MonoBehaviour, IDragHandler, IBeginDragHandler
void Start()
{
cacheTransform = gameObject.transform;
firstPos = cacheTransform.position;
prevPos = cacheTransform.position;
deltaTime = 0.5f;
direction = Vector2.left;
@ -33,30 +35,32 @@ public class PanController : MonoBehaviour, IDragHandler, IBeginDragHandler
}
private Vector3 target;
private static float time = .5f;
private float freq = 1f / time;
// Update is called once per frame
void Update()
{
// OnDragが更新されていない場合は方向をゼロにしたいがUpdateでゼロにすると使えなくなるため保留
// if (cacheTransform.position == prevPos)
// {
// direction = Vector2.zero;
// }
if (cacheTransform.position == prevPos)
{
direction = Vector2.zero;
}
if (deltaTime >= 1f)
if (deltaTime >= 1.0f)
{
isMove = !isMove;
deltaTime = 0f;
}
if (!isMove && Mathf.Approximately(transform.position.x, target.x))
if (isMove)
{
direction = direction * -1;
target = transform.position + 1.3f * new Vector3(direction.x, direction.y, 0f);
// transform.position = firstPos + new Vector3(Mathf.Sin(2 * (float)Math.PI * freq * deltaTime) / 2, 0f);
}
transform.position = Vector3.Lerp(transform.position, target, lerpTime * Time.deltaTime);
delta = cacheTransform.position - prevPos;
deltaTime += Time.deltaTime;
delta = cacheTransform.position - prevPos;
prevPos = cacheTransform.position;
deltaTime += Time.deltaTime;
}
public void OnDrag(PointerEventData eventData)