Création de niveau de jeu de type Rayman Origins?

11

Est-ce que quelqu'un connaît la technique utilisée pour créer ses niveaux (en utilisant l'origine rayman comme exemple)? Je parle strictement des sols et des murs. Ne ressemble pas à un carrelage. Quel est le flux de travail qui serait nécessaire pour un jeu basé sur un jeu sans mosaïque? J'essaie d'implémenter quelque chose comme ça (ci-dessous) mais je suis coincé entre deux façons de le faire

entrez la description de l'image ici

Premièrement: il suffit d'avoir des ressources artistiques et d'en obtenir / définir des positions, similaires à celles basées sur la mosaïque, mais les objets seraient plus détaillés (avec différentes positions pour les x et y) - cela semble légèrement fastidieux, je pourrais enregistrer les emplacements dans un fichier texte et charger à partir de là.

Deuxièmement: j'ai vu un article que je ne trouve pas, mais le développeur du jeu a à peu près dessiné le niveau de base (les murs, les sols), puis ajouté un peu d'images dessus. Donc, dans l'image ci-dessous, ils auraient simplement dessiné des rebords et des murs verts, puis les auraient recouverts d'actifs en forme de feuilles. - Je voudrais vraiment implémenter cette option, comme je pourrais par exemple tracer une ligne droite pour une colline, puis la recouvrir de quelques actifs, mais la collision serait toujours la ligne droite

bitbitbot
la source
1
ne pas demander la technologie, demander quelle technique. Je pourrais essayer de l'expliquer, mais ce serait très difficile, alors j'ai donné Rayman Origin comme exemple
Bitbitbot
1
Essayez quelques captures d'écran de ce dont vous parlez, dites-nous quelles recherches vous avez faites. Essayez-vous de mettre en œuvre cela vous-même? Même s'il est «très difficile» d'essayer d'expliquer ce que vous voulez, vous êtes beaucoup plus susceptible d'obtenir la réponse que vous voulez, et vous pouvez même découvrir la réponse vous-même au cours du processus. De plus, dans ce cas, la technologie est la même que la technique.
MichaelHouse
2
Le niveau est probablement soit tous les maillages statiques (modèles), soit une combinaison de modèles et de géométrie BSP créés dans un éditeur de niveau.
Tetrad
1
Je suis sûr que ce sont juste des trucs 2D faits avec la parallaxe et la profondeur de champ ala Braid et Aquaria.
Tim Holt
1
Ils font les animations de cette façon youtube.com/watch?v=B_QhZYTukac avec leur moteur UbiArt (qui était destiné à être rendu public un jour, mais je ne sais pas si cela reste leur plan). Les niveaux ne devraient pas être trop différents.
Gustavo Maciel

Réponses:

9

Consultez l'article lié ci-dessous, c'est peut-être ce que vous cherchez ...

http://javilop.com/gamedev/c-game-programming-tutorial-non-tile-based-arbitrary-positioned-entity-engine-editor-like-in-braid-or-aquaria-games/

Non seulement cette approche autorise des emplacements arbitraires x, y pour les objets, mais elle vous permet également d'avoir de la profondeur. La profondeur vous permet de faire des effets de parallaxe, ainsi que la profondeur focale (les éléments les plus éloignés sont flous).

C'est le style utilisé dans Braid et Aquaria, qui ont tous deux un aspect "presque" 3D. Le jeu que vous mentionnez peut se faire de la même manière. Même les scènes où les objets sont animés de manière 3D peuvent être simplement des sprites animés.

edit En regardant plus loin, je suis presque sûr que Rayman Origin n'est qu'un ensemble de sprites 2D, certains animés.

Tim Holt
la source
1
Battez-moi, c'était exactement l'article que j'aurais lié :) Bien qu'Aquaria utilise également une sorte d'image de masque en noir et blanc des contours de niveau, qui est automatiquement texturée. Ensuite, d'autres sprites sont superposés sur le dessus pour plus de détails.
David Gouveia
C'est une approche vraiment douce de la conception de niveaux "2D" - l'effet est vraiment puissant visuellement.
Tim Holt
2
Pour compléter la réponse de Tim, voici la même chose, mais pour Braid: davidhellman.net/blog/archives/85 ; Et la chose que j'ai mentionnée sur les masques cartographiques d'Aquaria peut être vue ici: aquariawiki.ryanballantyne.name/wiki/index.php/Modify_a_map
David Gouveia
@Tim Holt merci J'essaye ceci dans Unity, c'est exactement ce dont je parle! Merci
bitbitbot
@DavidGouveia Je veux en savoir plus sur les masques de carte! Cela a l'air fantastique
bitbitbot
9

Je peux donner plus d'informations sur ce sujet depuis que j'y ai travaillé. Nous utilisions en effet un éditeur de niveau similaire à ce qui est décrit dans les réponses de Tim Holt: les niveaux sont construits en 3D mais tous les objets sont plats et la projection est orthographique.

Mais il y a plus qu'un "ensemble de sprites 2D". La façon dont UBIart fonctionnait à l'époque (je suis sûr que cela a beaucoup évolué aujourd'hui avec la sortie prochaine de Rayman Legends ) est que nous avions à peu près deux ensembles d'entités différents:

  • Les frises étaient la géométrie de blocage, donc les collisions statiques côté gameplay. Les concepteurs de niveaux pouvaient les modifier avec un simple éditeur de polygones pour créer la disposition d'un niveau. Les artistes de niveau peuvent créer et affecter différents ensembles de textures de bordure et de remplissage pour donner aux niveaux leur aspect de base.

  • Les acteurs étaient soit des éléments de décoration ou de gameplay, utilisant un système basé sur des composants. La plupart d'entre elles étaient soit des images statiques, soit animées à l'aide d'un outil d'animation squelettique 2D personnalisé. Les concepteurs de niveaux peuvent placer les acteurs du gameplay n'importe où dans un niveau et jouer immédiatement. Les artistes de niveau pourraient également déposer des images directement dans l'éditeur, ce qui créerait des acteurs pour eux.

Le point clé était que l'édition de niveau se faisait directement dans le moteur de jeu: tout changement de disposition ou de look pouvait être testé dans le jeu immédiatement.


Si vous êtes intéressé, vous trouverez des articles assez intéressants sur Gamasutra:

Laurent Couvidou
la source