The differences are:
Previous
- Invert the scene so that it is upside down
- Setup the clipping plane so that only vertices above the water (those that will be reflected) are drawn
- Draw the scene
- Disable the clipping plane
- Render scene as normal
Now
- Invert the scene so that it is upside down
- Setup the clipping plane so that only vertices above the water (those that will be reflected) are drawn
- Render the scene to a texture to be used when rendering the water
- Project each of the water vertices to screen coordinates. Set these values as water texture coordinates
- Render scene as normal
Further optimizations are to be added for the water. Use a terrain approach to render the water by splitting it into patches and rendering with a level of detail therefore reducing the polygons drawn in the distance. As well as reducing the number of polygons rendered I should be able equally cut the number of water vertices updated and projected to screen.
I have just looked through this blog and feel a little dubious about it. I guess the first question is does anyone read it? If so can you let me know. I am going to update it as often as required regardless because it is a nice timeline of the Decade Engine for me, however if people read it and would like to learn something from it please let me know. I can start to make the posts more technical with sample source, comparisons etc... In essence start to build up a 3D engine tutorial.
I read it :D. Well, if I have internets at home again...
ReplyDeleteI read it, very informative. I would really be grateful if you did make some form of technical source post or a tutorial on how to build a 3D Engine, I've already had some great ideas of inspiration based on what you have shown.
ReplyDeleteJamie
very good work
ReplyDeleteI read it, too.
ReplyDeleteVery informative and good blog. Keep it up!
However, as I'm doing a blog myself for a home-made gameengine like yours, I'm interested in lerning new techniques and solutions. My engine isn't as developed as yours, though.