Scorched Earth 3D
by
Nitzan Wilnai
nitzanw@yahoo.com
About
Features
Screenshots
Demo
Links


Previews
Review In Czech!
Review In Polish!

7.30.2002
Still working on the texture manager.

Here is a copy of an article from Grassroots Motorsports about Matt and Mine's OTC adventure. You can read it HERE

7.17.2002
Quick update. Got the texture manager working. Some textures are missing so I need to figure out why, but the good news is the size (memory footprint of the entire game) is down to 100mb. This is still more then I expected, but it definitely beats the 500mb or so the game was earlier.

Starting to work on some plans to make the game more modular, so anyone can easily add new tanks, new weapons, etc... etc...

Also I need to find some time to start reading my windows networking book so I can hammer out some network code for this game.

Thats it for today. New awesome version up soon I hope.

7.12.2002
No updates yet, but I wanted to let you guys know what I am working on.

Texture Manager

When loading lots of ms3d files, the current program loads a new texture map for each one. Sometimes they repeat and it takes ALOT of memory. Some 500mb+ for the trees! Ouch! So I am working on a texture manager to bring it down to a more sane 1mb.

More Detailed Terrain

I am working on making the terrain be composed of more triangles, and of having it be texture mapped on the fly. It will make it more detailed and it should look as professional as any commerical product out there.

LOD Terrain

Just like it sounds. Dyanmic level of detail terrain.

I purchased the Afterburner Kit from www.tritonlabs.com. Its amazing! My Game Boy Advanced is finally playable. It works in all lighting conditions. Advance Wars rocks!

I also got my Linux PS2 kit yesterday. I am going to mess around with it. Maybe even port SE3D to it.

Another sweet Scorched Earth 3d game.

6.9.2002
Sorry for the late update. I have been very busy the past 2 months.

Me and my old college roommate Matt entered his race car in the Open Track Challenge. After a fun week of driving at 7 different tracks we came out on top, #1 in our class.

Then I went off to E3 to check out all the new games and the hot booth babes.

The game is coming along slowly. I have been continuing to work on performance issues. The engine is now rendering at upwards of 630,000 Triangles Per Second on my GF1 DDR and P3 800. I recently purchased a GF3 TI 200 (at $99 shipped) and will explore its capabilities.

4.11.2002
In 2 days its my birthday!.

I got alpha blending working for the tree leaves. As you can see by the images. The trees now use alot less polygons and thus render faster.

I changed the landscape so instead of rendering 2 triangles at the leaf nodes, I render 8 triangles one node above that. The usage of vertex arrays makes the rendering of the landscape over 25% faster.

Using glDepthMask(0) and glDepthMask(1) calls for the particle manager now. No need to sort and thus its alot faster and has no slowdown when there are alot of particles around.

My next improvement plans include:

Adding the destroyed tank model by Brandon Blizard.
Fixing the gravity flag for the explosion particles.
Adding fire+smoke to trees when hit + removing the leaves.
Adding smoke to hit tanks. More smoke as more damage.
Fix various/numerous AI problems.
Launch new, better, more stable version with all the textures this time!

2.19.2002
Everytime I want to launch a new version I think to myself, nah, I should wait until I finish this one little thing. So I rarely launch new versions, even though so many advances have been made. So here is the current build + source. The executables are in Debug and Release directories.

There is some issues with this release. I'll fix it tommorow.

scorch3d01.zip

2.18.2002
Its been a long time since my last update. Luckily I can say that the game is much better. I will post a new demo up soon. I fixed alot of bugs and it should be faster and alot more stable now. Unfortunately I have been feeling a little sick lately and its hard to concentrate on programming when you are sick! =(

But hopefully I will launch a new version soon which will have:

1) A new tank (thanks to Brandon Blizard).
2) AI (its *almost* working).
3) Dead tank model (again, thanks to Brandon).

1.8.2002
Couple of pictures of the new trees and tank models. Unfortunately the trees are quite costly frame-rate wise. Went from 37 to about 29fps.

1.6.2002
Fractal trees working much better. They dont grow anymore. I am reworking the leaves to make the trees more realstic.

Brandon Blizard made an awesome new tank model for me. The game is now capable of loading MilkShape3d files thanks to Nehe's Tutorial on the subject!

Brandon also made an awesome F18, so expect some new weapons soon!

I finally got the tank AI pointing the cannon in the right direction. The next version should have full working AI!

I am also working on some plans to make a Single Player Campaign mode. More details will follow soon.

12.6.2001
Particle manager working at approximately 95%. There is still some problem with the particle gravity.

Changed the whole lighting for the game. Also added a light that follows the shell for a cool effect.

New demo up plus source code is included! If you have any comments about the code, ideas on how to speed things up, questions on how things work, etc... feel free to email me.

As usual, the source code is provided for people who want to learn OpenGL and game programming. Please dont use this code in other programs without my permission. The same goes for the images and models.

11.10.2001
A picture is worth a thousand words. So here are a couple thousand words!

As you can see. Particle Manager is finished and working. Performance for the particle manager hasnt been tweaked yet, therefore it slows the game down a bit.

New demo up!

11.5.2001
I got the performance up a bit. I simply re-worked the drawing code so I dont do so many on-the-fly calculations. I started with 250,000 TPS and 38fps. Now my game is running at 425,000 TPS and around 58fps. 52% performance boost!

I was unable to achieve my desired 1,200,000 TPS goal. Apparently I will need to lock the vertex arrays. After reading several papers on Nvidia's developer section I am not that sure anymore that 15,000,000 TPS is easily reachable. It appears that many things can easily limist your TPS. The way you texture map, coloring, how you store you vertex information. I guess I sort of shot myself in the foot by having a deformable landscape, but scorched earth wouldnt be the same without it.

I got fractal trees working. It looks pretty sweet. Unfortunately the tree "grows" as you get nearer which makes it look kind of wierd. I still havent though about how to fix it. Here are some sample pictures.

I also have a demo up. Particle engine is still not functional. You can still play the game though but you wont see any shells flying. Explosions are still there. This is mostly for a performance test and also to show off the fractal tree. You can get the demo in the demo's section.

10.27.2001
I am still working on performance issue. I got the game up to 400,000 triangles/second. Which is still a far cry from the 15,000,000 triangles/second advertised by nvidia for my Geforce 256 card.

I am working on implementing vertex arrays for the landscape as well as for the tanks. I am aiming for at least 1,200,000 triangles/second. Unfortunately I think to get 15 million I need to use nvidia-specific opengl calls.

The particle manager is still not operational. I will continue working on it once I get the performance up higher.

10.21.2001
Once again I must apologize for the lack of updates. I have had a very busy past 4 weeks. These included 2 weeks during which I had 4 of my wisdom teeth removed. A very painful recovery process =( But at least I am all 100% now and can eat normal foods now! =)

I am still working on the new particle engine/manager. Its going well and it should be done very soon. Once its done I want to create a demo using (in addition to my landscape) for nehe's new contest. Check out nehe.gamedev.net for more info on the contest.

I fixed a bunch of stuff in the code. Its now no longer cpu dependant and it seems to run fine under release mode. I'll post a new version soon + source code once I finish documeting it (and removing any really lame code). =)

I am also working on getting those fractal trees done, as well as adding lighting effects for the shells and explosions.

9.27.2001
I apologize for the lack of updates. A new version will be up shortly. I have been trying to fix some of the cpu-dependency issues.

I am also re-working the particle system to allow for more accurate representation of explosions + shell trails.

I am also working on adding fractal trees + other objects that will make the landscape appear a little bit more realistic.

And last but not least, I am learning networking under directx so perhaps one day there will be a network version of this game out.

9.1.2001
Well, I sent the game to the IGF. Its far from being done, but they claim all you need is a playable first level, and I definitely have that. Besides, I know I wont win anyways. The competition is against companies that have dozens of programmers, artists, etc... while I have just have... me.

I completely changed the shells. I added a firey trail, but it looked so cool I just ditched the shell model.

Had to implement alot of code so it will draw the new shells correctly, its still not 100% perfect.

IGF version out. Dont worry, will add a lot more stuff. After all I am making this game for myself, not for the IGF necessarily.

8.28.2001
Implemented code to stop the shell when y velocity reaches 0. The view screen then centers on the shell as it falls down. This gives a much nicer view of the explosion.

Added code to make sure explosion isnt hidden by any mountains.

Changed explosion particles to blended texture maps. Looks much better.

New version out.

Signed up for more bandwidth through Yahoo! Hopefully now my site wont get maxed from people trying to play.

8.27.2001
Implemented funky bomb and super funky bomb. When the bomb hits the ground, it shots several (5 for normal, 10 for super) shells up in the air in random directions.

Fixed the bouncing shield. Should work now.

Fixed problem where going back to the main menu via "Escape" would sometimes kill the blue tank.

Added new demo version. Two files, scorch3d_r.zip and scorch3d_d.zip. The first one is the release version, second one the debug version. If the release gives you trouble try the debug version.

8.26.2001
Implemented walls. There are 3 wall types, concrete, bounce and wrap-around.

Worked on web site. Added new demo version.

8.25.2001
Fixed clouds, Fixed water, Fixed sky being too dark.

Gave up on tank normals. Need to import a new model from 3d studio, which requires learning 3d studio. Which requires time. Which I dont have. Doh!

Made craters appear black (or scorched!).

Changed height damage to double damage. Making it more useful.

Future plans include learning multi-texturing so I can map black clouds as shadows onto the landscape. Then when I am really cool I can try to map the shadow onto the tank.

8.24.2001
Worked on sky again. Implemented a sky box with moving cloud level. Unfortunately the clouds look a little 2D.

Fixed lightsource problem where landscape was getting too dark with the clouds.

Becoming fixing Tank model's normals. Hopefully wont have these problems when I start importing models from 3D-Studio.

FPS down to 35fps. Not sure why.

8.23.2001
Trying to implement cool sky like Ohad did in his demo at http://ohad.visual-i.com/exper/exper.htm He graciously allowed me to use his sky bitmaps.

Dan González Rodríguez allowed me to use his terrain bitmap. It makes my landscape look amazing. His page is at http://www.arrakis.es/~danthalas/

Increased camera depth from 192 to 256. Frame rate dropped from 60 to 42.

Implemented Display Lists for Tanks, Shields and Explosions. Frame rate up from 42 to 48 at 1024x768x16.

In window mode, I get the following resolutions:

1600x1200x16 40fps
1024x768x16 47fps
800x600x16 48fps

In full screen all resolutions return 48fps. Wierd.

Unforutnately since this is a deformable landscape, I cant place it in a display list. I expect that placing the landscape in a display list would give over 100fps at all resolutions, but without deformation the game looses alot of depth. This is a case of game depth vs terrain detail depth :p.

8.22.2001
More performance oriented fixes. Fixing many double to float conversions which should show some speedup. The game is running at a nice 60+fps at all resolutions. Which is something I am still trying to fix.

Still have a problem with game movement speed at very high frame rates.

Also trying to work on a new algorithm for the terrain generation that will generate a smooth looking landscape at a higher depth level. Current depth level of 6 outputs 8192 triangles.

8.21.2001
Implemented new peformance oriented code.

Changing the math functions POW(x,2) to x*x has give me a 33% speedup from 24fps (at 1024x768x16) to 37fps.

Also implemented cos/sin tables to speed cos/sin calls.

Implemented assembly calls to grab a more accurate clock cycle count. Also implemented code to figure out a users's cpu speed.

Implemented new frame rate and speed limiter code. There seems to be a bug in this since my game registers at 60fps at both 1600x1200x32 and 800x600x16. It is perfectly smooth at 1600x1200 though. Also the speed limiter code (which works directly off the fps) seems to be in-accurate as the game speed (not fps) slows down at high fps (170+). Another issue with the new fps counter, my game claims its drawing 16.2 million triangles a second when the theoretical limits of my Geforce 1 DDR is 15.0 million triangles per second. Whops. =)

8.20.2001
Implemented per-vertex lighting normals. The landscape looks beautiful now. Now I should be able to have night missions, dask, dawn, have explosions light up the landscape, etc...

nitzanw@yahoo.com
Counter