
Simple(Or so I thought..) 2D math
Ok, basically I'm making a small game that communicates over the network, now the network code works fine, but this is my first time programming in OpenGL.
I've got it setup where 4 rotates left, 6 rotates right, and 8 is up and 5 & 2 are down.
I can't seem to get the coordinate updates to work I can rotate just fine but when I press 8 to go forward it goes some random(or so it seems direction)
what is an easy way to solve this?

Re: Simple(Or so I thought..) 2D math
When you rotate, you're also rotating your axes. Pressing 8 after a rotation will cause a forward motion with respect to your new axes, which is why you're not seeing the kind of motion you're expecting.
Try using quaternions for your rotations.

Member
Regular Contributor
Re: Simple(Or so I thought..) 2D math
there is absolutely no need for quaternions in this situation. Use sin and cos to decompose the angle and magnitude into x and y coordinates. So
X+=v*cos(angle)
Y+=v*sin(angle)
something like that

Re: Simple(Or so I thought..) 2D math
Ok, So the axes rotate at with the same incrementation we use to rotate our object?
Right now we have it rotating + or  10.0f.
The way we had it set up is basically like this to change x & y:
float nXPos, nYPos = 0;
//nMovement is 3 pixels
//this is for hitting '8'
if(fHeading >= 0.0f && fHeading =< 90.0f)
{
nXPos = nXPos + (nMovement * cos(fHeading));
nYPos = nYpos + (nMovement * sin(fHeading));
}
then from there we followed the rules of trig for different angles.
So if my axes also rotate how would I adjust for that in my math?

Member
Regular Contributor
Re: Simple(Or so I thought..) 2D math
you have it set up perfectly, your mistake is that sin and cos take arguments in radians and you are giving them in degrees. Just multiply by pi/180

Re: Simple(Or so I thought..) 2D math
Also make sure the camera and projection are plugged correctly, sometimes it's easy to mix up the rotation with the controls, because of one misplaced ",". Just a precaution if it's not the math.
Posting Permissions
 You may not post new threads
 You may not post replies
 You may not post attachments
 You may not edit your posts

Forum Rules