hi, I’m creating ball game like switchball.
The ball is rigidbody and if keypressed “w” the ball adds force to Vector3.forward, and I want to go ball from current view(if I rotate camera it goes wrong direction). how to do so that ball movement was depended to camera rotation???
should be as simple as camera.main.transform.rotation * Vector3.forward
thank you very very much
Here’s a code using Camera.main.transform
var speed = 10.0;
var gravitypull = 0;
function FixedUpdate() {
rigidbody.AddForce (Vector3(0, gravitypull, 0));
var cameraTransform = Camera.main.transform;
// Forward vector relative to the camera along the x-z plane
var forward = cameraTransform.TransformDirection(Vector3.forward);
forward.y = 0;
forward = forward.normalized;
// Right vector relative to the camera
// Always orthogonal to the forward vector
var right = Vector3(forward.z, 0, -forward.x);
if (Input.GetKey ("w")) {
rigidbody.AddForce(forward * speed * Time.deltaTime);
}
if (Input.GetKey("s")) {
rigidbody.AddForce(forward * -speed * Time.deltaTime);
}
if (Input.GetKey ("d")) {
rigidbody.AddForce(right * speed * Time.deltaTime);
}
if (Input.GetKey ("a")) {
rigidbody.AddForce(right * -speed * Time.deltaTime);
}
}