I wrote a little raycasting engine similar to the Wolf3D engine, and I'd like to know if this implementation runs fast enough to actually make a smooth little game out of it.
It would be nice if you could just check it out and tell me if it runs smooth on your pc or not (it's a win32 executable). I guess I won't use textured floors and ceilings in a game, because that really slows things down, but I'd like to know if it's stays around 55 fps or higher with textured walls and shading but no textured floors.
http://home.arcor.de/k1n9duk3/files/raycast.zip
My ray casting engine
My ray casting engine
Hail to the K1n9, baby!
http://k1n9duk3.shikadi.net
http://k1n9duk3.shikadi.net
I'm always skeptical of stuff like this, but when my virus scan came up clean I gave it a try.
Looks great!
It works perfectly on my system, with shading and floor/ceiling textures on.
I got 60fps the whole time running, and I had Outlook and Firefox running at the same time.
Although the CPU usage varied between 33-38%
Around a 30MB RAM usage.
I tested it on my laptop, with the following specs (That apply here):
Core2Duo T7500 @ 2.2GHz
Mobility Radeon 2600HD
2GB RAM (PC5300 @ 667 MHz)
Looks great!
It works perfectly on my system, with shading and floor/ceiling textures on.
I got 60fps the whole time running, and I had Outlook and Firefox running at the same time.
Although the CPU usage varied between 33-38%
Around a 30MB RAM usage.
I tested it on my laptop, with the following specs (That apply here):
Core2Duo T7500 @ 2.2GHz
Mobility Radeon 2600HD
2GB RAM (PC5300 @ 667 MHz)
"I just drew this stupid little fish." -- Tom Hall
First of all, thanks for the feedback.
It's good to hear that it works OK.
For the textured floors and ceiling, I tried to just go ahead and draw each pixel directly to the screen. But that turned out to be incredibly slow. I guess that's just the overhead that calling the function for almost every single pixel (around 64000 for this resolution) creates.
I am using a pixel buffer now, so that I can directly write the pixel data without calling any functions. But converting and then drawing that buffer takes some time, too.
I guess I could optimize this stuff a bit by using shift operations instead of division...
It's good to hear that it works OK.
For the textured floors and ceiling, I tried to just go ahead and draw each pixel directly to the screen. But that turned out to be incredibly slow. I guess that's just the overhead that calling the function for almost every single pixel (around 64000 for this resolution) creates.
I am using a pixel buffer now, so that I can directly write the pixel data without calling any functions. But converting and then drawing that buffer takes some time, too.
I guess I could optimize this stuff a bit by using shift operations instead of division...
Hail to the K1n9, baby!
http://k1n9duk3.shikadi.net
http://k1n9duk3.shikadi.net
-
Galaxieretter
- Arachnut
- Posts: 891
- Joined: Thu Nov 01, 2007 2:35
- Location: Lancaster PA
- Contact:
What do you mean with this? The engine itself or a thread like "Hey, look what I've done!" ?Galaxieretter wrote:I could of sworn I saw this somewhere before...
Hail to the K1n9, baby!
http://k1n9duk3.shikadi.net
http://k1n9duk3.shikadi.net