A fashionably late introduction
So, according to my profile page it's been about one and a half year since I registered on this site. One and a half year of reading through a vast sea of threads, joining in discussions, answering questions, and just general lurking without properly introducing myself once.
It's time to do something about that.
So who the hell are you then?
I am a twentysomething from a country which is represented by a tiny patch on your standard world map somewhere in central Europe, sometimes referred to as Belgium.
I am a self-taught programmer backed up by proper schooling in computer science (and some engineering as well), and a self-taught graphics designer with the odd freelance web-design or general design job here and there (both digital and 'classical' jobs, with murals being one of my strong points).
When it comes to programming I have a passion for low-level programming (which results in my interest for kernel design, for example), graphics programming, gameplay and game system programming, and sadly enough re-inventing the wheel, although I tend to do this less and less. I have been a lone wolf throughout most of my projects, but since about a year or two I have been involved in more large-scale collaborative projects which has resulted in a group of people working under the name 'Rainware', but more on that later.
What kind of projects have you worked on?
Although I have never published anything on a large scale, I have worked on quite some projects throughout the years.
In the beginning of my programming days I was purely doing web programming after I taught myself HTML and PHP which resulted in lots of interactive websites and small text-based games for me and my friends. I honestly can't remember what most of these projects were exactly since these were all made about 10 years ago.
I got into application programming for windows in VB.NET (having already toyed with VB6 before) and C# with the advent of the .NET framework. Although I never created any projects worth mentioning in these languages back then, the experience I gained with them gave me a stable foundation for learning C and x86 assembly language, with the Netwide dialect as my weapon of choice.
After tons of research and lurking on various programming forums I started my journey in kernel development, which has resulted in 4 kernel projects: Project2, Project3, Project4 and Sandbox ('Project1' was an unrelated project)
Project2 was a small 32-bit unix-ish kernel which later evolved into Project3 and eventually Project4. These kernel projects were simple protected mode monolithic kernels with a custom bootloader. Project4 was able to set up a basic multitasking environment with a graphics-mode shell for user input. The source code for Project2 and Project3 was completely lost due to a harddrive failure and horrible backup habits. The source for Project4 however still lives on somewhere on one of my servers.
Sandbox was a modular kernel built independently from the other kernel projects and pretty much served as a 'programmer playground' and research project instead of as an actual usable kernel. Sandbox was also an attempt to write a kernel mostly in C++, only using assembly when necessary.
Early game and graphics projects
As mentioned above I had already dabbled in game programming with PHP, being inspired by text-based games such as Kings of Chaos which I played quite a lot back then. I was introduced to graphics programming in C++ by working with the Irrlicht graphics library. I started to make custom personal additions to Irrlicht quite soon so it could support some more 'advanced' graphical features like proper post-processing, better lighting, better shadows, etc. This custom irrlicht library together with some other different libraries were use to create a small 2.5D Pokemon clone with both homemade assets and assets (sprites) ripped from existing Pokemon games. For obvious reasons this game never saw a public release.
This collection of libraries formed a sort of framework on which I built a ton of graphics and physics techdemos and small game demos. After a while this framework got more and more structured and was renamed 'the Sandbox Engine' (Yeah, I'm really original when it comes to names).
Some time later I started work on some academic projects which happened to be mostly game projects.
Among these projects were an untitled text-based D&D-esque RPG written in Java and various implementations of traditional board games in C, C++ and Java.
In the meantime the Sandbox Engine project evolved. Major changes included the dropping of Irrlicht as a graphics engine in favor of a self-written DX10 graphics engine (irrlicht did not and still does not have any support for DX10 or higher) and the removal of the Havok physics library in favor of the open source Bullet physics library. Since barely any original code of the Sandbox Engine remained after these changes I renamed the project to 'RainEngine', and I basically considered this engine project as a separate project from the Sandbox Engine. An update of the Pokemon game with the updated engine was of course made, for the lulz.
What about current work?
The RainEngine project is still in active development to this day, and I have thoroughly enjoyed working on it and improving it throughout the years.
About a year and a half ago I came to the realization that I was becoming one of those typical engine programmers who work solely on an engine project with related tech demos without actually building a game with it, which is of course in violation of the sacred 'make games, not engines' rule.
Since I really wanted to start working on a decent sized game I contacted a good friend of mine (who also happens to lurk around these forums from time to time) and we decided to collaborate on a project under the name 'RainWare'. Since then RainWare has grown by a couple of members.
The first project we designed fell through while still in the conceptual stages because of differing opinions and some quite limiting restrictions we had set upon ourselves.
Our second project however did make it past the initial conceptual stages and is now in active development, based on the RainEngine. This project will be detailed more in the future when we're ready to discuss it.
Well, that basically wraps it up I guess. I hope I can stay active in this community for some time, and I hope I can keep on helping people progressing with their game development adventures