Menu

Screenshots for those who like Eye-Candy

I got some screenshots up, and they look purty. Let me clarify what is happening here, for those of you who really care.

First, I use a function to determine the height of the map based on the surrounding hexes. Then, I calculate the normals to the map. I am using a special equilateral-triangle based map because it integrates very well with the hexes. I went ahead with 96 triangles per hex, so it is pretty high-res. Now that I look at it, 54 won't be so bad. This is easily achieved by skipping 3 out of 4 hexes, so it is easily done with the current setup. (This will be done for when you zoom out...)

The skins are a hack-job with Gimp. I am sure someone out there with some experience can come up with better graphics. I am using 64x64 for the skins, and I stretch em out tight. I will need to do mip-mapping in the future.

Next, I draw the trees. They are ugly, but what do you expect in 16x16? It's amazing what you can get with such a low number of pixels... I am sure someone here could do a better job again.

In this step, I will put in the mechs and the vehicles and infantry. I already have a pretty spiffy infantry sprite - it is 32x32, but infantry kind of spreads out, so what can you do about it? The other thought is to make a lot of 8x8 squads of men and spread them around the hex for a more realistic effect.

The water is beautiful. because of the resolution of the surface, it cuts nicely in at close-ups - it really looks like water should look like.

So, any artists out there, get cracking with your favorite tools. Remember, I accept PNG with RGB or RGBA format.

It's amazing how far its come - and its amazing how far it must go! Not to mention optimizing the code! I want to get it running fast in Python before I move to C or C++. There are quite a few things I would like to do to speed it up a bit.

I want to make a more efficient height calculating function. At present, I run through each point almost 7 or more times. There probably isn't much to do here...

I need to improve the normalizing function. One thought is to take every other adjacent normal and calculate from that. That way, I'd only be taking 3 cross products rather than 6.

Finally, there is the rendering bottleneck. Already, I am using display lists. It would be unmanageable without this. What I should do is use arrays. This is only a small step away, I hope.

Enough about the details, it's probably boring you to death!

Jonathan

Posted by Jonathan Gardner 2001-11-19

Log in to post a comment.