Hello guys, welcome back.
Lately I thought about switching to the precompiled side of things, just to get some new experiences.
I had some very brief previous knowledge of XNA and so I decided to give MonoGame a chance.
XNA was a platform for indies provided by Microsoft and it was based on DirectX, had good documentation and decent support from Microsoft. Well that was until a few years ago, when MS gave up on XNA.
Fortunately Microsoft itself and others continued to port XNA to an open source platform called Monogame. Monogame not only supports DirectX but also OpenGL and can target Linux, Android… etc. It’s pretty broad. Yeah.
I started out with some 2D stuff, but then realized I might as well try 3D and here I am.
So uh, it looks like not much, but that’s because I have been working more on the engine side of things instead of actual game logic and objects (and models and textures and…)
Briefly what I have so far:
- Terrain generated by Heightmap. I create Vertices and Indexes myself (these include VertexColor, Normals, Tangents and Binormals)
- some HLSL Rendering, Diffuse+Specular+Normalmapping
- ShadowMapping with some nice smoothing (this took a long time to get right, in the end I wasted 2 days basically because a renderTarget had one wrong value, which worked fine in the official XNA samples, ugh…).
The shadowmap updates with Camera position and I’m in general pretty happy with it now.
- basic PostProcessing set up, so far I only render the renderTarget to screen and apply a small vignetting effect.
- car with some physics
- Smoke / particle effects
Sounds like not much, does it. Took my 3 or 4 days and a lot of coding with trial & error (since one can’t really debug HLSL in runtime and I had no previous experience).
Well but I am basically done with the basic engine features and could move on to create an actual game, but creating the engine/renderer is the most fun part usually so I am looking to add new features still.
The broad game idea I can see myself realizing with this is maybe a sort of “Mad Max” world in which you drive around with a horde of others, trying to steal and find resources in a generated world. I think this would rather be a strategy game with orthographic view.