Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Discussion: Animer un modele fbx

  1. #1
    Invité régulier
    Inscrit en
    mars 2011
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : mars 2011
    Messages : 42
    Points : 5
    Points
    5

    Par défaut Animer un modele fbx

    Bonjour,

    Je cherche à pouvoir animer (lever la main, faire pivoter la tête ...) le personnage du modèle dude.fbx (http://create.msdn.com/en-US/educati.../skinned_model). Pour cela, j'ai créé le code suivant :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
     public void Load(ContentManager content)
            {
                // Load the tank model from the ContentManager.
                model = content.Load<Model>("dude");
     
                // Look up shortcut references to the bones we are going to animate.
                Head = model.Bones["Head"];
     
                // Store the original transform matrix for each animating bone.
                HeadTransform = Head.Transform;
     
                // Allocate the transform matrix array.
                boneTransforms = new Matrix[model.Bones.Count];
            }
     
     public void Draw(Matrix world, Matrix view, Matrix projection)
            {
                // Set the world matrix as the root transform of the model.
                model.Root.Transform = world;
     
                // Calculate matrices based on the current animation position.
                Matrix Rotation = Matrix.CreateRotationX(RotationValue);
     
                // Apply matrices to the relevant bones.
                Head.Transform = Rotation * HeadTransform;
     
                // Look up combined bone matrices for the entire model.
                model.CopyAbsoluteBoneTransformsTo(boneTransforms);
     
                // Draw the model.
                foreach (ModelMesh mesh in model.Meshes)
                {
                    foreach (BasicEffect effect in mesh.Effects)
                    {
                        effect.World = boneTransforms[mesh.ParentBone.Index];
                        effect.View = view;
                        effect.Projection = projection;
     
                        effect.EnableDefaultLighting();
                    }
     
                    mesh.Draw();
                }
            }
    Je me suis servi de cet exemple qui fonctionne parfaitement, on peut animer le modele comme on le souhaite : http://create.msdn.com/en-US/educati...mple_animation

    Cependant, le code que j'ai créé ne fonctionne pas et je ne trouve pas l'erreur. Le personnage est correctement affiché mais n'est pas animé. Pouvez vous m'aider ?

    Je vous remercie par avance.

    Bonne journée

  2. #2
    Membre du Club
    Homme Profil pro mehdi bugnard
    Développeur .NET
    Inscrit en
    décembre 2010
    Messages
    96
    Détails du profil
    Informations personnelles :
    Nom : Homme mehdi bugnard
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : décembre 2010
    Messages : 96
    Points : 54
    Points
    54

    Par défaut

    Peut on voir le coté de la fonction Update ? ( linker le code ) Le moment ou vous mettez à jour l’animation du joueur ?

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •