Logo Makeyourgame
Accueil Les formations Créer un jeu Les ateliers Les tutoriels Blog
Logo Makeyourgame
Les formations Les financements Les exercices La certification Unity
Logo Makeyourgame
Mes objectifs Les jeux Les ressources Le glossaire
Logo Makeyourgame
Les tutos Les tutos Youtube

Effet pop up d'apparition avec une animation sous Unity : Unity

pictureProfil_alto
Ecrit par alto
Catégorie Unity
Mis à jour le 22/02/2021
Effet pop up d'apparition avec une animation sous Unity

Préparez votre Animation sous Unity, pour un effet garanti.

8 min Débutant

Cet effet est aussi très utilisé dans les jeux car il permet d'ajouter du dynamisme à l'action en cours, à l'aide principalement d'une Animation, qui sera préparée directement dans l'éditeur de Unity.

Vous pouvez retrouver prochainement cet effet dans le jeu , encore en cours de développement, qui sera publié sur Itch.io. En attendant sa publication, vous pouvez suivre le développement des systèmes et du jeu en lui-même, en rejoignant Tipee.

Pré-requis: Bases de l'utilisation de Unity . Bases du C# . Les bases de l'animation sous Unity

Décomposition de l'effet

Comme vous pouvez le voir dans la vidéo démo ci-dessus, on peut décomposer l'effet d'apparition de l'arbre "planche" en plusieurs étapes, assez simples:

  • Un effet d'Animation jouant sur le scale pour l'effet pop-up du modèle 3D
  • Un effet de particules pour mieux visualiser l'apparition
Il est tout à fait possible d'ajouter plusieurs effets lors de l'apparition. Libre à vous d'affiner selon vos besoins.
https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/nosoundpopupeffectzoom-6013fbce38cc7.gif

Le reste sera du script C#, qui permettra d'instantier notre prefab dans la scène.

Préparation du prefab

Vous pouvez décider de prendre n'importe quel élément 3D que vous pouvez trouver sur l'asset store de Unity ou tout autre site proposant des modèles 3D.

Dans le jeu vidéo, nous utilisons un modèle 3D qui représente un arbre "planche", mais si vous n'avez rien sous la main, l'effet fonctionne aussi avec un cube, une sphère ...

Créer l'animation de pop up

Ainsi dans une nouvelle scène placez votre modèle 3D, et ajouter lui un composant Animator.

https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/popupanimator-6013fd8a1d8ee.png

Créez un Asset Animator, nommez le deadTreeAnim et donnez le au composant Animator (slot controller).

Il faut maintenant ajouter des animations dans notre asset animator !

Commençons donc par créer les animations.
Si vous n'avez pas les bases sur les animations sous Unity, retrouvez la série dédiée sur Youtube.

Ouvrez le vue Animation

Menu du haut => Window => Animation => Animation

https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/popupopenanimation-6014168866f5e.png

Sélectionnez votre GameObject qui porte le composant Animator, et créez 2 animations nommées idle et popup

https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/popupanimationview-6014169432988.png

Puis choisissez l'animation popup et cliquer sur le bouton record pour enregistrer vos changements, afin de créer l'animation.

https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/popuprecordanimation-60141919e8ebc.gif

Sélectionnez bien votre GameObject et utilisez l'outil scale pour changer la taille du modèle sur des keyframes bien précis de votre animation.

https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/popuprecordcreateanimation-60141925a91e8.gif

Enfin testez votre animation en appuyant sur le bouton play de la vue Animation.

https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/popuptestanimation-6014193038d59.gif

Si vous êtes content de l'effet vous pouvez passer à la suite. L'animation idle ne fera rien de spécial elle, ce sera juste l'état d'arrivée

Paramétrer l'Animator

Double-cliquez sur l'asset animator pour ouvrir la vue "Animator"

Window => Animation => Animator

https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/popupanimatorview-601416727cfb1.png

Ajoutez vos 2 animations, si elles ne sont pas déjà là, et créez les transitions entre les 2 états. Notez bien que l'état de départ est bien popup, permettant de jouer cet animation dès l'apparition du modèle 3D. De plus les transitions sont juste réglées sur Exit Time.

A ce stade si vous lancez la scène, votre GameObject devrait jouer la bonne animation dès le début.

Ajouter des effets visuels

Afin d'affiner l'effet, il est intéressant d'ajouter un ou plusieurs effets de particules.

Pour cela rien de plus simple. Si vous avez déjà l'effet de particules c'est encore plus simple, sinon il va falloir le créer ou en utiliser un existant.

Pour le jeu vidéo nous avons décidé d'utiliser Magic Arsenal, qui est un asset payant, mais de très bonne qualité.

Mais pourquoi ne pas tout créer, même l'effet de particules ?

En effet c'est tout à fait possible. A ce sujet vous pouvez retrouver sur notre chaîne Youtube, un tutoriel sur les système de particules.

Mais dans le cadre de ce tutoriel nous allons partir du postulat, que vous avez déjà un effet de particules, prêt à l'emploi.

Ainsi le seul travail consiste à donner votre effet de particules à votre GameObject

https://makeyourgame.fun/upload/users/alto/tutoriels/Animation/popupgoarchitecture-60141d29bd657.png

Comme vous pouvez le voir sur la capture ci-dessus, le GameObject deadTree est constitué du modèle 3d et de 2 effets de particules.

A partir de maintenant votre prefab est terminé. Glissez-déposez le dans la zone Asset pour en faire un asset de type Prefab https://makeyourgame.fun/sceditor/emoticons/smile.png .

Test et démonstration

Il est temps de tester votre prefab, en créant un script C# qui sera en charge de créer des instances de votre prefab dans la scène.

Créez un nouveau script, nommez le par exemple TestEffect.cs, et donnez le à un GameObject de votre scène.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestEffect : MonoBehaviour {
   
    [SerializeField] GameObject prefab;

    void Update () {
        if (Input.GetKeyDown(KeyCode.Space)) {
            GameObject arbre = Instantiate(prefab, Vector3.zero, Quaternion.identity);
        }
    }
}

Le script de test est très simple, car il ne fait que créer des instance du prefab dans la scène.

Notez bien qu'actuellement le script instantie systématiquement en (0,0,0). Libre à vous d'améliorer ce comportement en guise d'exercice.

Dans l'éditeur de Unity donnez le prefab au composant TestEffect sur le slot prefab, prévu à cet effet.

Il ne vous reste plus qu'à lancer la scène et à tester le tout. En appuyant sur la touche espace, vous devriez voir apparaître votre GameObject avec son effet d'animation pop up !

Une démo en vidéo

//video youtube tuto associé (en cours de réalisation)

Nous arrivons au terme de ce tutoriel sur la création d'un effet pop up à l'apparition.

Si vous rencontrez un souci, n'hésitez pas à venir nous ne parler sur le discord de la communauté.

Vues: 2743

Licence:



Validation du Tutoriel

Veuillez vous connecter ou créer un compte pour pouvoir valider ce tutoriel et ainsi gagner de l'expérience (XP) !

Vous aimerez aussi...

Blog et Tutoriels

Créer les colliders directement dans Blender 3D.

Créer les colliders directement dans Blender 3D.

par GuiRig

Pourquoi créer un collider dans Blender 3D plutôt que Unity ?

Le modeleur 3D unity reste très très limité. On ne pourra créer que des formes primitives ( cube, sphère etc )

Et puisque nous modélisons nos mesh dans Blender, autant en profiter pour superposer nos colliders. Cela s'appelle des meshColliders. Rapide et efficace :-)

applause logo0