The reason I want to tackle cross-platform at a very basic level is because of the whole int main() / int WINAPI WinMain() side of things, how to develop so that you can use int main() throughout but still be able to create a Windows application. I've seen it done, but it's always abstracted away so that I can't understand how it works.
I can definitely see the advantage of looking at cross-platform renderers and window systems though, it would be an interesting topic - one I know nothing about though! I haven't even gotten to the point of being able to choose between OpenGL and DirectX under Windows, let alone throwing in the cross-platform side.
Other possibilities to look at (as I see them):
* AI - how to develop AI for your game including (but not limited to) path-finding, FSMs, fuzzy logic and sensory awareness. This will probably turn into quite a large topic, and I think it would make sense to avoid lumping it all into one piece of code, purely because it'd get overcomplicated.
* GUI code - making an interface for your game: buttons, windows, screen managers - however you choose to do it. I'm aware that there's a number of possibilities of how to do it and that not everybody will agree - but I personally would like to see this made as independent of the graphics side as possible (obviously apart from such things as mouse handling and drawing the controls).
* Networking - coding client/server and peer-to-peer routines for your game, possibly including the use of external libraries - I've previously used RakNet, which I thought was pretty damn cool, but I'd again like to learn what's going on behind the scenes. Might also be worth covering how to prevent hacking and cheats in online games.
* Audio - how to play sound files and music files and the like. Again, we could choose to show the use of external libraries (we'll probably have to, given the depth of the topic), but I'd like to keep it cross-platform or at least provide alternative options (rather than just using DirectSound etc).
* Media - this is partly connected to audio and graphics, the ability to play movie files from within the game - for intro animations or any purpose really.
* Graphics - well, it's a big deal. Focus mainly on hardware-accelerated stuff - DirectX, OpenGL, perhaps with some software rendering articles. Showing how to tie the graphics code into the rest of the application, and again attempting to provide a cross-platform solution. Although many people will want to see 3D, 2D shouldn't be neglected, whether it's single-screen, scrolling (parallax or basic), isometric (could argue that this can fit into 3D, but how about showing both alternatives?). 3D will be an absolutely huge topic, covering all sorts of rendering questions - using shaders, vertex and index buffers, how to make cameras that do what you want them to.... as I say, a huge topic. I'd also like to see stuff on terrain (did anyone actually see my 2D terrain generation code? ) and particle effects.
* Resources - I'd like to show how to load files from common resource file formats (such as ZIP and MD2) as well as the technology necessary to create your own, and to load from standard files like JPEGs and PNGs. Loading 3D model formats should be covered, and possibly how to write exporters for common 3D modelling packages, although this might be better under the next category.
* Tools - how to develop a toolset to make creating your game simpler. Map Editors, Resource File Creators, everything like that which would be useful that you don't necessarily want to ship with your game.
* Scripting - it's so commonly used these days it'd be a crime to leave it out. Maybe covering how to write your own scripting language, but also how to integrate existing languages into your code - Lua, Python etc.
* Structure - how to develop your game in a way that makes sense. Properly structuring all your files so as to encourage object-oriented development, without being a total fanatic on the subject. Separation between components is definitely a good thing no matter which way you look at it.
* Scenegraphs - and world models. Showing how best to represent your world. Again I know there are a number of different approaches to doing this, I prefer a parent-child hierarchy sorted by links between objects, but I know there are other solutions that make more sense in certain situations.
* Physics - how to at least simulate rigid-body physics in your game, if not soft-body. Collisions of course should be a big part of this, which may or may not include bounding boxes and spheres to reduce the number of calculations that need to be made.
* Testing/Debugging - how to test your game in a sensible way and how to deal with any bugs you may find.
* Installations - how to write install programs to deploy your game, using many of the popular methods (MSI, NSIS, maybe InstallShield). Also how to deploy patches after installation.
* Game Design - design documents, proof of concept, prototyping - advice on all that and more, preferably with sample documents that people can look at and hopefully gain a better understanding.
* Publishing/Selling your Game - could cover anything from approaching publishers, copyright issues, making use of the Internet, freeware/shareware/open source, releasing demo versions and basically anything else that makes sense.
If anyone has anything else to add, I'm sure I've missed plenty despite the size of this list. I'd mostly like to see C++ code here, with a healthy dollop of pseudocode to highlight important points, but that's mostly because that is my chosen development language at the minute. If anyone wants to show C#, or Visual Basic, or even Blitz Basic or Dark Basic (or hell, anything else for that matter) feel free, most of the concepts should apply equally across each language.
Bladder, I totally understand your lack of time to spare to produce more tutorials. If you feel like contributing at all to this little project feel free though, and that goes for anyone else as well. With work on this mainly happening in the Wiki it should be possible for anyone to suggest changes and point out inaccuracies in each others code, or alternative ways of approaching problems. With so many topics to cover, no one person could know it all, but we seem to have a pretty knowledgeable community here so I'm sure if we put our heads together we can come up with something reasonable. Hell, it may even be detailed enough to beat the pants off GameDev.net
I'll be working on some very basic articles over the next week or so that I'll put on the Wiki as time allows - I haven't decided what part to tackle first yet (there's so much to choose from ) but I will produce something soon.
If anyone wants to cover mobile games (*cough* Mihail) then that can definitely go in here too