void OnCollisionStay(Collision collision) { if (collision.gameObject.GetComponent <Rigidbody>()) { if (collision.contacts [0].separation < minDistance) { deformableMesh.AddDeformingForce(collision.contacts[0].point, -collision.contacts[0].normal, force, pointSensitivity); } } }
void HandleInput() { Ray inputRay = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Physics.Raycast(inputRay, out hit)) { DeformableMesh deformer = hit.collider.GetComponent <DeformableMesh>(); if (deformer) { Vector3 point = hit.point; point += hit.normal * forceOffset; deformer.AddDeformingForce(point, hit.normal, force, forceOffset); } } }
void OnCollisionStay(Collision collision) { // Clay was put on pottery wheel if (collision.gameObject.GetComponent <PotteryWheel>()) { SetKinematic(true); } else if (collision.gameObject.GetComponent <Rigidbody>()) { if (collision.contacts [0].separation < minDistance) { deformableMesh.AddDeformingForce(collision.contacts[0].point, -collision.contacts[0].normal, force, pointSensitivity); } // to be test on Vive // deformableMesh.AddDeformingForceToCenter(collision.contacts[0].point, -collision.contacts[0].normal, force, pointSensitivity); } }