I made an fps controller (a camera parented to a cube). Assigned the camera a mouselook script (riyuzakisan’s mousemove) and gave the cube ‘servo control’ movement commands (from the tutorial at TutorialsforBlender3D).
It works fine, but a problem occurs whenever the character moves down slope, or falls from a high place:
If any of the WASD keys is held while falling, the character seems immune to gravity (I believe the force applied from the servos has something to do with it).
Once the movement controllers are negative, the character obeys gravity just fine.
Similar thing happens when going down slope - the character glides through empty space ignoring the lack of surface beneath it.
So, in order to avoid ‘flying’, the player must repeteadly tap a movement key instead of holding it down (which needless to say, sucks).
I tried to add a touch controller; which if not triggered; switches to a state that stops the servo motion. Unfortunately, this didn’t do much in stopping the flying effect… Instead it messed up my jump cycle
Do you know of a way to prevent this anomaly?
I’m using servo control so the player doesn’t move through objects; and I haven’t experienced the problem before because my other games consist of mainly flat levels. This one however, is supposed to have tons of slopes so it can’t go unnoticed.
I’m using Blender 2.66a if it matters.
Thanks in advance