151 void openLevel(
const std::filesystem::path& path);
174 void undo()
override;
176 void redo()
override;
239 void startGame(std::filesystem::path map);
261 void setVSync(
bool enabled) noexcept;
294 [[nodiscard]] std::optional<core::GridPosition>
hoveredCell() const noexcept {
299 [[nodiscard]]
float zoom() const noexcept {
310 void setHighlightedLink(std::optional<std::pair<core::GridPosition, core::GridPosition>> link);
439 void selectPlane(std::optional<std::size_t> index);
447 void movePlane(std::size_t index,
bool forward);
506 void initialize(QRhiCommandBuffer* commandBuffer)
override;
508 void render(QRhiCommandBuffer* commandBuffer)
override;
524 void tick(
float elapsedSeconds);
528 void renderFrame(QRhiCommandBuffer* commandBuffer,
float deltaSeconds);
550 [[nodiscard]] std::optional<core::GridPosition>
cellAt(
const QMouseEvent*
event);
566 [[nodiscard]] std::optional<std::pair<core::GridPosition, core::GridPosition>>
highlight()
589 [[nodiscard]] QString
statusText(
const char* key)
const;
591 using Clock = std::chrono::steady_clock;
661 std::optional<std::pair<core::GridPosition, core::GridPosition>>
_selection;
665 std::optional<std::pair<core::GridPosition, core::GridPosition>>
_selectedLink;
Caméra 2D : conversion entre unités monde et pixels écran.
Compteur de cadence et de primitives, affichable en jeu (LOT-62 TACHE-02, EX-NFR-001,...
Cible des commandes Annuler/Refaire/Copier/Coller, indépendante du contexte d'édition qui les impléme...
Association remappable action d'éditeur -> touche clavier, avec persistance (EX-CTRL-012).
Cadenceur à pas de temps fixe pour une simulation déterministe.
Association remappable action de jeu -> touche clavier, avec persistance (EX-CTRL-012).
Session de jeu réutilisable : simule et rend un niveau, sans dépendance d'écran.
Association remappable action de jeu -> bouton manette, avec persistance (EX-CTRL-002,...
Sondage XInput de la manette, fusionné dans un InputState (réutilisable).
Position entière dans la grille d'un niveau (colonne, ligne).
Jeu de visibilités par calque du mode d'inspection de l'éditeur (LOT-51, EX-EDIT-044).
Représentation mutable d'un niveau en cours d'édition.
Visibilité par rang de plan dans l'éditeur (EX-DEC-045, LOT-69 TACHE-05).
Rectangle aligné sur les axes en coordonnées monde, propre à Core.
Mode de rendu Physique/Texture et sa persistance (EX-REN-046).
Les ressources QRhi que toute surface de rendu du projet possède (LOT-86).
Association type de tuile → asset et mode de rendu, groupée en jeux nommés (EX-EDIT-042,...
Types de tuiles d'une carte et utilitaires associés.
Convertit un temps réel écoulé variable en un nombre de pas de simulation fixes.
Definition FixedTimestep.h:24
Niveau mutable en cours d'édition, distinct de Level (immuable, LOT-07).
Definition LevelDraft.h:43
Lecture d'échantillons courts à faible latence, avec volume global et repli muet.
Definition AudioEngine.h:36
Police bitmap chargée depuis Assets/Fonts/, avec repli procédural (EX-NFR-040).
Definition BitmapFont.h:39
Caméra 2D orthographique : projette le monde vers l'écran pour le rendu.
Definition Camera2D.h:79
Liste ordonnée des primitives d'une image, indépendante de Direct3D.
Definition ComposedScene.h:134
Dessine la grille d'un core::LevelDraft en cours d'édition.
Definition DraftRenderer.h:70
Interface pure implémentée par le contexte d'édition actif.
Definition EditContextTarget.h:24
Association action d'éditeur -> touche, avec persistance JSON (EX-CTRL-012, LOT-29).
Definition EditorKeyBindings.h:53
Moyenne glissante de la cadence de rendu, sur une fenêtre courte.
Definition DiagnosticsHud.h:36
Association action de jeu -> touche, avec persistance JSON (EX-CTRL-012, LOT-29).
Definition GameKeyBindings.h:50
void exitToMenuRequested()
Demande de retour au menu principal (fin de la séquence de niveaux – plus depuis LOT-59 TACHE-02 sur ...
hmi::EditorKeyBindings & editorBindings() noexcept
Accès modifiable aux touches d'éditeur (pour le remappage, LOT-57 TACHE-04), même principe que gameBi...
Definition GameViewport.h:142
core::GridPosition clampedCell(const QMouseEvent *event)
Case de grille sous event, bornée à la grille (jamais hors bornes) — pour les glissers rectangle/séle...
Definition GameViewport.cpp:233
core::LevelDraft _draft
Brouillon en cours d'édition (source de vérité).
Definition GameViewport.h:624
bool linkExists(core::GridPosition switchPosition, core::GridPosition targetPosition) const
Definition GameViewport.cpp:553
bool _diagnosticsEnabled
Compteur de diagnostic (F9, LOT-62 TACHE-02) : désactivé par défaut (EX-NFR-040, point de départ sans...
Definition GameViewport.h:612
void toolChanged(hmi::EditorTool tool)
L'outil actif vient de changer par un moyen autre que le panneau Outils (raccourci clavier,...
bool _manualCamera
true dès que la molette ou un glisser bouton droit a été utilisé : la caméra suit _manualZoom/_manual...
Definition GameViewport.h:630
void tick(float elapsedSeconds)
Avance la simulation d'une image (entrées, pas fixes, sons) — sans rien dessiner.
Definition GameViewport.cpp:615
bool _loopStarted
Definition GameViewport.h:607
float maxManualZoom() const
Definition GameViewport.cpp:200
void setTool(hmi::EditorTool tool)
Définit l'outil d'édition actif (pinceau, rectangle, sélection, lien, texture par instance).
Definition GameViewport.cpp:101
core::Vector2 _rightDragLastScreen
Dernière position écran du glisser droit en cours.
Definition GameViewport.h:637
void selectPlane(std::optional< std::size_t > index)
Sélectionne (ou désélectionne) un plan depuis le panneau.
Definition GameViewport.cpp:405
void setPlaneOpacity(std::size_t index, float opacity)
Change l'opacité du plan index.
Definition GameViewport.cpp:467
void openLevel(const std::filesystem::path &path)
Ouvre un fichier de niveau comme brouillon d'édition (remplace le brouillon courant).
Definition GameViewport.cpp:955
std::string _skinSet
Jeu de skins courant ; vide pour le jeu par défaut du catalogue.
Definition GameViewport.h:599
void startPlaytest()
Lance l'essai immédiat (P) sur un brouillon valide ; message d'erreur sinon.
Definition GameViewport.cpp:976
void loadGameMap()
Charge _gameMap et arme la session de jeu.
Definition GameViewport.cpp:1082
hmi::SceneResources _scene
Lot de sprites, atlas, police, textures et skins — communs au viewport de l'éditeur et à l'élément Qt...
Definition GameViewport.h:596
void pauseRequested()
Échap (ou le bouton B manette) en mode jeu réel, hors pause : demande l'ouverture de l'écran de pause...
hmi::EditorTool _tool
Outil d'édition actif (barre d'outils).
Definition GameViewport.h:646
bool _vsync
Synchronisation verticale demandée (cf. setVSyncEnabled).
Definition GameViewport.h:680
bool isDirty() const noexcept
Definition GameViewport.h:154
void hoveredCellChanged(std::optional< core::GridPosition > cell)
La case survolée vient de changer (déplacement de souris, ou sortie du viewport) — consommé par la ba...
bool _cameraPanned
true dès qu'un glisser bouton droit a dépassé le seuil de mouvement : distingue un pan d'un simple cl...
Definition GameViewport.h:636
bool _showGrid
Grille de repère (cases + salles) affichée (bascule F10).
Definition GameViewport.h:672
std::optional< std::size_t > selectedPlaneIndex() const noexcept
Definition GameViewport.h:283
hmi::Camera2D _camera
Caméra d'édition (cadre le niveau entier par défaut).
Definition GameViewport.h:625
void render(QRhiCommandBuffer *commandBuffer) override
Dessine une image : avance la simulation, compose la scène, puis la soumet.
Definition GameViewport.cpp:729
void setLayerVisible(RenderLayer layer, bool visible) noexcept
Affiche ou masque un calque du mode d'inspection (section « Calques » du panneau « Textures »,...
Definition GameViewport.h:375
std::optional< core::GridPosition > _pendingLink
Case du déclencheur/de la cible en attente d'appariement (outil Lien, premier clic).
Definition GameViewport.h:663
hmi::GameKeyBindings & gameBindings() noexcept
Accès modifiable aux touches de jeu (pour le remappage) : la session de jeu lit ces mêmes bindings,...
Definition GameViewport.h:130
void zoomChanged(float zoom)
Le zoom d'édition vient de changer (molette, pan, recadrage) — consommé par la barre d'état (LOT-57 T...
void setLocalization(const Localization *loc) noexcept
Fournit le catalogue de traduction (les messages d'état émis sont alors localisés).
Definition GameViewport.h:113
void showAllLayers() noexcept
Rétablit la visibilité de tous les calques (action « tout afficher », TACHE-03).
Definition GameViewport.h:380
void draftChanged()
Le brouillon vient d'être modifié (peinture, undo/redo, chargement, lien…) — le panneau « Liens » se ...
std::optional< std::pair< core::GridPosition, core::GridPosition > > _selectedLink
Liaison sélectionnée dans le panneau « Liens » (déclencheur, cible) : mise en surbrillance.
Definition GameViewport.h:665
bool canRedo() const override
Definition GameViewport.h:182
void planeSelectionChanged(std::optional< std::size_t > index)
La sélection de plan vient de changer par un moyen autre que le panneau (retrait, réordonnancement) —...
Clock::time_point _previousFrame
Definition GameViewport.h:606
const LayerVisibility & layerVisibility() const noexcept
Jeu de visibilités par calque du mode d'inspection « définition des textures » (LOT-51,...
Definition GameViewport.h:366
void toggleGrid() noexcept
Bascule l'affichage de la grille de repère (F10).
Definition GameViewport.cpp:1014
bool canCopy() const override
Definition GameViewport.h:194
void save()
Enregistre le brouillon (Ctrl+S) : valide (LevelDraft::toLevel) puis écrit le fichier ; un brouillon ...
Definition GameViewport.cpp:902
void renderFrame(QRhiCommandBuffer *commandBuffer, float deltaSeconds)
Compose et soumet une image sur commandBuffer.
Definition GameViewport.cpp:749
void invalidateAsset(const std::string &fileName)
Rechargement à chaud ciblé d'un seul asset (LOT-43 TACHE-03).
Definition GameViewport.cpp:547
void releaseResources() override
Libère les ressources graphiques quand QRhiWidget défait son interface de rendu.
Definition GameViewport.cpp:719
std::optional< core::GridPosition > hoveredCell() const noexcept
Definition GameViewport.h:294
void initialize(QRhiCommandBuffer *commandBuffer) override
Crée (ou recrée) les ressources graphiques quand QRhiWidget fournit son interface de rendu,...
Definition GameViewport.cpp:685
int levelHeight() const
Definition GameViewport.cpp:1123
void resetCamera() noexcept
Réinitialise le cadrage manuel au cadrage automatique (touche 0).
Definition GameViewport.cpp:1018
void mouseReleaseEvent(QMouseEvent *event) override
Definition GameViewport.cpp:1188
void resizeLevel(int width, int height)
Redimensionne le niveau en cours d'édition (EX-EDIT-005).
Definition GameViewport.cpp:1108
void addCameraZoneFromDrag(core::GridPosition a, core::GridPosition b)
Ajoute une zone de caméra couvrant le rectangle (bornes a, b incluses, outil CameraZone,...
Definition GameViewport.cpp:262
bool _paused
Écran de pause affiché (LOT-59 TACHE-02) : tick() n'avance plus l'accumulateur de pas fixe tant que c...
Definition GameViewport.h:685
AudioEngine * _audioEngine
Moteur audio (LOT-60 TACHE-03), non possédé ; nul = sons de jeu désactivés (EX-NFR-040).
Definition GameViewport.h:659
void undo() override
Annule la dernière modification du brouillon (Ctrl+Z) ; sans effet si rien à annuler.
Definition GameViewport.cpp:1000
int levelWidth() const
Definition GameViewport.cpp:1119
std::optional< std::pair< core::GridPosition, core::GridPosition > > _selection
Definition GameViewport.h:661
bool renameOpenLevel(const std::string &newName)
Renomme le niveau ouvert (action Rename, F2, LOT-57 TACHE-04).
Definition GameViewport.cpp:924
int pixelHeight() const
Definition GameViewport.cpp:132
bool event(QEvent *event) override
Definition GameViewport.cpp:824
RenderMode renderMode() const noexcept
Definition GameViewport.h:357
std::optional< core::GridPosition > cellAt(const QMouseEvent *event)
Case de grille sous la position écran donnée (pixels physiques), si dans les bornes.
Definition GameViewport.cpp:211
bool _dirty
Modifications non enregistrées (garde-fou d'ouverture).
Definition GameViewport.h:671
void setAudioEngine(AudioEngine *engine) noexcept
Fournit le moteur audio (LOT-60 TACHE-03) : les événements de jeu détectés par hmi::GameSession (saut...
Definition GameViewport.h:124
std::optional< std::string > _activeTextureAsset
Asset assigné au clic par l'outil « Texture par instance » (LOT-45), vide si aucun n'est sélectionné ...
Definition GameViewport.h:641
hmi::GamepadPoller _gamepad
Definition GameViewport.h:604
void setRenderMode(RenderMode mode)
Choisit le mode de rendu et persiste le choix (EX-REN-046, EX-IHM-011).
Definition GameViewport.cpp:113
core::GridPosition _dragCurrent
Case courante du glisser (pour l'aperçu).
Definition GameViewport.h:650
std::optional< core::GridPosition > _highlightedOverride
Case sélectionnée dans la section « Objets » du panneau « Textures » (LOT-45) : mise en surbrillance,...
Definition GameViewport.h:668
void copy() override
Copie la sélection courante dans le presse-papiers local (Ctrl+C, EditContextTarget).
Definition GameViewport.h:186
void toggleRenderMode()
Bascule le mode de rendu Physique/Texture (F8, EX-REN-046) ; actif en édition, en essai et en jeu rée...
Definition GameViewport.cpp:1022
void renderDiagnosticsOverlay(int viewportWidth, int viewportHeight)
Compose et soumet le compteur de diagnostic (LOT-62 TACHE-02), coin haut-droit de l'écran – sans effe...
Definition GameViewport.cpp:787
LayerVisibility _layerVisibility
Jeu de visibilités par calque du mode d'inspection « définition des textures » (LOT-51) — tout visibl...
Definition GameViewport.h:679
void reloadAssets()
Rechargement à chaud global des assets graphiques (LOT-43 TACHE-03).
Definition GameViewport.cpp:526
void updateEditCamera()
Recale la caméra d'édition : cadrage automatique sur le niveau entier, sauf pan/zoom manuel actif (mo...
Definition GameViewport.cpp:171
std::optional< std::pair< core::GridPosition, core::GridPosition > > highlight() const
Zone à mettre en surbrillance (glisser en cours, sinon sélection mémorisée), le cas échéant.
Definition GameViewport.cpp:310
bool diagnosticsOverlayEnabled() const noexcept
Definition GameViewport.h:223
core::FixedTimestep _timestep
Definition GameViewport.h:605
void movePlane(std::size_t index, bool forward)
Déplace le plan index d'un rang ; forward le rapproche du dessus de la liste.
Definition GameViewport.cpp:436
void pasteClipboard()
Colle le presse-papiers à la case survolée (Ctrl+V).
Definition GameViewport.cpp:300
bool _rightDragging
Un glisser bouton droit est en cours (pan potentiel).
Definition GameViewport.h:633
core::Vector2 screenPosition(const QMouseEvent *event) const
Position écran (pixels physiques) d'un événement souris, convertie par le ratio d'affichage — même co...
Definition GameViewport.cpp:187
int pixelWidth() const
Definition GameViewport.cpp:128
void applyRectangle(core::GridPosition a, core::GridPosition b)
Remplit le rectangle (bornes a, b incluses) du type actif (outil Rectangle).
Definition GameViewport.cpp:245
GameViewport(const GameViewport &)=delete
const PlaneVisibility & planeVisibility() const noexcept
Definition GameViewport.h:288
bool simulationPaused() const noexcept
Definition GameViewport.h:250
void resumeSimulation()
Reprend la simulation après pauseSimulation() : réarme l'horloge de référence (_previousFrame) sur l'...
Definition GameViewport.cpp:1061
void setPlaneDensity(std::size_t index, int pixelsPerUnit)
Change la densité déclarée du plan index (le rééchantillonnage de l'image est fait par l'appelant,...
Definition GameViewport.cpp:455
const core::LevelDraft & draft() const noexcept
Definition GameViewport.h:278
void handleLinkClick(const QMouseEvent *event)
Résout le clic de l'outil Lien (hmi::resolveLinkClick) et l'applique (attente, liaison).
Definition GameViewport.cpp:564
GameViewport & operator=(const GameViewport &)=delete
void setPlaneVisible(std::size_t index, bool visible)
Masque ou réaffiche le plan index (aide d'édition).
Definition GameViewport.cpp:478
void wheelEvent(QWheelEvent *event) override
Definition GameViewport.cpp:1262
void setLevelParallaxEnabled(bool enabled)
Change le drapeau de parallaxe du niveau.
Definition GameViewport.cpp:473
bool canUndo() const override
Definition GameViewport.h:178
int _lastSimulationSteps
Nombre de pas de simulation consommés au dernier tick() – distinct de la cadence de rendu depuis le L...
Definition GameViewport.h:618
void setVSync(bool enabled) noexcept
Active/désactive la synchronisation verticale (EX-REN-022).
Definition GameViewport.cpp:1049
void paste() override
Colle le presse-papiers à la case survolée (Ctrl+V, EditContextTarget).
Definition GameViewport.h:190
void setActiveTile(core::TileType type) noexcept
Définit le type de tuile peint au clic (relié à la sélection de la palette).
Definition GameViewport.h:92
std::chrono::steady_clock Clock
Definition GameViewport.h:591
void addPlane(core::Plane plane)
Ajoute plane à la fin de la liste et le sélectionne.
Definition GameViewport.cpp:413
GameViewport(QWidget *parent=nullptr)
Definition GameViewport.cpp:82
void setDiagnosticsOverlayEnabled(bool enabled) noexcept
Affiche ou masque le compteur de diagnostic.
Definition GameViewport.cpp:1026
bool _painting
Un glisser de peinture (Pinceau) est en cours.
Definition GameViewport.h:647
RenderMode _renderMode
Mode de rendu courant (bascule F8, EX-REN-046), restauré des préférences au démarrage et réécrit à ch...
Definition GameViewport.h:676
void removeTextureOverride(core::GridPosition position)
Retire l'override de texture de position (bouton « Retirer » de la section « Objets »,...
Definition GameViewport.cpp:344
void copySelection()
Copie la zone sélectionnée dans le presse-papiers local (Ctrl+C).
Definition GameViewport.cpp:281
void setLevelSkinSet(std::optional< std::string > skinSet)
Assigne le jeu de skins du niveau courant (section « Fond », LOT-44).
Definition GameViewport.cpp:503
void removePlane(std::size_t index)
Retire l'entrée du plan index.
Definition GameViewport.cpp:420
hmi::InputState _input
Definition GameViewport.h:603
float _lastEmittedZoom
Dernier zoom notifié (zoomChanged), évite l'émission en boucle.
Definition GameViewport.h:654
std::vector< std::vector< core::TileType > > _clipboard
Presse-papiers local (types de tuiles, [ligne][colonne]), pour Ctrl+C/Ctrl+V.
Definition GameViewport.h:670
void setSkinSet(const std::string &setName)
Désigne le jeu de skins à utiliser pour le rendu (LOT-42).
Definition GameViewport.cpp:514
float zoom() const noexcept
Definition GameViewport.h:299
void updateMousePosition(const QMouseEvent *event)
Definition GameViewport.cpp:1140
void setActiveTextureAsset(std::optional< std::string > asset) noexcept
Définit l'asset assigné au clic par l'outil « Texture par instance » (LOT-45), relié à la sélection d...
Definition GameViewport.h:98
void markDraftMutated()
Invalide le rendu du brouillon et notifie les panneaux dépendants (draftChanged) — à appeler après to...
Definition GameViewport.cpp:323
core::Vector2 _manualCenter
Centre manuel courant, actif si _manualCamera.
Definition GameViewport.h:632
void quitGame() noexcept
Abandonne la partie en cours (« Quitter vers le menu » depuis la pause, LOT-59 TACHE-02,...
Definition GameViewport.cpp:1069
hmi::PlaneVisibility _planeVisibility
Visibilité des plans dans l'éditeur : aide d'édition, jamais persistée ni annulable.
Definition GameViewport.h:645
void handleTextureAssignClick(const QMouseEvent *event, bool rightClick)
Résout le clic de l'outil « Texture par instance » (hmi::resolveTextureAssignClick) et l'applique (as...
Definition GameViewport.cpp:357
void mousePressEvent(QMouseEvent *event) override
Definition GameViewport.cpp:1146
hmi::GamepadBindings _gamepadBindings
Definition GameViewport.h:601
hmi::ComposedScene _diagnosticsScene
Scène dédiée du compteur de diagnostic, jamais partagée avec _session (dont le HUD de jeu vit dans sa...
Definition GameViewport.h:622
void keyPressEvent(QKeyEvent *event) override
Definition GameViewport.cpp:843
core::Vector2 worldPositionAt(const QMouseEvent *event)
Convertit la position écran d'un événement souris en position monde, non calée sur la grille (EX-DEC-...
Definition GameViewport.cpp:398
void setLevelCameraFraming(core::CameraFramingConfig cameraFraming)
Change le cadrage de caméra du niveau courant (section « Cadrage », EX-EDIT-028, LOT-64).
Definition GameViewport.cpp:509
bool wouldResizeDrop(int width, int height) const
Definition GameViewport.cpp:1115
std::unique_ptr< hmi::DraftRenderer > _draftRenderer
Definition GameViewport.h:597
void setHighlightedLink(std::optional< std::pair< core::GridPosition, core::GridPosition > > link)
Met en surbrillance la liaison (déclencheur, cible) dans le viewport (sélection depuis le panneau « L...
Definition GameViewport.cpp:330
hmi::GameKeyBindings _gameBindings
Definition GameViewport.h:600
void setLevelBackground(std::optional< std::string > background)
Assigne l'asset de fond du niveau courant (section « Fond », LOT-44).
Definition GameViewport.cpp:497
void startGame(std::filesystem::path map)
Lance le jeu sur la carte map.
Definition GameViewport.cpp:1075
core::GridPosition _dragStart
Case de départ du glisser Rectangle/Sélection.
Definition GameViewport.h:649
void mouseMoveEvent(QMouseEvent *event) override
Definition GameViewport.cpp:1225
QString statusText(const char *key) const
Texte localisé d'une clé de statut (repli sur la clé si aucun catalogue).
Definition GameViewport.cpp:1127
std::optional< core::GridPosition > _hoverCell
Case actuellement survolée (cible du collage) ; absente hors de la grille ou après que le curseur a q...
Definition GameViewport.h:653
void createResources()
Crée l'atlas, la police, le cache de textures et le pipeline de dessin sur l'interface de rendu coura...
Definition GameViewport.cpp:136
bool canPaste() const override
Definition GameViewport.h:198
hmi::GamepadBindings & gamepadBindings() noexcept
Accès modifiable aux boutons manette (pour le remappage), même principe que gameBindings.
Definition GameViewport.h:136
void toggleDiagnosticsOverlay() noexcept
Bascule le compteur de diagnostic (cadence, primitives, passes, pas de simulation ; F9,...
Definition GameViewport.cpp:1033
void setPlaneParallax(std::size_t index, float parallaxX, float parallaxY)
Change les facteurs de parallaxe du plan index.
Definition GameViewport.cpp:461
float _manualZoom
Zoom manuel courant, actif si _manualCamera.
Definition GameViewport.h:631
void stopPlaytest()
Termine l'essai et restitue l'éditeur (brouillon intact).
Definition GameViewport.cpp:1038
std::filesystem::path _gameMap
Carte jouée par le mode jeu (LOT-67 : une, pas une séquence).
Definition GameViewport.h:686
void unlinkMechanism(core::GridPosition targetPosition)
Supprime la liaison dont la cible est targetPosition (bouton « Supprimer » du panneau « Liens ») ; sa...
Definition GameViewport.cpp:338
hmi::FrameRateAverage _frameRateAverage
Moyenne glissante de la cadence de rendu, alimentée uniquement quand _diagnosticsEnabled est vrai (ri...
Definition GameViewport.h:615
SkinCatalog & skinCatalog() noexcept
Catalogue des jeux de skins, édité par le panneau « Textures » (LOT-42).
Definition GameViewport.h:391
void setHighlightedTextureOverride(std::optional< core::GridPosition > position)
Met en surbrillance une case portant un override (sélection depuis la section « Objets »,...
Definition GameViewport.cpp:350
const Localization * _loc
Sélection mémorisée (bornes min/max incluses), pour copier (Ctrl+C).
Definition GameViewport.h:657
EditorTool activeTool() const noexcept
Definition GameViewport.h:304
void keyReleaseEvent(QKeyEvent *event) override
Definition GameViewport.cpp:1131
hmi::EditorKeyBindings _editorBindings
Raccourcis d'éditeur remappables (LOT-45).
Definition GameViewport.h:602
void resourcesReady()
Les ressources graphiques et le catalogue de skins viennent d'être (re)créés (QRhiWidget::initialize)...
void setPlaneDepth(std::size_t index, core::PlaneDepth depth)
Change la profondeur du plan index.
Definition GameViewport.cpp:449
core::TileType _activeTile
Type peint au clic (palette).
Definition GameViewport.h:638
void setPlaneIsolated(std::size_t index, bool isolate)
Isole le plan index, ou réaffiche tout si isolate est faux.
Definition GameViewport.cpp:486
float minManualZoom() const
Definition GameViewport.cpp:193
bool _dragging
Un glisser Rectangle/Sélection est en cours.
Definition GameViewport.h:648
void statusMessage(const QString &message)
Message d'état à afficher (enregistrement, essai, erreur de validation…).
std::optional< std::size_t > _selectedPlane
Plan sélectionné dans le panneau « Plans » (LOT-69), si un l'est.
Definition GameViewport.h:643
void paintAt(const QMouseEvent *event)
Peint le type actif à la case sous event, si valide (invalide la scène rendue).
Definition GameViewport.cpp:225
void removeCameraZone(std::size_t index)
Retire la zone de caméra au rang index (section « Cadrage », EX-LVL-007, EX-EDIT-029) ; sans effet si...
Definition GameViewport.cpp:275
bool _gameMode
La session courante est une partie (menu Jouer) et non un essai depuis l'éditeur (enchaînement/retour...
Definition GameViewport.h:681
bool vsyncEnabled() const noexcept
Definition GameViewport.h:263
void pauseSimulation() noexcept
Suspend la simulation (écran de pause, LOT-59 TACHE-02) : tick() cesse d'alimenter l'accumulateur de ...
Definition GameViewport.cpp:1057
std::optional< hmi::GameSession > _session
Session de jeu de l'essai immédiat ; nulle en mode édition (essai ajouté au LOT-35 TACHE-04).
Definition GameViewport.h:691
void redo() override
Refait la dernière modification annulée (Ctrl+Y) ; sans effet si rien à refaire.
Definition GameViewport.cpp:1007
void renderModeChanged(RenderMode mode)
Le mode de rendu vient de basculer (F8) — la palette met ses vignettes à jour pour rester fidèle au c...
Association action de jeu (GameAction, partagée avec GameKeyBindings) -> bouton manette,...
Definition GamepadBindings.h:31
Sonde la manette (XInput, joueur 0) et fusionne son état dans un InputState.
Definition GamepadPoller.h:57
Jeu de visibilités par calque, pour le mode d'inspection « définition des textures » (LOT-51).
Definition LayerVisibility.h:48
Catalogue de traduction (i18n) : associe des clés stables à des chaînes selon la langue active,...
Definition Localization.h:29
Jeu de visibilités des plans picturaux d'un niveau, adressé par rang.
Definition PlaneVisibility.h:39
Lot de sprites, atlas, police bitmap, registre de textures et catalogue de skins — créés ensemble,...
Definition SceneResources.h:47
Catalogue des jeux de skins : (jeu, type de tuile) → { asset, mode }.
Definition SkinCatalog.h:100
Dessine des quads texturés au travers de QRhi, avec transparence et échantillonnage nearest (pixel ar...
Definition SpriteBatch.h:59
Texture d'atlas et table de régions, chargée depuis un fichier image avec repli procédural (EX-REN-04...
Definition TextureAtlas.h:40
Charge, valide et met en cache des textures GPU désignées par leur nom de fichier logique.
Definition TextureCache.h:60
PlaneDepth
Position d'un plan dans l'ordonnancement de rendu, relativement au personnage (EX-DEC-042).
Definition Plane.h:28
TileType
Type d'une tuile de la grille d'une carte (EX-GP-001).
Definition TileType.h:32
@ Solid
Definition TileType.h:34
Definition AudioEngine.cpp:15
EditorTool
Outil actif dans la grille de l'éditeur, changé via Tab ou la barre d'outils (hmi::EditorActions).
Definition EditorTool.h:35
@ Paint
Definition EditorTool.h:35
constexpr RenderMode DEFAULT_RENDER_MODE
Mode appliqué au premier lancement et à défaut de préférence exploitable.
Definition RenderMode.h:39
RenderLayer
Calques de dessin, du plus arrière au plus avant (EX-REN-014, EX-DEC-002).
Definition RenderLayer.h:42
RenderMode
Mode de rendu de la scène : lecture directe des collisions, ou habillage.
Definition RenderMode.h:23
Cadrage de caméra résolu d'un niveau : le mode retenu et ses paramètres.
Definition CameraFraming.h:71
Position d'une case dans la grille d'un niveau, en coordonnées entières.
Definition GridPosition.h:20
Plan pictural : image couvrant tout le niveau, avec sa densité, sa parallaxe et sa profondeur (EX-DEC...
Definition Plane.h:53
Vecteur bidimensionnel en coordonnées monde (composantes float).
Definition Vector2.h:21