Hacker News new | ask | show | jobs
by zackmorris 1639 days ago
I miss working on my C++ game engine with my old business partner. We got so far with it, all the way to cross-compiling stuff like Ogg Theora/Vorbis video and audio playback around the time the iPhone arrived. Maybe a dozen rather large frameworks, before stuff like CocoaPods. Which provided us with a bare-metal environment, kind of a Unity for 2D gaming with blitters and basic OpenGL quad rendering.

Unfortunately, a game engine can only get as big as planned obsolescence dictates. Apple especially, deprecates stuff on what feels like a 2-3 year cycle. So just when we'd think we were done, another module in our engine would require refactoring because the system framework it depended on got axed. Not to mention that Xcode has reached such a level of burden on developers, compared to anything in web development, that I could no longer endorse it. I got tired of rewriting code for the eleventeenth time and called it quits around 2010.

The prime directive of game engines IMHO is to not make a single direct system call. Go through a layer like SDL, or you'll never get free of maintenance.

1 comments

I think OpenGL (ES) 3 / OpenAL is probably the final APIs you have to worry about for eternity. Metal/Vulkan/DX12 adds nothing of gameplay value.
Guess what, Apple has deprecated OpenGL too :)
I know, that is more proof tha Apple is heading in the wrong direction than anything else.

They can deprecate all they want, they will never be able to remove it!