|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Une primitive prête à soumettre, avec tout ce qui détermine quand la dessiner. More...
#include <ComposedScene.h>
Public Attributes | |
| RenderLayer | layer = DEFAULT_RENDER_LAYER |
| Calque de dessin (critère de tri prioritaire, EX-REN-014). | |
| TextureHandle | texture = nullptr |
| Texture liée (identité opaque) ; nullptr = primitive non dessinable. | |
| int | textureRank = 0 |
| Rang de première apparition de la texture dans la scène (critère de regroupement). | |
| std::int32_t | sortOrder = 0 |
| Tri fin à l'intérieur d'un calque et d'une texture (core::Sprite::layer). | |
| QuadKind | kind = QuadKind::Sprite |
| Laquelle des deux primitives ci-dessous est valide. | |
| SpriteQuad | sprite {} |
| Primitive rectangle, valide si kind == QuadKind::Sprite. | |
| LineQuad | line {} |
| Primitive segment, valide si kind == QuadKind::Line. | |
Une primitive prête à soumettre, avec tout ce qui détermine quand la dessiner.
Les deux primitives possibles sont stockées côte à côte plutôt que dans une union ou un std::variant : la composition doit rester une simple liste ordonnée, parcourue en séquence par la soumission comme par les tests. Le surcoût mémoire (quelques dizaines d'octets par primitive, dans un tampon réutilisé d'une image à l'autre) est sans commune mesure avec la complexité qu'introduirait un accès polymorphe sur le chemin de dessin.
| QuadKind hmi::ComposedQuad::kind = QuadKind::Sprite |
Laquelle des deux primitives ci-dessous est valide.
| RenderLayer hmi::ComposedQuad::layer = DEFAULT_RENDER_LAYER |
Calque de dessin (critère de tri prioritaire, EX-REN-014).
| LineQuad hmi::ComposedQuad::line {} |
Primitive segment, valide si kind == QuadKind::Line.
| std::int32_t hmi::ComposedQuad::sortOrder = 0 |
Tri fin à l'intérieur d'un calque et d'une texture (core::Sprite::layer).
| SpriteQuad hmi::ComposedQuad::sprite {} |
Primitive rectangle, valide si kind == QuadKind::Sprite.
| TextureHandle hmi::ComposedQuad::texture = nullptr |
Texture liée (identité opaque) ; nullptr = primitive non dessinable.
| int hmi::ComposedQuad::textureRank = 0 |
Rang de première apparition de la texture dans la scène (critère de regroupement).