JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
Loading...
Searching...
No Matches
PlaneVisuals.h File Reference

Projection profondeur → calque, résolution et composition des plans picturaux (EX-REN-049, EX-DEC-040 à EX-DEC-042, LOT-69 TACHE-05). More...

#include <cstddef>
#include <filesystem>
#include <string>
#include <vector>
#include "Core/Levels/Plane.h"
#include "Core/Math/Rect.h"
#include "HMI/Graphics/ComposedScene.h"
#include "HMI/Graphics/PlaneVisibility.h"
#include "HMI/Graphics/RenderMode.h"

Go to the source code of this file.

Classes

struct  hmi::PlaneTexture
 Texture d'un plan déjà résolue, prête à être composée. More...
struct  hmi::PlaneParallax
 Cadrage courant et échelle, pour le décalage de parallaxe des plans (EX-DEC-043). More...

Namespaces

namespace  hmi

Functions

RenderLayer hmi::planeRenderLayer (core::PlaneDepth depth) noexcept
 Projette la profondeur d'un plan sur le calque de rendu correspondant.
std::vector< PlaneTexturehmi::resolvePlaneTextures (TextureCache &cache, const std::filesystem::path &directory, const std::vector< core::Plane > &planes)
 Résout les images des plans d'un niveau (accès disque/GPU), dans l'ordre de la liste.
void hmi::composePlanes (ComposedScene &scene, const std::vector< core::Plane > &planes, const std::vector< PlaneTexture > &textures, int levelWidth, int levelHeight, RenderMode mode, const PlaneVisibility &visibility=PlaneVisibility{}, const PlaneParallax &parallax=PlaneParallax{})
 Compose les plans picturaux d'un niveau, dans l'ordre déclaré.
std::size_t hmi::planeTextureMemoryBytes (const core::Plane &plane, int levelWidth, int levelHeight) noexcept
 Mémoire de texture qu'un plan exige du format, en octets (EX-NFR-043).
std::size_t hmi::planesTextureMemoryBytes (const std::vector< core::Plane > &planes, int levelWidth, int levelHeight) noexcept
 Somme de hmi::planeTextureMemoryBytes sur tous les plans d'un niveau.

Variables

const std::string hmi::PLANES_SUBDIRECTORY = "Plans/"
 Sous-dossier des images de plans, relatif au dossier des niveaux — un plan est une donnée de niveau, pas un asset réutilisable : il ne vit pas sous Assets/.
constexpr std::size_t hmi::PLANE_TEXTURE_BYTES_PER_PIXEL = 4
 Octets par texel d'une texture de plan : R8G8B8A8_UNORM, comme toute texture du projet.

Detailed Description

Projection profondeur → calque, résolution et composition des plans picturaux (EX-REN-049, EX-DEC-040 à EX-DEC-042, LOT-69 TACHE-05).