Article WIP
GitHub repo WIP
This is one of my bigger C++ projects where I gained some skills in exploiting the modern features the language has to offer. Some of these include: partial template specialization (e.g. ResourceManager<sf::Music, IDENTIFER>
is a specialization of the general ResourceManager<RESOURCE, IDENTIFER>
), perfect forwarding (of universal references e.g. template <typename... Args> void Entity::setPosition(Args&&... args) { _sprite.setPosition(std::forward<Args>(args)...); }
), and OOP.
Moving forward, I might explore creating applications or games with concurrency (asynchronous I/O on the UI thread which offloads expensive computations to worker threads and thread synchronization) using the C++ standard library.
Much credit to SFML Blueprints book by Maxime Barbier for the assets such as graphics and sounds and also the skeleton code.