|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Non-régression visuelle du portage QRhi (LOT-69 TACHE-02, EX-REN-050, EX-ARCH-022) : rendu hors écran d'un motif témoin, relu pixel par pixel. More...
#include <QImage>#include <cstdint>#include <memory>#include <vector>#include <gtest/gtest.h>#include <rhi/qrhi.h>#include "HMI/Graphics/Quad.h"#include "HMI/Graphics/RhiContext.h"#include "HMI/Graphics/SpriteBatch.h"#include "HMI/Graphics/TextureLoader.h"Functions | |
| TEST (RhiOffscreenTest, ZoomEntierResteNetEnFiltrageNearest) | |
| Un quad agrandi d'un facteur entier reste net : chaque texel devient un bloc de couleur uniforme, sans la moindre teinte intermédiaire. | |
| TEST (RhiOffscreenTest, TeinteMultiplieeEtEffacementConserve) | |
| La teinte du quad multiplie la texture échantillonnée, et le fond d'effacement subsiste là où rien n'est dessiné — les deux invariants de composition du pipeline porté. | |
Non-régression visuelle du portage QRhi (LOT-69 TACHE-02, EX-REN-050, EX-ARCH-022) : rendu hors écran d'un motif témoin, relu pixel par pixel.
C'est le seul test qui protège vraiment l'objectif du portage. Le risque dominant du lot est qu'un rendu devenu flou passe toute la CI : tout compile, tous les tests logiques passent, et seul l'œil verrait la différence. Un agrandissement au filtrage nearest produit des blocs de couleur exactement égaux au texel source ; le moindre filtrage linéaire introduirait des teintes intermédiaires aux frontières, que les assertions ci-dessous refusent.
Le test s'exécute sur une interface QRhi hors écran (aucune fenêtre) et se saute proprement si aucune n'est disponible sur la machine (EX-NFR-004 borne ce qui est automatisable).
| TEST | ( | RhiOffscreenTest | , |
| TeinteMultiplieeEtEffacementConserve | ) |
La teinte du quad multiplie la texture échantillonnée, et le fond d'effacement subsiste là où rien n'est dessiné — les deux invariants de composition du pipeline porté.
Cas de test : La teinte multiplie la texture et l'effacement subsiste hors du quad.
Categorie : Unitaire · Rendu QRhi
Criticite : Majeur
Etapes :
1. Rendre hors ecran un quad teinte couvrant un quart de la cible.
2. Relire un pixel dans le quad et un pixel hors du quad.
Resultat attendu : Le pixel du quad vaut la couleur source multipliee par la teinte ; le pixel hors du quad vaut la couleur d'effacement.
| TEST | ( | RhiOffscreenTest | , |
| ZoomEntierResteNetEnFiltrageNearest | ) |
Un quad agrandi d'un facteur entier reste net : chaque texel devient un bloc de couleur uniforme, sans la moindre teinte intermédiaire.
Cas de test : Le rendu QRhi conserve le pixel art net a zoom entier.
Categorie : Unitaire · Rendu QRhi
Criticite : Critique
Etapes :
1. Rendre hors ecran une texture temoin 4x4 agrandie 4 fois.
2. Relire les pixels de la cible.
Resultat attendu : Chaque texel donne un bloc 4x4 uniforme, et aucune couleur hors des quatre du motif n'apparait.