Logo Khaganat

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:mmorpg:client:iris:developpement [29 July 2026 à 13:00:04] – [Les icônes du thème] YannKfr:mmorpg:client:iris:developpement [04 August 2026 à 12:40:10] (Version actuelle) – [data_definition] YannK
Ligne 4: Ligne 4:
  
 En InGame, il est prévu pour faire tourner [[https://en.wikipedia.org/wiki/Entity_component_system|une architecture de type ECS]], basée sur [[https://github.com/csprance/gecs|le plugin GECS]]. En InGame, il est prévu pour faire tourner [[https://en.wikipedia.org/wiki/Entity_component_system|une architecture de type ECS]], basée sur [[https://github.com/csprance/gecs|le plugin GECS]].
- 
- 
-{{tag>godot client khanat mmorpg}} 
  
 ===== La hiérarchie des dossiers ===== ===== La hiérarchie des dossiers =====
Ligne 15: Ligne 12:
             "data"             "data"
             "data_definition"             "data_definition"
 +            "i18n"
             "scenes"             "scenes"
                 "widgets"                 "widgets"
Ligne 31: Ligne 29:
 Scripts servant à la création des classes de données du répertoire //data// et de tous les autres objets dérivés de la classe //Resource//. Scripts servant à la création des classes de données du répertoire //data// et de tous les autres objets dérivés de la classe //Resource//.
  
 +==== i18n ====
 +Fichiers servant à la traduction : fichiers .po par langue proposée et .pot pour le template.
 ==== scenes ==== ==== scenes ====
 Scènes utilisées pour le jeu, avec leur script lié s’il est unique. Le sous-répertoire accueille les widgets qui sont réutilisés de nombreuses fois. Scènes utilisées pour le jeu, avec leur script lié s’il est unique. Le sous-répertoire accueille les widgets qui sont réutilisés de nombreuses fois.
Ligne 82: Ligne 82:
 ===== L’interface ===== ===== L’interface =====
  
-Le système de préférences ’géré par le Global Settings (''%%res://autoloads/settings.gd%%'') intègre la gestion du thème qui définit les différents éléments d’affichage.+Le système de préférences ’géré par le Global Settings (''%%res://autoloads/settings.gd%%'') intègre la gestion du thème qui définit les différents éléments d’affichage. Voir la page dédiée sur la gestion du thème : [[gestion_theme]].
  
-==== Les icônes du thème ====+==== L’interface OutGame ====
  
-Les icônes sont définies dans la sous section **GuiIcons**, dans la section **Theme** dédiée au thème dans les presets (ceux par défault créé à l’origine sont créés à partir de la Resource SettingsPreset situé à ''%%res://data/settings/settings_default.tres%%''+Une scène (''%%res://scenes/lobby.tscn%%'') gère le menu principal de navigation.
  
-{{ :fr:mmorpg:client:iris:screen_capture_20260618_101059.jpg?direct&600 |}}+===== L’internationalisation =====
  
-Les éléments à indiquer sont: +L’internationnalisation se base sur l’usage de [[https://www.gnu.org/software/gettext/manual/gettext.html|gettext]] (fichiers .po). Une page dédiée détaille la façon dont les choses sont implémentées [[internationalisation]].
-  * Texture File: le fichier .svg où sont les icônes, organisées selon une grille et un ordre précis (voir plus bas) +
-  * Grid Module : la taille (en pixels) de la grille qui organise les différentes icônes dans le fichier +
-  * Columns Amount le nombre de colonnes dans le fichier.+
  
-Avec ces informations, le Global GuiMedia(''%%res://autoloads/gui_media.gd%%'') va aller chercher dans le fichier les appels qui lui sont faits depuis le code pour indiquer la bonne icône d’interface pour le thème choisi. 
- 
-L’ordre dans lequel les icônes sont disposées est crucial, car le système ira les chercher dans l’ordre indiqué par l’enum ''%%GuiMedia.Icon%%''. C’est ce qui permet pour les appels depuis les nodes Control de simplement écrire : 
- 
-<code> 
-Button.icon = GuiMedia.get_gui_icon(GuiIcon.Icon.GO_LEFT) 
-</code> 
- 
-pour obtenir la flêche indiquant vers la gauche. 
- 
-===== Les couleurs de thème pour les Controls ===== 
- 
-Les différentes //Theme Properties// des éléments ne sont pas toujours simples à visualiser/comprendre. Donc quelques notes pour aider à faire la grille de correspondance entre les Settings et le thème Godot en arrière-plan (réalisé dans `autoloads/settings.gd` avec la méthode `apply_theme_settings()` depuis le dictionnaire qu’elle contient `color_attribution_list` 
- 
-==== PanelContainer - Theme Properties ==== 
- 
-=== StyleBox === 
-  * panel : StyleBox 
-    * Style de fond du PanelContainer. Définit le cadre et le remplissage de la zone du Container, utilisé pour dessiner le background (bordures, couleur, arrondis, etc.) du conteneur. 
- 
-==== Button - Theme Properties ==== 
- 
-=== StyleBox === 
-On peut épingler une des StyleBox qui sera alors parente de toutes les autres : Cf.[[https://docs.godotengine.org/en/stable/tutorials/ui/gui_using_theme_editor.html#theme-types-and-items|Documentation Godot]]. 
-  * normal : StyleBox 
-    * Style par défaut du bouton, lorsque son état est nromal (ni survolé, ni pressé, ni désactivé). 
-  * hover : StyleBox 
-    * Style utilisé lorsque la souris survole le bouton. 
-  * pressed : StyleBox 
-    * Style utilisé lorsque le bouton est pressé (clic en cours ou état `activé`). 
-  * disabled : StyleBox 
-    * Style utilisé lorsque le bouton est désactivé (`disabled == true`). 
-  * focus : StyleBox 
-    * Style utilisé lorsque le bouton a le focus clavier/manette. 
-  * hover_pressed : StyleBox 
-    * Style utilisé lorsque le bouton est à la fois survolé et pressé. (Tous ne l’utilisent pas, voir par exemple le [[https://docs.godotengine.org/en/stable/classes/class_checkbutton.html#checkbutton|CheckButton]]). 
- 
-=== Font === 
-  * font : Font 
-    * Police pour le texte du bouton. 
- 
-=== Font Size === 
-  * font_size : int 
-    * Taille de la police pour le texte du bouton. 
- 
-=== Color (texte) === 
-  * font_color : Color 
-    * Couleur du texte en état normal. 
-  * font_hover_color : Color 
-    * Couleur du texte lorsque le bouton est survolé. 
-  * font_pressed_color : Color 
-    * Couleur du texte lorsque le bouton est pressé. 
-  * font_disabled_color : Color 
-    * Couleur du texte lorsque le bouton est désactivé. 
-  * font_focus_color : Color 
-    * Couleur du texte lorsque le bouton a le focus, sans survol/pression. 
-  * font_hover_pressed_color : Color 
-    * Couleur du texte lorsque le bouton est à la fois survolé et pressé. 
-  * font_outline_color : Color 
-    * Couleur du contour (outline) du texte si la police affiche un outline. 
- 
-=== Color (icône) === 
-  * icon_normal_color : Color 
-    * Couleur de modulation de l’icône en état normal. 
-  * icon_hover_color : Color 
-    * Couleur de modulation de l’icône lorsque le bouton est survolé. 
-  * icon_pressed_color : Color 
-    * Couleur de modulation de l’icône lorsque le bouton est pressé. 
-  * icon_disabled_color : Color 
-    * Couleur de modulation de l’icône lorsque le bouton est désactivé. 
-  * icon_hover_pressed_color : Color 
-    * Couleur de modulation de l’icône lorsque le bouton est à la fois survolé et pressé. 
- 
-=== Icon === 
-  * icon : Texture2D 
-    * Icône affichée à côté du texte dans le bouton. 
- 
-=== Constants === 
-  * hseparation : int 
-    * Espace horizontal entre l’icône et le texte du bouton. 
-  * outline_size : int 
-    * Épaisseur de l’outline du texte (si utilisé). 
-  * expand_icon : bool / int (selon version) 
-    * Contrôle la façon dont l’icône est étendue dans le bouton. 
-===== L’interface OutGame ===== 
- 
-Une scène (''%%res://scenes/lobby.tscn%%'') gère le menu principal de navigation. 
  
  
 +{{tag>godot client khanat mmorpg}}
CC Attribution-Share Alike 4.0 International Driven by DokuWiki
fr/mmorpg/client/iris/developpement.1785330004.txt.gz · Dernière modification : de YannK

Licences Mentions légales Accueil du site Contact Inclusion