I am a hobbyist 3D programmer who is getting on in years (73 of them!). I have messed around with 3D from the early DOS/Windows95 days until the present with its overwhelming supply of advanced 3D game engines. During this period I had a full-time job as an industrial process control software engineer. On my hobbyist side, the engines I have worked with have been PowerRender (obsolete), 3DRad (obsolete), Oddity(deprecated), Esenthel (too expensive), Unity (too heavy), and my own DirectX11 based engine. All of these have been based on C++ Windows platforms. A more detailed resume of all my projects can be found on my website www.3DRaddict.com (not updated for a while now)
Enough background history…and fast forward to the present. I decided that I would like to change to C# as my programming language, in conjunction with a lightweight graphics framework, and after some research, have settled with MonoGame.
I have found that the way to quickly get to grips with a new engine is to port the old stuff (that you know works well on previous engines) over to the new engine or framework. A project that I have been working on and off for a number of years is called “The SciTech Playroom”, and is the project I have chosen as my first MonoGame endeavour. Basically, it involves a simple room with a couple of workbenches on which the player can conduct interactive science experiments and technical demonstrations. For this to be realistic, a primary requirement is a good physics engine. I have had past experience with Nvidia PhysX, but wanted something that would integrate nicely with C#. I chose the BulletSharp MonoGame library.
As an aside, in my private capacity to help supplement my dwindling pension, I would like to run a practical interactive 3D programming course in my home town. The course will be based on this MonoGame project, whereby the students will follow its development from the ground up.
I have gathered from the threads on this forum that there is a shortage of up-to-date MonoGame 3D examples and tutorials. I would hope that, with this project and together with my course lesson preparatory work, I will be able to help out in this respect.
I commenced porting during January this year and I am pleased with the progress thus far.
Here is a video of the current stage of the project:-