Game update!
http://search3.idrive.com/driveway/jsp/dwa...p?id=l9n2i2y9a7The following fixes and updates have been made:
New Stuff:-Gravity!

Press the Space bar to jump. You will fall at an ever-increasing speed until you hit the ground (no air resistance, just the acceleration of gravity). You are not able to jump while in the air.
-Frames Per Second counter. The number in the upper-left quadrant of the screen is your Frames Per Second. I limited the max framerate to 60, in order to keep it in sync with LCD monitors. Ideally, that Frames Per Second number should always be 60, but as you'll see...it won't be.

-Included that DirectX 9 .DLL file that was missing and attached a .txt file explaining how to install the program.
[EDIT] the text file says to put it in Windows\System. I believe that is supposed to be Windows\System32.
Fix:-The camera now crashes properly into the ground, no matter where the ground is. This should work for any ground shape now. Before, it only worked if the ground was flat.
Known Bugs:-Poor Framerate while a mouse button is held down (30 FPS on my computer).
I honestly don't know what I can do about this. It takes all the code I have in there to move the camera properly. I don't know how I can fix this.
There really isn't that much code...I don't know why it's slowing down so badly. I'm still looking into this.
(Well...I guess my camera code is 350 lines long, but only about 100 of that is for any one mouse button. It shouldn't be *this* slow, should it? It shouldn't cut my framerate in Half! Besides, even with no mouse buttons pressed, a lot of camera code is executed.)
-Game goes out of sync when the framerate is below 60 frames per second.
Basically, the lower the framerate is, the slower the code runs. Ideally, the code should always run at 60 FPS no matter what the video framerate is doing. The video shouldn't slow down the entire program.
I am researching a timer/sync system which may solve the sync issue. This MUST be resolved before the game can be made multiplayer, or else players will be out of sync with each other. Hold the mouse button and move. You'll notice that you suddenly move slower than when you're not holding the mouse button. That is the sync issue I need to address and fix.
Here is my solution.
http://www.thegamecreators.com/data/newsle...ssue_42.html#13I just need to figure out how to impliment it.
-If you walk/jump off the game world, you will not fall properly. This is because I use "raycasting" to calculate where the ground is. Basically, I fire a "beam" straight down from the player, in order to find the distance to the ground. The beam tells my program how far away the nearest object is that the beam touches. If there is no object (aka.ground), it gives me a value of 0. Therefore my program thinks you're on the ground (distance of 0 to the ground, therefore you must be on the ground, right? RIGHT?

) and you don't fall.
This won't be an issue for the actual gameplay because there will ALWAYS be some kind of ground eventually.

I made sure to make the beam long enough that even if you're falling off the highest mountain into an ocean, it will be able to see the ground. B) (you may not survive the fall, but hey, at least know how far you fell!

)
Anyone who wants to mess around with this program and let me know how it works, that would be awesome!
The controls again are:
W = move forward
S = move backward
A = turn left
D = turn right
Q = strafe left
E = strafe right
SPACEBAR = jump
Left-click the mouse to control the camera with the mouse.
Right-click the mouse to rotate your player while controlling the camera with the mouse.
[EDIT] I fixed the framerate issue when holding down a mouse button. That fix will appear in the next release.

It was actually an easy fix: using a different function to check for collisions. The one I had in there was disgustingly slow.

I haven't yet been able to get the sync issue resolved. I've ben fighting with it all evening with no success.
