Jump to content

  • You cannot edit this iotd

IslandWorld  by george7378    ****-


Time Spent: 3 weeks
Date Added: Feb 07 2013 07:15 PM

This is an image from my first Direct3D development project. My ultimate (if ambitious) vision for this project is to eventually create an immersive and calming island scene for an observer to explore using sound, visuals and physics. It is currently in an early stage, but it's at the point where some nice scenes can be observed. This is one of them, showing a screenshot of a sunset from a perspective standing in the shallow water.

This screenshot shows off nice alpha blending effects (the surface of the water is animated) and shadowing and lighting corresponding to a setting sun. The models are basic but they fit the scene quite well.

I have been motivated to work on this project because I have been programming in C++ for a number of years now, and I have got to the point where I want to have more graphical capability available to me than offered by basic libraries such as GDI. I also find myself wishing that I could just use my computer's 3D processing power to play a 'game' in which the only aim is to explore and relax rather than progress through levels and attain specific goals, hence why I used this island scene idea to get started with my first custom 3D graphics project.

Some of the lessons I learned during this project are 3D graphics programming! I also learned that the true solution to a problem is usually the simplest one, and that simple experimentation often yields nice results.  
Visual Studio 2012
Direct3D 9

  • You cannot edit this iotd


Feb 19 2013 11:51 AM


Feb 20 2013 11:04 AM

Your images look quite noisy, do you have mipmapping enabled?


Other than that, nice work! Keep it up.

Feb 20 2013 02:33 PM

Consider using alpha testing on the leaf and frond textures when generating the shadow map, it might look cool!

Feb 20 2013 02:34 PM

Great work by the way! Save money on a vacation to the Bahamas, you can just go there virtually!

Feb 21 2013 04:35 AM



I don't have mipmapping enabled at the moment - it it something I was thinking about in the future though, once I sort out some more pressing things!


I had thought of alpha testing for the shadows, but I don't really know how to get it to work! I have of course enabled it for the leaves themselves, but if I do the same thing when rendering the shadows, they just look the same. To create the shadows I'm using a matrix to flatten the objects onto the floor, and I then apply a shadow material to them to make them the right colour. Is it possible to use alpha testing with this method?



Feb 21 2013 03:43 PM

 Tell me more about your shadow material? Do you still sample the original diffuse texture and just "grey" out the colors? Or are you just swapping a dark texture for all the original diffuse textures and sampling from that?

Feb 21 2013 06:27 PM

I'm rendering the shadow using the original textures applied to the tree, but applying a D3DXmaterial to it with diffuse set to (0, 0, 0, 0.4). I started a thread here which has a picture of what's happening:




Thanks :)

Feb 27 2013 10:21 AM

Have a look at shadow buffers, I find them easier to understand than stencil shadows which I think is what you're describing. They also intuitively handle overlapping shadows and you can so some nice filtering with them to achieve soft shadows and other effects.

Mar 02 2013 06:55 AM

I'd really like to be able to use proper shadow buffers, and I get the concept (render from the light's point of view, store the depth info to see which areas are in shadow, etc...) but I think it would be a large leap beyond my current level, and there are a few other things I'd like to get sorted first!

Apr 23 2013 07:27 AM

That is a fascinating scene! How did you make the trees and leaves? I'm considering making 3d games someday, but I  am all thumbs and not artistic.


You are a good programmer. :)

Apr 24 2013 03:37 AM

Haha, thanks! It would actually look a lot better if I updated it now since I've learned to use shaders which would make the shadows and the water look a lot nicer. I did the leaves by using alpha testing - i.e. apply a partially transparent texture to a plane and then if a pixel has a smaller alpha than a chosen cutoff value, it is seen as transparent. Much easier than modelling the leaves in 3D!

May 07 2013 09:31 AM

Cool, what are the model types? I guess you wrote your own model loader to load these in?


You could tell me what sources youve used to learn how to create water/shadowmapping?



May 07 2013 05:13 PM

The models are just .x files - yes, I created a class to load, draw, unload them, etc...

The water is actually just a plane with an alpha blended texture, and the shadows were created by flattening geometry - really basic! This was a while ago though and I now use shaders to do all the drawing. This gives far superior shadow mapping/normal mapping/specularity/diffuse lighting, and this scene would look tonnes better if I re-made it with shaders! If you're just beginning I'd advise you to get going with shaders straight away - they are fantastic and would allow you to create something infinitely better than this!

May 26 2013 04:10 PM

I guess you never expected your IOTD to stay on the front page for over three months eh george?


Would be interesting to see a follow-up with shaders :)

May 27 2013 08:43 AM

I smell zombies are hiding somewhere. :D

May 27 2013 02:42 PM

I guess you never expected your IOTD to stay on the front page for over three months eh george?


Would be interesting to see a follow-up with shaders smile.png


No, I tried to submit another one actually, until I realised it was closed! I don't know why, I think this is an awesome idea.


I may well make a new scene with shaders for water and lighting!



I smell zombies are hiding somewhere. biggrin.png


Yes, some lovely normal mapped, shadow mapped zombies :)

Sep 12 2013 07:14 AM

Looks servicable.   Minor variations in the Z coordinates of the terrain surface might give it a little more organic look.


It might be possible to do similar with the trees  - a scalling factor of only 25% would vary them quite a bit  (even sinking the same sized tree slightly different a base depth on its XY positions Z height.

Sep 23 2013 11:35 AM

Love the idea. The avenue is very infant but I get the appeal. For some reason games like Mist and the Netherhood seemed to relax me, as well as the overworlds in Spyro 2. It would be intersting to see what ideas you come up with to enhance that mood.

Jun 10 2014 11:37 AM

Wow, the graphics looks like Delta Force's, but not so! Nice work! smile.png

Jul 31 2014 11:00 PM

Ha ha - I strangely like the idea! Nice one! :D