|
SFML
Simple and Fast Multimedia Library
|
Define the states used for drawing to a RenderTarget. More...
#include <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.
|
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.
| CoordinateType sf::RenderStates::coordinateType {CoordinateType::Pixels} |
Texture coordinate type.
|
static |
Special instance holding the default render states.
| StencilMode sf::RenderStates::stencilMode |
Stencil mode.