Marble movement

How do I make a sphere in Unity move like a marble. I have studied rigidbody.AddForce and it is not moving my player. Also, it will not allow my sphere to move. Can someone forward me to a tutorial that will help me. Thanks.

function FixedUpdate() {
	if (grounded) {
		// We are grounded, so recalculate movedirection directly from axes
		moveDirection = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
		moveDirection= transform.TransformDirection(moveDirection);
		moveDirection *= speed;
		
		if (Input.GetButton ("Jump")) {
			moveDirection.y = jumpSpeed;
			audio.Play();
		}
		
		
		
	}

	// Apply gravity
	moveDirection.y -= gravity * Time.deltaTime;
	
	// Move the controller
	var controller : CharacterController = GetComponent(CharacterController);
	var flags = controller.Move(moveDirection	* Time.deltaTime);
	grounded = (flags  CollisionFlags.CollidedBelow) != 0;
}

I don’t think the character controller works with physics, you need a rigid body and to control it that way instead.

If you don’t mind the price, I have a project on the Asset Store called Bawl Physics that controls the ball rolling physics.
http://forum.unity3d.com/threads/78771-Bawl-Physics-Game?p=504344#post504344

I’m currently trying to come up with a simple fun little game for a 5 year old, and could well end up buying that cause I keep having this idea to make it some kind of ball like character. :smile:

Just to let you know, there are two modes for control in Bawl Physics, SideScrolling and full 3D control. The full 3D control needs a bit of work which I’m trying to work on right now but its useable at the moment. The SideScrolling control works just fine though, the only thing is that you need to turn the Fixed Timestep down to about .01 or else you have to press jump 10 times before you actually jump.