Thank you both for the replies.
To answer you danthekilla, I was trying to make pong simply to start learning Farseer. The first project I started was apparently a bad idea, since a 'ball' can not roll smoothly over multiple 'blocks' that are next to one another without a hack/workaround.
"An object can be static and still moved."
Without manually setting it's position?
"Or you can just make it non static and set the object so it can only go up and down and not left and right."
Well, yeah.. but how do you do that exactly? If it's not static, the ball knocks the paddle off the screen (quite amusing to see, but not the desired effect). If you try to cheat in a simplistic way, like every update setting the paddle's x position back
to where it should be, the ball still collides into the paddle as it would on any other non-static body.
"Or you could just make it really really heavy compared to the ball but there is no need to."
While this could work.. it's most certainly not what I think should need to be done. I really just expected the engine to handle 'IsStatic' within it's own mechanisms during collisions, and not to affect coded applying of impulses.
To d1ag0n, your first suggestion would probably work absolutely fine.. however, the vertical force of a moving paddle would not then be applied to the ball.. correct?
"Or you could just set the paddle up so that the code keeps it from changing angles or positions other than up/down."
Similar to my response to danthekilla, I don't really know how I should go about doing that without having to modify the engine.
To toss another question into this, how can I lock an object's rotation? I'd like to simply turn off a specific body's rotation altogether, like the paddle in this case (but I'd prefer to do it for the ball as well to avoid oddities due to not using an actual
circle). I tried setting the moment of inertia to float.positiveinfinity, but that can quickly result in a NaN error on the angular velocity.