Q:

Ray picking - get direction from pitch and yaw

I am attempting to cast a ray from the center of the screen and check for collisions with objects. 
When rendering, I use these calls to set up the camera:
GL11.glRotated(mPitch, 1, 0, 0);
GL11.glRotated(mYaw, 0, 1, 0);
GL11.glTranslated(mPositionX, mPositionY, mPositionZ);

I am having trouble creating the ray, however.  This is the code I have so far:
ray.origin = new Vector(mPositionX, mPositionY, mPositionZ);
ray.direction = new Vector(?, ?, ?); 

My question is: what should I put in the question mark spots?  I.e. how can I create the ray direction from the pitch and roll? 
Any help would be much appreciated! 

A:

You can treat this as a conversion from spherical coordinates to Cartesian coordinates. 
Assuming the ray should have some length r, your x, y, and z components can be calculated like this:
x = r * sin(mPitch) * cos(mYaw)
y = r * sin(mPitch) * sin(mYaw)
z = r * cos(mPitch)

