33 std::string_view name)
noexcept;
99 const std::optional<CameraFramingConfig>& declared,
int levelWidth,
int levelHeight)
noexcept;
Espace de noms du moteur et de la logique de jeu.
Definition Bootstrap.h:9
std::string_view cameraFramingModeName(CameraFramingMode mode) noexcept
Nom JSON du mode (symétrique à parseCameraFramingMode), pour la sérialisation.
Definition CameraFraming.cpp:11
constexpr int DEFAULT_ROOM_WIDTH_TILES
Taille de salle par défaut du mode par salle, en cases.
Definition CameraFraming.h:42
constexpr int DEFAULT_ROOM_HEIGHT_TILES
Definition CameraFraming.h:43
CameraFramingMode
Mode de cadrage de caméra d'un niveau (EX-REN-016) : décision de conception, pas une règle déduite de...
Definition CameraFraming.h:22
@ WholeLevel
Le niveau entier tient dans le cadre (EX-REN-013).
Definition CameraFraming.h:23
@ Follow
Caméra de suivi du personnage (zone morte, anticipation, bornage).
Definition CameraFraming.h:25
@ PerRoom
Cadrage salle par salle, coupure nette au franchissement (EX-REN-015).
Definition CameraFraming.h:24
std::optional< std::string > validateCameraFramingConfig(const CameraFramingConfig &config, int levelWidth, int levelHeight)
Valide un cadrage déclaré (EX-LVL-004) : taille de vue nulle/négative ou supérieure au niveau,...
Definition CameraFraming.cpp:52
CameraFramingConfig resolveCameraFraming(const std::optional< CameraFramingConfig > &declared, int levelWidth, int levelHeight) noexcept
Résout le cadrage effectif d'un niveau à partir du champ déclaré (peut être absent).
Definition CameraFraming.cpp:40
std::optional< CameraFramingMode > parseCameraFramingMode(std::string_view name) noexcept
Reconnaît le nom JSON d'un mode ; std::nullopt si non reconnu (mode inconnu, EX-LVL-004).
Definition CameraFraming.cpp:24
Cadrage de caméra résolu d'un niveau : le mode retenu et ses paramètres.
Definition CameraFraming.h:71
std::optional< int > roomWidthTiles
Definition CameraFraming.h:73
std::vector< CameraZone > zones
Zones de caméra dessinées à la main (mode PerRoom uniquement) : si non vide, remplace entièrement le ...
Definition CameraFraming.h:82
CameraFramingMode mode
Definition CameraFraming.h:72
std::optional< int > roomHeightTiles
Definition CameraFraming.h:74
bool operator==(const CameraFramingConfig &) const noexcept=default
Rectangle de caméra dessiné à la main par le level designer (mode par salle), en cases.
Definition CameraFraming.h:53
int x
Definition CameraFraming.h:54
bool operator==(const CameraZone &) const noexcept=default
int width
Definition CameraFraming.h:56
int y
Definition CameraFraming.h:55
int height
Definition CameraFraming.h:57