Outils pour utilisateurs

Outils du site


start

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
start [2023/03/22 18:02] falsamstart [2023/05/12 17:37] (Version actuelle) falsam
Ligne 1: Ligne 1:
-**Animator.pbi version 1.(17 Mars 2023)**+**Animator.pbi version 1.20 (15 Avril 2023)** 
  
-Download [[https://www.falsam.com/animator/Animator.zip|Animator.zip]]+ Download [[https://www.falsam.com/animator/Animator.zip|Animator.zip]] \\  
 + 
 +:!: **Fonctionne à partir de PureBasic 6.01** 
  
 <WRAP round box 100%> <WRAP round box 100%>
Ligne 7: Ligne 9:
 </WRAP> </WRAP>
 <WRAP group> <WRAP group>
-**Animator.pbi** est un module codé avec le langage PureBasic permettant de créer des **objets animés** chacun étant au **format JSON**.+**Animator.pbi** est un module codé avec le langage **PureBasic** permettant de créer des **objets animés 3D (ou avatar) **. Chaque création pourra être sauvegarder au **format JSON**.
  
-■ Un objet est représenté par la liste structurée récursive **NewSkeleton()**+■ Un objet est représenté par une liste structurée récursive. 
  
-■ Un objet animé est défini par un ensemble de joints reliés les uns les autres. +■ Un objet animé est défini par un ensemble de jointures reliées les unes aux autres. 
-Chaque join est lié à la structure récursive **NewSkeleton**+Chaque jointure est liée aussi à une structure récursive. 
  
-■ Sur chaque jointon peut ajouter une ou plusieurs entité simple (//Cube, Sphere, etc ...//) ou des meshes OGRE3D. chaque entité peut être associé à un fichier .material ou à une couleur ou une texture.+■ Sur chaque jointurevous ajouterez une ou plusieurs entités simples (//Cube, Sphere, etc ...//) ou des meshes OGRE3D. chaque entité peut être associé à un fichier .material ou à une couleur au format RGB/RGBA ou une texture.
  
-■ Sur chaque jointon peut ajouter une ou plusieurs animation. Chaque animation est configurée avec une timeline composée de clés définissant la rotation et le déplacement.+■ Sur chaque jointureVous pourrez ajouter une ou plusieurs animations. Chaque animation est configurée avec une timeline composée de clés définissant la rotation et le déplacement.
  
 </WRAP> </WRAP>
Ligne 29: Ligne 31:
 Insérer le module Animator.pbi au début de votre code. Insérer le module Animator.pbi au début de votre code.
 <code purebasic> <code purebasic>
-XIncludeFile "Animator.pbi"+XIncludeFile "Animator110.pbi"
 UseModule Animator UseModule Animator
 </code> </code>
  
-Initialiser l'objet animée.+Initialiser l'objet animée que vous souhaitez créer.
 <code purebasic>Define NewList Cube.NewSkeleton()</code> <code purebasic>Define NewList Cube.NewSkeleton()</code>
 Insérons un joint au point de coordonnée 0,0,0 sur l'axe x,y,z. Insérons un joint au point de coordonnée 0,0,0 sur l'axe x,y,z.
-<code purebasic>Define j0 = AddJoin(cube(), "Mon Cube", 0, 0, 0)</code> +<code purebasic>Define j0 = AddJoin(Cube(), "Mon Cube", 0, 0, 0)</code> 
 Ajouter un cube rouge sur les mêmes coordonnées que le join. Ajouter un cube rouge sur les mêmes coordonnées que le join.
-<code purebasic>AttachJoinEntity(cube(), "Cube", "rgb(255,0,0)", 0,0,0)</code>+<code purebasic>AttachJoinEntity(j0, "Cube", "rgb(255,0,0)", 0,0,0)</code>
 C'est le moment de créer une animation pour le join j0 que vous appellerez par exemple "run". Vous allez pour cela créer un **timeline** qui sera composé de deux clés : Une première clé pour indiquer au cube qu'il va monter d'une unité et faire une rotation de 90° et une seconde clé pour indiquer au cube qu'il va redescendre tout en continuant sa rotation de 90°. C'est le moment de créer une animation pour le join j0 que vous appellerez par exemple "run". Vous allez pour cela créer un **timeline** qui sera composé de deux clés : Une première clé pour indiquer au cube qu'il va monter d'une unité et faire une rotation de 90° et une seconde clé pour indiquer au cube qu'il va redescendre tout en continuant sa rotation de 90°.
 <code purebasic> <code purebasic>
Ligne 53: Ligne 55:
 <code purebasic> <code purebasic>
 EnableExplicit EnableExplicit
-XIncludeFile "Animator.pbi" : UseModule Animator+XIncludeFile "Animator110.pbi" : UseModule Animator
  
 Define NewList Cube.NewSkeleton() Define NewList Cube.NewSkeleton()
Ligne 59: Ligne 61:
 Define j0 = AddJoin(cube(), "Mon Cube", 0, 0, 0) Define j0 = AddJoin(cube(), "Mon Cube", 0, 0, 0)
  
-AttachJoinEntity(cube(), "Cube", "rgb(255,0,0)", 0,0,0)+AttachJoinEntity(j0, "Cube", "rgb(255,0,0)", 0,0,0)
  
 If CreateJoinAnimation(j0, "run") If CreateJoinAnimation(j0, "run")
Ligne 79: Ligne 81:
 ■ **Le code complet.** ■ **Le code complet.**
 <code purebasic> <code purebasic>
-XIncludeFile "Animator.pbi" : UseModule Animator+XIncludeFile "Animator110.pbi" : UseModule Animator
 EnableExplicit EnableExplicit
  
Ligne 145: Ligne 147:
 [[GetAnimations|GetAnimations() Donner la liste des animations d'un skeleton.]]\\ [[GetAnimations|GetAnimations() Donner la liste des animations d'un skeleton.]]\\
 [[CreateSkeletonBody|CreateSkeletonBody() Créer un impostor physique invisible.]]\\ [[CreateSkeletonBody|CreateSkeletonBody() Créer un impostor physique invisible.]]\\
-[[FreeJoins|FreeJoins() Libéres les joints d'un skeleton.]]\\+[[FreeJoins|FreeJoins() Libèrer les joints d'un skeleton.]]\\ 
 +[[GetJoin|GetJoin() Faire une recherche d'un joint à partir d'un nom de join.]]\\ 
 +[[GetJoinParent|GetJoinParent() Faire une recherche d'un joint parent.]]\\ 
 +[[AnimationFinish|AnimationFinish() Tester si une animation est terminée.]]\\ 
 +[[EnableAnimation|EnableAnimation() Active une animation terminée.]]\\ 
 +[[FreeJoinsEntities|FreeJoinsEntities() Détruit les entités d'un skeleton.]] \\ 
 +[[AnimationResetKeys|AnimationResetKeys() Reset d'une animation.]] \\ 
  
 </WRAP> </WRAP>
start.1679504523.txt.gz · Dernière modification : 2023/03/22 18:02 de falsam