Saving modified sprites
In our game we're going to be generating new sprites each time the game is run. We want each run to be unique, so once we've generated a sprite and used it we can let it go. However sometimes, you might want to keep hold of a sprite. For example, you might want to create a randomized NPC and keep the same character throughout the entire game.
The two data types that we've used to create images so far are sf::Sprite
and sf::Texture
. These classes let us interact with images through a set of predefined member functions. It's great for standard drawing and simple image manipulation, but we don't get access to the raw image information. This is where sf::Image
comes into play!
Passing a texture into an image
Sf::Image
is a class that is used to load, manipulate, and save images. Unlike the other data types, sf::Image
provides us with the raw image data, allowing us to interact with every pixel in the image. We'll use more of this functionality later, but for now, we're...