Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
fr:tag:informatique:ryzom_core:start [2016/03/07 21:39] – ↷ Liens modifiés en raison d'un déplacement. zatalyz | fr:tag:informatique:ryzom_core:start [2023/06/30 21:26] (Version actuelle) – YannK | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Ryzom Core ====== | + | ====== |
{{ : | {{ : | ||
- | Le moteur de jeu utilisé pour créer le [[fr: | + | Le moteur de jeu utilisé pour créer le [[fr: |
{{INLINETOC}} | {{INLINETOC}} | ||
- | ===== Présentation générale du système Ryzom Core ===== | + | ===== Présentation générale du système |
- | Ryzom Core se base sur une architecture de serveur et de clients. Les clients sont installés par les joueurs sur leur ordinateur, et le serveur désignant l’ensemble des services qui permettent de mettre tous ces clients en relation. | + | OpenNeL / Ryzom Core se base sur une architecture de serveur et de clients. Les clients sont installés par les joueurs sur leur ordinateur, et le serveur désignant l’ensemble des services qui permettent de mettre tous ces clients en relation. |
- | ==== Le client ==== | + | <WRAP center round info 60%> |
+ | Lisez aussi [[fr: | ||
+ | </ | ||
+ | |||
+ | ==== Le client | ||
Il est composé de plusieurs éléments : | Il est composé de plusieurs éléments : | ||
Ligne 26: | Ligne 30: | ||
Parmi les données graphiques, on trouve surtout des .shape, des .ig et des .dds. Les deux premiers sont des fichiers 3D utilisés par le moteur de rendu du jeu (NeL), et le troisième est un format optimisé pour le rendu des jeux en 3D (on peut également utiliser du .png - ou du targa). | Parmi les données graphiques, on trouve surtout des .shape, des .ig et des .dds. Les deux premiers sont des fichiers 3D utilisés par le moteur de rendu du jeu (NeL), et le troisième est un format optimisé pour le rendu des jeux en 3D (on peut également utiliser du .png - ou du targa). | ||
- | Il y a ensuite tout un tas de fichiers de gameplay, ce sont les Data Sheets (qui sont sous forme binarisée pour éviter les exploits) et les Primitives. Ces derniers sont les éléments de base qui permettent de construire le monde, on y définit tout. Il y a un script qui fait une sorte de compilation des Data Sheets. Ceux-ci sont des fichiers xml très hiérarchisés et standardisés qui permettent de créer les données pour gérer tous les aspects du monde par le serveur et/ou le client. On y trouve toutes les créatures décrites, toutes les compétences, | + | Il y a ensuite tout un tas de fichiers de gameplay, ce sont les Data Sheets (" |
==== Le serveur ==== | ==== Le serveur ==== | ||
Ligne 32: | Ligne 36: | ||
La [[fr: | La [[fr: | ||
- | On trouve par exemple un service qui gère les Intelligences Artificielles par continent. Le système peut déporter plein de services sur des machines annexes, il a été conçu voilà 15 ans, à un moment où les ordinateurs étaient bien moins puissants. Par ailleurs, le système a été conçu pour minimiser les échanges de données. On peut jouer sans souci avec une clé 3G. C’est cette légèreté qui permet ce que même des très gros jeux ne gèrent pas toujours bien : des événements à plus de 200 joueurs en contact visuel. | + | On trouve par exemple un service qui gère les Intelligences Artificielles par continent. Le système peut déporter plein de services sur des machines annexes, il a été conçu voilà 15 ans, à un moment où les ordinateurs étaient bien moins puissants. Cela permet aussi une meilleure montée en charge. Par ailleurs, le système a été conçu pour minimiser les échanges de données. On peut jouer sans souci avec une clé 3G. C’est cette légèreté qui permet ce que même des très gros jeux ne gèrent pas toujours bien : des événements à plus de 200 joueurs en contact visuel. |
Le serveur se base sur les Primitives et les Data Sheets pour gérer les interactions avec joueurs, mais lui a les données non binarisées, | Le serveur se base sur les Primitives et les Data Sheets pour gérer les interactions avec joueurs, mais lui a les données non binarisées, | ||
Ligne 38: | Ligne 42: | ||
Il existe un certain nombre de commandes qu’on peut rentrer sur le terminal de gestion du shard mais aussi des commandes qu’on peut rentrer dans son chat en jeu, comme la commande “/ | Il existe un certain nombre de commandes qu’on peut rentrer sur le terminal de gestion du shard mais aussi des commandes qu’on peut rentrer dans son chat en jeu, comme la commande “/ | ||
- | ==== Les outils Ryzom Core ==== | + | ==== Les outils |
Historiquement il existait 3 outils : Object Viewer pour tout ce qui avait trait aux graphismes (création et gestion des systèmes de particules, de la microvégétation etc.), Georges Editor pour les Datasheets et World Editor pour les Primitives. Plus un plugin dédié à 3DSMax pour créer les objets 3D (.ig et shape) mais aussi et surtout créer les paysages (.zone) que ce soient des éléments de briques LIGO (donc pouvant ensuite être assemblés dynamiquement comme des LEGOs justement) ou utilisés tels quels (comme Pyr sur le monde d’Atys par exemple). | Historiquement il existait 3 outils : Object Viewer pour tout ce qui avait trait aux graphismes (création et gestion des systèmes de particules, de la microvégétation etc.), Georges Editor pour les Datasheets et World Editor pour les Primitives. Plus un plugin dédié à 3DSMax pour créer les objets 3D (.ig et shape) mais aussi et surtout créer les paysages (.zone) que ce soient des éléments de briques LIGO (donc pouvant ensuite être assemblés dynamiquement comme des LEGOs justement) ou utilisés tels quels (comme Pyr sur le monde d’Atys par exemple). | ||
- | Les gens de Ryzom Core ont fini par créer un super outil (basé sur une version QT de Object Viewer au départ), qui s’appelle désormais Ryzom Core Studio. Il est conçu comme un coeur avec des plugins. Il y a donc un plugin Object Viewer, un autre World Editor, un autre Georges mais pas seulement. Ils ont ajouté un éditeur d’interface, | + | Les gens de Ryzom Core ont fini par créer un super outil (basé sur une version QT de Object Viewer au départ), qui s’appelle désormais Ryzom Core Studio. Il est conçu comme un cœur avec des plugins. Il y a donc un plugin Object Viewer, un autre World Editor, un autre Georges mais pas seulement. Ils ont ajouté un éditeur d’interface, |
==== Les sources ==== | ==== Les sources ==== | ||
Ligne 55: | Ligne 59: | ||
On a ensuite les données de jeu : data sheets et primitives. Si les data sheets sont modifiées on doit les recompiler pour le client et les replacer dans le serveur puis le relancer (et le fournir aux clients bien sûr). Donc chaque fois qu’on veut créer un nouvel objet, une nouvelle compétence…, | On a ensuite les données de jeu : data sheets et primitives. Si les data sheets sont modifiées on doit les recompiler pour le client et les replacer dans le serveur puis le relancer (et le fournir aux clients bien sûr). Donc chaque fois qu’on veut créer un nouvel objet, une nouvelle compétence…, | ||
- | Enfin, les sources pour les exécutables sont très volumineuses. On y trouve aussi bien les sources (codé en c++) du client, du serveur que du moteur de jeu 3D, créé spécifiquement, | + | Enfin, les sources pour les exécutables sont très volumineuses. On y trouve aussi bien les sources (codé en c++) du client, du serveur que du moteur de jeu 3D, créé spécifiquement, |
+ | |||
+ | Nous mettons à disposition toutes les données de Khanat via [[gitlab>/ | ||
+ | \\ Nous avons réalisé une présentation avec des informations sur [[fr: | ||
<WRAP left round box 47%> | <WRAP left round box 47%> | ||
Ligne 64: | Ligne 71: | ||
* [[fr: | * [[fr: | ||
- | * [[fr:ds:sitem: | + | * [[fr: |
- | * [[fr:ds:sitem: | + | * [[fr: |
- | * [[fr:ds:sitem: | + | * [[fr: |
- | * [[fr:ds:sitem: | + | * [[fr: |
</ | </ | ||
Ligne 81: | Ligne 88: | ||
==== Le serveur de jeu ==== | ==== Le serveur de jeu ==== | ||
* [[fr: | * [[fr: | ||
- | * [[fr: | + | * [[fr: |
- | * [[fr: | + | * [[fr: |
- | * [[fr:ds:sitem: | + | * [[fr: |
- | * [[fr: | + | * [[fr: |
* [[fr: | * [[fr: | ||
* [[fr: | * [[fr: | ||
Ligne 93: | Ligne 100: | ||
* [[fr: | * [[fr: | ||
* [[fr: | * [[fr: | ||
- | * [[fr:ds:sitem: | + | * [[fr: |
- | ==== Le client Ryzom Core ==== | + | ==== Le client |
- | * [[fr: | + | * [[fr: |
* [[fr: | * [[fr: | ||
* [[fr: | * [[fr: | ||
Ligne 104: | Ligne 111: | ||
* [[fr: | * [[fr: | ||
* [[fr: | * [[fr: | ||
- | * [[fr: | + | * [[fr: |
* [[fr: | * [[fr: | ||
* [[fr: | * [[fr: | ||
* [[fr: | * [[fr: | ||
- | ==== Outils Ryzom Core /NeL3D / | + | ==== Outils |
- | * [[fr:recuperer_les_donnees|Récupérer les données de Ryzom Core sur BitBucket]] | + | * [[fr:principe_de_developpement_sur_khaganat|Récupérer les données de Khanat]] |
- | * [[fr: | + | * [[fr: |
* [[fr: | * [[fr: | ||
* [[fr: | * [[fr: | ||
Ligne 118: | Ligne 125: | ||
* [[fr: | * [[fr: | ||
* [[fr: | * [[fr: | ||
- | * [[fr: | + | * [[fr: |
- | ==== Tous les articles Ryzom Core ==== | + | ==== Tous les articles |
<wrap info> | <wrap info> | ||
Ceci est une liste automatique de tous les articles portants le tag **Ryzom Core**. | Ceci est une liste automatique de tous les articles portants le tag **Ryzom Core**. | ||
Ligne 132: | Ligne 139: | ||
~~NOCACHE~~ <catlist -noHead -noAddPageButton > | ~~NOCACHE~~ <catlist -noHead -noAddPageButton > | ||
- | {{tag> | + | {{tag> |