Yes I do know more or less, do you know how many popular 3D based games there are out there?
It doesn't need to have 3D graphics no but certain game styles only work in 3D (same for some 2D styles) and out of that top 100 how many are 3D? 70? 80?
Some people want to create 3D games - you might not want to and there's nothing wrong with that but it's not about what we want - if we're going off figures? how many games of a given type there are and what API's/hardware they use? we can't ignore 3D hardware and techniques - it's a games programming website and such games are the vast, overwhelming majority :\
And as far as generic tutorials are concerned - as I've already stated, you could have a thousand of the most perfectly written generic tutorials that aren't dependent on any API's or engines - that aren't dependant on 3D or 2D. And after reading them all? someone still can't make a game.
Like it or not you can teach gamification, state machines, AI and whatever else all day long - sooner or later they'll need to draw something to the screen, play some audio, send data across a network.
We have to teach people how to do the specifics in pascal too - we can't just cover generic topics and tell people if that want to actually draw anything to the screen then head over to a C++ tutorial site or to use Engine XYZ and not to worry their pretty little heads about how it actually works or even if Engine XYZ will still be supported next year.
I mean I think it's a good idea to provide source code to examples - you'd likely agree - so how are our examples going to draw things? or are we not going to have any examples that look like games on a games programming website?
Are they going to render in 2D using somebody's engine? whose engine? we have to be impartial, if we started using somebody's engine for the tutorials what will that do to other engines?
So we use the underlying API's? which one? GDI+? windows only? ok we'll add Quartz and X11 rendering - now we need an abstraction so our examples will compile across the board - oh whoops we've written a 2D graphics library.
Definitely I'll help write generic tutorials with you or anything you think is a good idea but you've got to meet me half way here, we need to cover 3D hardware and for that we need to use an API and is there a better choice than OpenGL when it come to cross platform and future proof 3D? No it might not last forever but OpenGL 1.2 still works just fine on Windows 10 with a DirectX12 graphics card - I think OpenGL 4.5 is safe for at least as long - which has been well over 10 years now.
And finally one thing you've not realised is that nearly every game you just listed - renders using 3D hardware and that their scale and even aspects of their game-play are only possible due to 3D hardware.
When somebody is frantically scanning back and forwards through our generic, API agnostic tutorials as to why their Terraria clone is only running a 3fps then you can be the one to tell them that we skipped 90% of what they needed to know because you decided they didn't need to know it.
Come on dude - you know I'm right, agreed - generic things first, general techniques - good practices, good designs - but you can't escape 3D hardware - it will find you.
Bookmarks