web-dev-qa-db-fra.com

Comment créer un jeu 2D simple pour Android?

Je suis un débutant en matière de développement de jeux et j'ai besoin de quelqu'un pour me diriger dans la bonne direction.
Par souci de clarté, considérez l’animation suivante. simple zombie game animation

Fondamentalement, j'ai besoin de savoir comment émuler l'animation ci-dessus en tant que Android mais je ne connais pas les étapes nécessaires pour le faire en tant que tel. Mes questions peuvent être résumées comme suit:

  • Dois-je utiliser un moteur de jeu pour des jeux aussi simples?
  • Ou peut-on le faire sans utiliser de cadre particulier?
  • Dois-je utiliser une application d'animation telle que Adobe Flash?
  • Quelles sont les étapes nécessaires pour faire ce genre de jeu?
46
Hamed Momeni

Utiliser un moteur de jeu ou non est une préférence. Cela dépendra de ce que vous recherchez exactement. Si vous souhaitez en savoir plus sur les concepts sous-jacents de rendu, de détection de collision, etc., alors les écrire vous-même est parfaitement acceptable et très amusant. D'un autre côté, si vous voulez juste terminer le jeu sans avoir à vous soucier des détails, alors un moteur est définitivement la voie à suivre.

Les moteurs de jeu vont des wrappers très basiques (qui fournissent généralement des fonctions plus simples prenant en charge des tâches de bas niveau) aux abstractions très complexes dans lesquelles le développement du jeu ne ressemble plus à aucune plate-forme spécifique - ils vous permettent parfois aussi de créer le jeu une fois et de le déployer. sur diverses plates-formes sans aucun changement.

Pour implémenter un jeu basé sur cette animation, vous pouvez utiliser les éléments suivants:

  • Pour chaque personnage non-joueur, créez une série "d'images" consécutives qui, une fois cyclées, donnent l'illusion d'un mouvement. Ceux-ci peuvent être créés dans n’importe quelle application graphique (de préférence dans une carte de texture/un atlas).
  • Pour le personnage du joueur, vous aurez besoin d’une séquence animée pour chaque "déplacement", telle que kick, punch, etc. Ensuite, jouez la séquence correcte lorsque le joueur déclenche une action (par exemple la séquence kick lorsque le joueur appuie sur un bouton de frappe).
  • Chaque caractère doit avoir un cadre de sélection (c’est-à-dire un rectangle qui définit la taille et la position du caractère). Le personnage du joueur devrait probablement avoir une boîte de taille différente en fonction du type d’attaque (c’est-à-dire que la boîte de l’action kick s’étendrait plus loin à droite que celle de l’action punch.
  • Créez aléatoirement des personnages à la droite de l'écran et déplacez-les à une certaine vitesse (en fonction du type?) Vers le joueur. Lors de chaque itération, testez les collisions entre le joueur et les boîtes de sélection de chaque non-joueur. Si une collision est détectée, vérifiez si le joueur donne des coups de pied ou des coups de poing et tuez le personnage qui a été touché. Si le joueur n’attaque pas, il risque de l’endommager.

C'est une description très basique de votre problème et devrait vous donner suffisamment d'idées à rechercher pour mettre en oeuvre une version de base :)

Quelques moteurs de jeu que vous voudrez peut-être examiner:

Si vous souhaitez en savoir plus sur la création de jeux Android, consultez ce livre:

39
free3dom

Il existe de nombreux moteurs de jeu qui peuvent vous aider à faire le travail.

Voici un lien pour tous les moteurs de jeux mobiles.


Moteurs de jeux 2D Android

Cocos2D-x

Langue: C++

Orientation: 2D

Difficulté: Intermédiaire


Corona SDK

Langue: Lua

Orientation: 2D/3D

Difficulté: Intermédiaire


EDGELIB

Langue: C++

Orientation: 2D

Difficulté: Intermédiaire


GameMaker

Langue: Aucune (graphique)

Orientation: 2D

Difficulté: facile


GameSalad

Langue: Aucune (graphique)

Orientation: 2D

Difficulté: facile


HaxeFlixel

Langue: Haxe

Orientation: 2D

Difficulté: Intermédiaire


libGDX

Langue: Java

Orientation: 2D/3D

Difficulté: Intermédiaire


Marmelade

Langue: C++

Orientation: 2D/3D

Difficulté: Intermédiaire


Stencyl

Langue: ActionScript (facultatif), Objective-C (facultatif)

Orientation: 2D

Difficulté: Intermédiaire


nity3D

Langue: JavaScript (UnityScript en fait), C # (Mono)

Orientation: 2D/3D

Difficulté: Intermédiaire

18
atlassium

Je réponds dans l'ordre que vous avez demandé

  1. Il est recommandé de toujours utiliser un moteur, car ils facilitent le travail, c'est ce à quoi ils servent.

  2. Vous pouvez faire certaines animations et certains mouvements sans framework, mais cela devient en réalité plus complexe avec le code et la logique.

  3. Adobe Flash est inutile sur Android. La plupart des périphériques Android ne font pas fonctionner Flash sans que l'utilisateur ne fasse quelque chose pour l'obtenir.).

  4. Les étapes que je recommande sont

    • recherche des moteurs
    • revoir certains cadres
    • sélectionner et moteur en fonction de la logique de votre jeu
  5. Certains moteurs sont disponibles pour les jeux d'aventure, les puzzles et autres jeux de rôle. En fonction de vos besoins, choisissez-en un.

Quelques programmes simples:

  • Kit de jeu d'application
  • Cocos2d pour Android
  • Corona SDK
  • GameMaker
  • Stencyl

Vous pouvez commencer avec ceux-ci. L'unité est le meilleur moteur, mais le plus compliqué aussi.

2
josedlujan

Je me suis posé cette question pendant environ 10 ans avant de trouver une bonne réponse. À mon avis, tous les cadres de jeu pour Android ne sont pas encore tout à fait matures ou sont un peu difficiles à implémenter. Je vous recommanderais utilisé this . Vous pourrez exécuter votre jeu sur tous les appareils (pas seulement Android), il est assez facile à apprendre si vous connaissez les bases.

Voici un excellent tutoriel pour vous aider à démarrer!

J'ai créé un jeu en utilisant la technologie d'Adobe, vous pouvez y accéder ici .

0
FRR