Warning
This page refers to an old version of SFML. Click here to switch to the latest version.
Warning
This page refers to an old version of SFML. Click here to switch to the latest version.
Define the states used for drawing to a RenderTarget More...
#include <SFML/Graphics/RenderStates.hpp>
Public Member Functions | |
RenderStates ()=default | |
Default constructor. | |
RenderStates (const BlendMode &theBlendMode) | |
Construct a default set of render states with a custom blend mode. | |
RenderStates (const StencilMode &theStencilMode) | |
Construct a default set of render states with a custom stencil mode. | |
RenderStates (const Transform &theTransform) | |
Construct a default set of render states with a custom transform. | |
RenderStates (const Texture *theTexture) | |
Construct a default set of render states with a custom texture. | |
RenderStates (const Shader *theShader) | |
Construct a default set of render states with a custom shader. | |
RenderStates (const BlendMode &theBlendMode, const StencilMode &theStencilMode, const Transform &theTransform, CoordinateType theCoordinateType, const Texture *theTexture, const Shader *theShader) | |
Construct a set of render states with all its attributes. |
Public Attributes | |
BlendMode | blendMode {BlendAlpha} |
Blending mode. | |
StencilMode | stencilMode |
Stencil mode. | |
Transform | transform |
Transform. | |
CoordinateType | coordinateType {CoordinateType::Pixels} |
Texture coordinate type. | |
const Texture * | texture {} |
Texture. | |
const Shader * | shader {} |
Shader. |
Static Public Attributes | |
static const RenderStates | Default |
Special instance holding the default render states. |
Define the states used for drawing to a RenderTarget
There are six global states that can be applied to the drawn objects:
High-level objects such as sprites or text force some of these states when they are drawn. For example, a sprite will set its own texture, so that you don't have to care about it when drawing the sprite.
The transform is a special case: sprites, texts and shapes (and it's a good idea to do it with your own drawable classes too) combine their transform with the one that is passed in the RenderStates structure. So that you can use a "global" transform on top of each object's transform.
Most objects, especially high-level drawables, can be drawn directly without defining render states explicitly – the default set of states is ok in most cases.
If you want to use a single specific render state, for example a shader, you can pass it directly to the Draw function: sf::RenderStates has an implicit one-argument constructor for each state.
When you're inside the Draw function of a drawable object (inherited from sf::Drawable), you can either pass the render states unmodified, or change some of them. For example, a transformable object will combine the current transform with its own transform. A sprite will set its texture. Etc.
Definition at line 47 of file RenderStates.hpp.
|
default |
Default constructor.
Constructing a default set of render states is equivalent to using sf::RenderStates::Default. The default set defines:
sf::RenderStates::RenderStates | ( | const BlendMode & | theBlendMode | ) |
Construct a default set of render states with a custom blend mode.
theBlendMode | Blend mode to use |
sf::RenderStates::RenderStates | ( | const StencilMode & | theStencilMode | ) |
Construct a default set of render states with a custom stencil mode.
theStencilMode | Stencil mode to use |
sf::RenderStates::RenderStates | ( | const Transform & | theTransform | ) |
Construct a default set of render states with a custom transform.
theTransform | Transform to use |
sf::RenderStates::RenderStates | ( | const Texture * | theTexture | ) |
Construct a default set of render states with a custom texture.
theTexture | Texture to use |
sf::RenderStates::RenderStates | ( | const Shader * | theShader | ) |
Construct a default set of render states with a custom shader.
theShader | Shader to use |
sf::RenderStates::RenderStates | ( | const BlendMode & | theBlendMode, |
const StencilMode & | theStencilMode, | ||
const Transform & | theTransform, | ||
CoordinateType | theCoordinateType, | ||
const Texture * | theTexture, | ||
const Shader * | theShader ) |
BlendMode sf::RenderStates::blendMode {BlendAlpha} |
Blending mode.
Definition at line 131 of file RenderStates.hpp.
CoordinateType sf::RenderStates::coordinateType {CoordinateType::Pixels} |
Texture coordinate type.
Definition at line 134 of file RenderStates.hpp.
|
static |
Special instance holding the default render states.
Definition at line 126 of file RenderStates.hpp.
const Shader* sf::RenderStates::shader {} |
Definition at line 136 of file RenderStates.hpp.
StencilMode sf::RenderStates::stencilMode |
Stencil mode.
Definition at line 132 of file RenderStates.hpp.
const Texture* sf::RenderStates::texture {} |
Definition at line 135 of file RenderStates.hpp.
Transform sf::RenderStates::transform |
Definition at line 133 of file RenderStates.hpp.