I've been using the same render engine for my game pretty much since the very start, and it was about time that I gave it a bit of a revamp! But after struggling through the inexperienced code that I'd written almost two years ago, I decided it would be easier to simply start again and write a new engine. So, here are the new features that the new engine supports:
New Features:
- Lighting improvements: The lighting in the new engine is now calculated per pixel and not per vertex as it was before. This has resulted in a much smoother and aesthetically pleasing look to the world, especially on shiny items.
- Multiple light sources support: The multi-lighting system is now much improved and much more flexible than it was before. A maximum of 4 extra light sources can be used to light a scene, and these four light sources are simply chosen as the closest 4 light sources to the camera.
- Mesh LOD: After recently doing a dissertation on level of detail (LOD) algorithms I had a few more LOD tricks that I wanted to include in the new engine. The first new algorithm is a mesh simplification algorithm which is used to produce multiple simplified versions of a model. For this I used a half edge collapse algorithm using quadric error metrics.
- Terrain LOD: I implemented the Geomipmapping algorithm to carry out terrain simplification, and this really sped up the rendering speeds. The terrain blocks are all stitched seamlessly together so no visible seams can be seen. This change also meant that I could increase terrain chunk sizes, allowing me to easily create much more impressive terrain structures.
- Mipmapping: Opengl mipmapping is now also supported in the new engine, allowing for texture simplification which further increases FPS.
- Texture atlas support: In the previous engine there was only texture atlas support for static entities, but there is now texture atlas support for animated entities as well.
- Glowing textures: Parts of texture can now be set to "glow", which means that they will always be rendered as if fully lit, regardless of the lighting conditions. I used this to make the windows of houses glow at night time, making it look like there were lights on in the house.
And that's it for this week! Next time I'm going to be connecting the new engine up to the game itself. All of the updates I mentioned here are shown in the video below, so give it a watch if you have time. Thanks a lot for reading! :)
Looks awesome! Good luck and keep up the good work!
what for a program language do you use or what for framework or sdk
The game is programmed in java, using OpenGL. I use eclipse to do my coding, and I make all the models in Blender.
check out our rendering services: Xo3d.co.uk
the best 3d rendering software: Xo3d.co.uk