So I know I was really excited to create my own engine from scratch, but I fear at this point in time it is just way too far over my head. I’ve spent the last several days trying to get SDL or OpenGL to load and display images, with limited success. Once I get an image loaded, I’m unable to really abstract it into a class to load multiple instances. If I was able to, it wouldn’t be very efficient either because I’d need to figure out how to do texture atlases and texture batching, as well figure a way to manage the textures in memory. It’s all really complex to someone that hasn’t touched c++ in a long time.
At the moment I feel fairly defeated, so instead, for now, since someone has already done all the hard work, I think I’m going abandon my engine attempt and try out Cocos2d-x instead. It is a C++ version of the Cocos2d-iphone engine which I used to make Lumps of Clay. It should be fairly similar I think. Since Cocos2d-x is written in C++ it is cross platform compatible, and I believe the renderer uses OpenGL at the core, but it’s super easy to load images as Cocos2d-x does all the hard work for you . I just don’t know how compatible it will be if I ever want to port it to devices like the Nintendo Switch. But if the Switch will be incompatible with Cocos2d-x, it would probably be incompatible with my custom engine since they were both going to be OpenGL based.
Maybe I’ll try to make a simple game with it, then send my pitch to Nintendo so I can get a Developer Kit, then see how hard it would be to port it. We’ll see. For now, I’m going to abandon my own engine and try to get a prototype going this weekend in Cocos2d-x.
In the future I can always revisit my own engine project.
UPDATE
I hopped on the forum for cocos2d-x and there is a thread about supporting the Switch since it was revealed that the Switch supports OpenGL. It appears that at least one developer was able to port their game to the Switch from cocos2d-x, so that is good news! There was not any posts lately on it so I left one asking if anyone else had been able to port to Switch. Hoping to hear back some positive results!