Dusting off the old

Published September 08, 2012
Advertisement
I've recently decided that there's two things I need to look at lately to get me back up to speed. One of them is DirectX11 and more modern graphics coding. I'll talk about the other thing later on.

My old codebases were traditionally built upon OpenGL and the fixed function pipeline. Yes, yes, I know. I was lazy and didn't want to learn all this fancy shader stuff - why did I need to when I could just do what I wanted quickly in GL and my games were never going to be that graphically good anyway, right? Well in DX11 we basically have no choice in the matter, so it's about time that I learn this stuff.

I had two choices; one is to start afresh and start implementing a basic DX11 engine from scratch. The second was to find an old project of mine and retro fit it and then improve it over time. I chose the latter - an old shump project I was working on from 2004 seemed to fit the bill, so I picked that up.

So far, it's mostly been about ripping out SDL, replacing it with raw Win32 code and then pulling out the OpenGL code. All this whilst getting back up to speed with my old codebase. One thing that really struck me was how much my coding practices have improved since then. There's a lot of memory management stuff I should and will be ripping out later (I used superpig's refcounted pointer class from Enginuity...!), and there's probably too many singletons around (although I've kept the calls to them clean). The asset loaders and resource management really needs improving, moving away from what's there to perhaps adopt a more handle-based approach to load/unload on demand.

There's also other stuff, such as there being too little blurring between the various layers in the engine (input, view, logic) - so I'll probably be restructing it all to follow a more MVC style pattern which clearly separates the "views" from the control (input/network) and the game model (logic). A bit more data-driven stuff couldn't hurt either.

It could be quite an interesting project.
Previous Entry Runtime Compiled C++
2 likes 4 comments

Comments

JTippetts
y helo thar!!!

I think DirectX causes cancer and/or erectile dysfunction. You should watch out.
September 09, 2012 01:34 AM
evolutional
I'll try and remember that. last time I tried to use Blender I had an aneurysm
September 09, 2012 02:27 PM
JTippetts
Yeah, Blender aneurysms are a bitch. How's stuff?
September 10, 2012 02:45 AM
evolutional
Not bad sir, not bad. I've just found a new game to play - hurrah! :D
September 10, 2012 08:27 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement