O'Reilly logo

Mastering SFML Game Development by Raimondas Pupius

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Adapting classes to use lights

Obviously, each and every single class that does any rendering in our game does it differently. Rendering the same graphics to different types of material maps is no exception to this rule. Let's see how every light-supporting class should implement their respective Draw methods in order to stay in sync with our lighting system.

The Map class

The first class we need to deal with is the Map class. It will be a bit different due to the way it handles the drawing of tiles. So let's take a look at what needs to be added in:

class Map : ..., public LightUser { public: ... void Draw(MaterialMapContainer& l_materials, Window& l_window, int l_layer); protected: ... Void CheckTextureSizes(int l_fromZ, int l_toZ); std::array<sf::RenderTexture, ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required