Not logged in, Join Here! or Log In Below:  
News Articles Search    

Submitted by Rye Terrell, posted on August 12, 2001

Image Description, by Rye Terrell

This is a screenshot of a game I have been working on for a little bit. I put it together with DX 8.0 and VC++ 6.0 while soldiering in Bosnia for four months. I was working on a laptop at the time, and needless to say, was lucky if I could pull 30 fps out of it.

When I got back home though and tried it out on my 600mhz PIII with a voodoo 5 card, it fairly screamed. I haven't done an fps check on it since I got back, but I had to lock it down to 30 fps to keep the game playable.

Anyways the object of the game is to avoid getting crushed by the blocks. Cursor keys move you around, while spacebar makes you jump.

I'm pretty sure I'm going to give up on this game - the eye candy isn't SO bad I guess, but I find it monumentally boring.

I'll put the game up on my website so you guys can download it and end it's life with your critiques. ;)

Should be a pretty short download, like 2.5 megs.

Oh, and before I forget, the music and textures are not mine. I just downloaded them and plugged 'em in. ;)


Rye Terrell

Image of the Day Gallery


Message Center / Reader Comments: ( To Participate in the Discussion, Join the Community )
Archive Notice: This thread is old and no longer active. It is here for reference purposes. This thread was created on an older version of the flipcode forums, before the site closed in 2005. Please keep that in mind as you view this thread, as many of the topics and opinions may be outdated.

August 13, 2001, 12:24 PM

i use slate.. but, its too expensive so now i use a stick and sand


August 13, 2001, 12:35 PM

What do you know about raytracers? And what is 'GOOD' real-time raytracing? I mean there are demos out there that actually do realtime raytracing (Heaven7 most notably as somebody has already pointed out).

Also, considering the graphics of this program ... you might actually be able to pull that off at a limited resolution (maybe 512x384). I mean, you have very simple intersection primitives and a rather low triangle count. The spheres are almost free in raytracing as well. If you just had one lightsource it would probably work at an interactive frame rate (something > 15 FPS).

- MK42


August 13, 2001, 01:11 PM

Well, if it's as easy as you're saying, why don't you show us your real-time raytracer? ;)

"What do you know about raytracers?"

Hehe, I understand you're asking that to MC_BAXTON, but what do you know about raytracers?

512x384 and 15 FPS, right? Ok, suppose you want that on a 600 Mhz system, then you have about 200 clock cycles per pixel if your assembly code is perfect, you don't have cache misses and memory is lightning fast. First you need some code to test for ray intersections, even for a sphere that's not blazing fast, and we've got multiple objects here. To be able to speak about raytracing and have realistic lighting and shadow you need at least two ray reflections, so that's a lot of vector calculations and even more intersection tests. You'll also need some expensive calculations to do all the texture mapping and color blending for each ray, so let me know when that code is finished, ok?

No offence, I just wanted to say I wouldn't be able to do it...

Mike Howell

August 13, 2001, 01:23 PM

re: realtime, you are right. At least in the industrial world that I work(ed) in, realtime was defined as having a deterministic response time. The implication was normally a deterministic _short_ response time, but it could range as low as sub-microsecond to multiple hundreds of milliseconds. That's as diverse a range as 1 fps or 500 fps.

Of course, I'm just splitting hairs. Once fps exceeds your ability to notice individual frames, it might as well be 1M fps.


August 13, 2001, 01:25 PM

But, considering the fact that you could do some major speedups for the above game, it should be feasible I think :)

If you'd take a scanline-rejection approach on the scene above you'd find out that for a single horizontal scanline there are probably only 6 objects to consider for *all* pixels on that scanline.
Make an object-list of where each objects (boundingboxes?) start and end on the scanline, and for each pixel there's probably only 1.8 object to consider...
Which would make a hell of a speedup :)


August 13, 2001, 01:28 PM

And that's without using Asm even :)

(Just to restart the asm-versus-higlevel-optimization discussion again :))


August 13, 2001, 01:32 PM

True, and I had that idea in mind too, but the real problems begin when the ray is reflected once or twice...

Doing that first step is so simple because there is very big coherency between the rays, but once they're reflected (e.g. sphere) you need other techniques. Multiple reflections also means you have to calculate texture coordinates and blend colors more than once :-/

J-S Perrier

August 13, 2001, 01:48 PM

I tried the game, it's cool! The music makes it a little more enjoyable. I was wondering something, why is the executable so big? 2.5 Megs is quite big for a simple game like that. Did you link statically with direct x libs?


August 14, 2001, 07:13 PM

Hadnt realized you could take a laptop and code while in service...

I'm 17, thinking about enlisting but I also dont want to. Damn you for giving me another reason!

Rye Terrell

August 17, 2001, 12:28 PM



August 21, 2001, 06:32 PM

Wolfienstien 3d and doom were not raytraced...They were raycast. Significant difference.

This thread contains 41 messages.
First Previous ( To view more messages, select a page: 0 1 ... out of 1) Next Last
Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.