Interview de l'auteur d'un moteur physique pour RMXP |
|
|
| Écrit par Dragonsquall | |||
| 30-11-2008 | |||
|
King Kadelfek, est l'auteur d'un moteur physique et d'un éditeur 3D complètement intégré au logiciel de création de RPG: RPG Maker XP (Avant dernière version du logiciel conçu par Enterbrain).Ce moteur permet de gérer les étages, les collisions, et d'autres irrégularités de façon optimale tout en gardant une certaine simplicité qui fait le charme des logiciels RPG Maker.
[Relite] En quelques mots, Quelle est l’utilité d’un moteur physique dans un jeu vidéo ou dans ses processus de création ? Un moteur physique est un outil, qui a pour but de faciliter le travail du développeur du jeu. Plutôt que d'interdire certains déplacements dans une zone, il peut placer des murs qui rempliront bien mieux cet office. Etre cogné par un rocher dévalant une pente ne sera plus une simple animation, mais le réel déplacement d'un rocher. Sa chute, son parcours sur la pente et la projection du joueur suite au contact seront calculés automatiquement par le moteur. Le développeur n'a plus qu'à choisir la taille et l'emplacement de son rocher. [Relite] Pourquoi avoir développé un moteur physique spécifiquement pour le logiciel RPG Maker XP ? A la base, ce moteur est fait pour mieux gérer les maps en 2D de l'un de mes jeux, développé sous RMXP. Par la suite, le développement s'est poursuit sur ce logiciel, car il offre l'environnement de développement le plus simple à utiliser pour faire un projet en Ruby. ![]() [Relite] Quels sont les principaux avantages de l’utilisation de ce moteur physique avec RPG Maker XP ? Monter un escalier est facile à faire avec RMXP, mais sauter d'un étage est un cauchemard de programmation. Parce que le fait de changer de niveau est purement graphique. Comme dans Zelda 3 : A link to the Past (sur Super Nintendo), où le changement d'étage était purement graphique, et l'on pouvait continuer de blesser, ou être blessé par des ennemis ne se situant pas au même niveau que nous. Ici, monter un escalier se fait en temps réel, et en 3D : le héros se déplace le long de l'escalier, et peut à tout moment sauter pour retomber plus haut ou plus bas. S'il rencontre un ennemi, un mur, un plafond ou une rembarde, son déplacement sera géré de façon réaliste. Pour faire simple, disons qu'ajouter une dimension physique aux déplacements du joueur permet de gérer automatiquement les escaliers, les chutes d'un étage, pouvoir passer ou ne pas passer dans des espaces plus étroits, etc... [Relite]Avec quelle technologie est développé ce moteur physique ? Est-il exportable ou utilisable avec d’autres logiciels ou versions différentes de RPG Maker ? Il convient de séparer les différents projets développés. Le moteur physique est développé entièrement en Ruby, et est exportable dans n'importe quelle application compatible avec ce langage. Ajouter des obstacles en 3D dans une zone du jeu se fait par le biais d'un éditeur 3D, profondément intégré dans RMXP. A terme, il est prévu d'utiliser une autre bibliothèque graphique que celle de RMXP. En fait, le but serait même de se détacher complètement de RMXP pour proposer un nouvel éditeur de jeu, reprenant toutes les fonctions de RMXP, et en ajoutant toutes les nouvelles proposées par le moteur physique. ![]() [Relite]Un nouvel éditeur de jeu ? Est-ce réellement réalisable ? La principale contrainte est d'ordre temporel : combien de temps cela va-t-il prendre ? Continuerai-je le projet une fois entré dans la vie active ? En ce qui concerne les contraintes techniques, des premiers tests concluants ont été effectués. Un moteur graphique remplaçant celui de RMXP a fait tourner un jeu à 315 FPS sur mon ordinateur (Nda : un jeu sous RMXP ne peut tourner qu'à 40 FPS maximum). S'il y avait un nouvel éditeur, ce serait également un nouveau moteur graphique, étant donné que l'éditeur 3D servant à placer les obstacles physiques tourne en temps réel, durant l'exécution même du jeu. On ne se contenterait plus alors de placer de simples obstacles, on pourrait alors aussi éditer directement les décors, et ceci en 3D. [Relite] Sera-t-il possible d’agir de façon réaliste avec le décors ? Dans l'état actuel des choses, il suffit de placer des obstacles ayant la taille du décor pour que cela donne un rendu parfaitement réaliste. L'éditeur 3D ne peut pour l'instant placer des obstacles de 32 pixels de côté. Pour d'autres dimensions, il faut utiliser des commandes spéciales, écrites dans un langage de commentaires, à l'intérieur d'events. C'est là la plus grosse limite de l'utilisation du moteur de façon simple (par le biais de l'éditeur 3D), car ce langage a beau être destiné aux non-programmeurs, il reste moins attrayant qu'une édition sous RMXP. Cela sera solutionné au fur et à mesure du développement de l'éditeur 3D, qui proposera des fenêtres comme celles de RMXP pour éditer ses events. [Relite] Quels sont les limites de ce moteur ? En ce qui concerne le moteur lui-même, il ne gère que 2 types de forme : les parallélépipèdes et les pentes (pour simuler les escaliers). De plus, les côtés de chacune des formes sont toujours parallèles aux axes X et Y, pour ne pas avoir à gérer d'angle, et consommer ainsi moins de ressources. L'avantage étant que le moteur physique 3D fonctionne sans aucune fonction cosinus ou sinus, ce qui améliore d'autant plus sa rapidité. [Relite] Aujourd’hui, le moteur se situe à sa version 1.10. S’agit t’il d’une version complète ? Non, très loin de là. Ce numéro de version ne comprend pas que le moteur, mais tous les projets développés en même temps, notamment l'éditeur 3D. Le but du moteur n'est pas d'être un ensemble de scripts utilisables uniquement par des programmeurs Ruby, mais de proposer un complément à RMXP, utilisable par n'importe quelle personne capable de se servir de RM. Je me concentre en ce moment sur l'éditeur, de façon à rendre les fonctionnalités du moteur facilement utilisables par les makers. Si l'éditeur est suffisamment développé, il proposera également les fonctionnalités que j'avais développées pour mon précédent logiciel DreaMaker. Des fonctionnalités avancées destinées aux personnes désirant plus que ce que RM pouvait leur offrir, et qui se sont tournés vers d'autres éditeurs, tout en y perdant la simplicité d'utilisation de RMXP. [Relite] DreaMaker...S'agit-il du logiciel qui permettait d'extraire les dialogues d'un jeu RPG Maker 2000 ou 2003 ? Oui, c'est presque cela. DreaMaker était en fait destiné à dévenir l'utilitaire incontournable pour tous les développeurs RM : extraire, traduire, corriger les dialogues d'un jeu RMXP ou RM03, créer des patchs, des démos, vérifier les ressources du jeu... Bref, toutes les options professionnelles qu'aucune version de RM ne propose. J'en ai abandonné le développement parce que la GUI (Nda : ensemble de fenêtres et de boutons) utilisée, FXRuby, se révélait difficile à manier. Mais maintenant que j'ai développé ma propre GUI, DreaMaker est bien parti pour être relancé, et finalement intégré à l'éditeur 3D. ![]() [Relite] Ce moteur physique restera-t-il gratuit, sera-t-il « open source » ? Le moteur physique est soumis aux mêmes copyrights que les autres éléments du projet. Il est entièrement Open-Source, mais je reste propriétaire de toute modification ou ajout au projet. Il est utilisable gratuitement si le jeu produit l'est également. Un usage commercial nécessite une autorisation / établissement d'un contrat au préalable. Le moteur sera toujours disponible suivant ces conditions. Par contre, en ce qui concerne l'éditeur 3D, si vraiment il se développait suffisamment pour supplanter RM, il serait alors commercialisé. En attendant que ça arrive (si ça arrive), il sera possible de faire des dons pour encourager le projet [Relite] Une documentation sera-t-elle fournie avec ce moteur physique ? La documentation d'utilisation sous RMXP est complète. Elle liste toutes les fonctions et leurs paramètres. Néanmoins, au fur et à mesure du développement de l'éditeur 3D, ces commandes seront remplacées par des fenêtres dans le style de RM, et deviendront invisibles aux yeux des développeurs. Une documentation "technique" du moteur en lui-même, destinée uniquement aux programmeurs désireux d'utiliser les fonctions, n'existe pas encore. Le moteur a été développé sous RMXP, et certaines parties sont profondément intégrées au logiciel. Une refonte complète est prévue pour avoir une indépendance totale, mais ce n'est pas pour l'instant à l'ordre du jour. [Relite] Est-il simple pour un débutant d’utiliser ce moteur physique ? On peut utiliser les fonctionnalités du moteur en faisant des copier / coller d'events disposant des fonctionnalités que l'on recherche. Une plateforme volante, par exemple. De légères modifications dans les instructions en commentaires permettent ensuite d'adapter les events à tous les besoins. Mais d'après mon point de vue, ce n'est pas simple. Une gestion des commandes par le biais de fenêtres, avec des cases à cocher serait bien mieux. Le problème étant que je m'oriente alors vers le développement d'un nouvel éditeur visant à remplacer RMXP. J'en ai déjà parlé, c'est faisable, simplement, ça prend du temps. [Relite] Devra-t-on attendre longtemps pour que cela arrive ? J'ai choisi un style de développement me permettant de proposer chaque semaine une nouvelle version du projet, disposant de plus d'améliorations. Cette nouvelle version est à chaque fois 100% fonctionnelle. Et, de semaine en semaine, je remplace les fonctions "complexes" de l'éditeur par des fonctions utilisables par un débutant. De cette façon, même si j'arrête brusquement le développement du projet, les fonctions de l'éditeur seront par exemple utilisables à 40% par les débutants (fenêtres comme sous RM), et à 60% par les non-débutants (instructions à utiliser avec des commentaires). [Relite] Dans quelle mesure est-il possible aux créateurs de jeux vidéo de modifier le moteur physique afin de l’adapter à leurs besoins ? La base du moteur est relativement simple. Moteur de contact, de collision, d'interactions. Une fois la refonte faite (et donc rendu indépendant de RMXP), il suffira de programmer quelques fonctions pour gérer de nouvelles formes d'obstacles. J'ai par exemple prévu de réinclure les cylindres (pour faire des piliers) de cette façon pour pouvoir tester l'évolutivité du moteur. Mais, comme je l'ai dit, mon but est de rendre accessibles à tous les makers les fonctionnalités déjà développées. Un développement à destination des purs programmeurs est remis à plus tard, même si le code déjà écrit peut servir à faire des jeux d'un genre totalement nouveau sur RMXP. [Relite] Quels sont les nouvelles fonctions qui sont éventuellement à venir dans les prochaines versions du moteur, ou de l'éditeur ? Rendre les commandes du moteur physique utilisables dans l'éditeur aussi facilement que sous RMXP. Placer des obstacles est déjà un jeu d'enfant, utilisable d'ailleurs par... des enfants. La bêta du projet (47 testeurs) nous a rendu des échos très favorables à ce sujet. "En quelques minutes", c'est le mot d'ordre du développement : que tout soit utilisable en quelques minutes, sans même avoir à lire le manuel. Le but [Relite] Pour toi, quelle est la voie que devrait suivre Enterbrain pour le développement de son prochain logiciel de création de RPG ? Je serais tenté de dire "tout ce que je suis en train de faire". [rires] Non, plus sérieusement, Enterbrain semble, au fur et à mesure du temps, s'orienter vers une simplification d'utilisation du logiciel par suppression des fonctions. RPG Maker est un logiciel tellement facile à utiliser que n'importe quel ado est capable de commencer un jeu. Qu'il n'a pas le temps de finir quand il commence ses études. J'ai l'impression qu'Enterbrain cherche à agrandir la période d'utilisation de son soft en le rendant utilisable par un public de plus en plus jeune. Beaucoup de gens parlent de la suppression de la fonction graphique X ou Y, mais ce qui m'a fait beaucoup de mal en passant à la version XP, c'est la disparition des fonctions du style "rechercher une variable". Pour programmer un jeu, il faut utiliser des variables. Apparemment, RM est maintenant un logiciel où on n'utilise quasiment plus ces choses-là. De plus, un RPG est un jeu de rôle. Je n'apprendrais rien aux habitués du Jeu de Rôle papier, ou aux connaisseurs des Baldur's Gate et Fallout : dans un RPG, les dialogues, c'est primordial ! Le fait qu'il n'y ait aucune gestion en masse des dialogues sous RM (exportation sous fichier texte, fonctions de recherche...), indique que le soft est soit fait pour les RPG très courts, soit pour les RPG quasiment sans texte. Dans les deux cas, il s'agit de RPG majoritairement créés par des développeurs très jeunes. Le but de mon éditeur serait de toujours proposer ces fonctions aussi simples qui ont fait le succès de RM, mais aussi une interface "avancée" disposant de ce qui manque à RM et chez Enterbrain. [Relite] Y a-t-il des exemples jouables de jeux vidéo réalisés avec ce moteur physique ? Le projet le plus avancé à ce stade est celui de l'Usine en Folie, développé par la communauté Factory : http://rpgmakerxp-factory.net/ Factory est mon principal interlocuteur pour le développement du moteur. Je participe également au développement du jeu, mais ça c'est une autre histoire. Après simplification des commandes de l'éditeur, celui-ci et le moteur physique seront utilisables dans bien plus de projets. ![]() [Relite] Que sera-t-il possible de faire ? Je ne sais pas encore ce que ça va donner. L'utilisation d'un moteur physique pour un jeu old-school ne s'est plus vu depuis Alundra 1 (sur Playstation 1) et son successeur Light Crusader (sur Megadrive). Les machines sont ensuite devenues suffisamment puissantes pour afficher de la 3D, et plus jamais un moteur physique n'a été utilisé dans un jeu en 2D. Ce n'est que récemment que l'on voit à nouveau la physique intervenir dans les jeux (World of Goo, Boom Blox). Mais dans un Action-RPG à la Zelda (principal but de l'éditeur en plus des RPG classiques), les possibilités devraient finir par devenir supérieures à celles de Light Crusader. Pour ceux qui voudraient avoir une idée de ce qui était faisable en 95, voici une petite vidéo :
Posez vos questions à l'auteur du moteur physique sur le forum Relite Tags: RPG Maker RPG Maker XP RMXP King Kadelkek moteur physique interview |
|||
| Suivant > |
|---|













