« 1 2 3 (4)


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
23/02/2006 19:10
De Sideula
Post(s): 2048
Je comprends mieux pour les axes.

Par contre, j'ai beau le tourner dans tous les sens, je ne comprends pas pourquoi Z serait "bloqué" à cause de la réaffectation de "rotcam3".

D'après ce que tu as dit, et en suivant la logique suivante (peut-être fondée sur des hypothèses fausses) :

1. On récupère "rotcam3" sous forme d'Euler. Donc si Z a été modifié avant (ie. rotation du personnage), on a bien sa nouvelle valeur dans "rot_eul".
rotcam3 = scene.objects['rot_cam3']
rot_eul = rotcam3.worldOrientation.to_euler()


2. Tu changes la valeur pour l'axe Y.
rot_eul[1] = rotcam3['startRotation'][1] + math.radians(rotcam3['rot_arcY'] - 80) # definis coordonee z via radian


3. Les axes X et Z n'ont pas changé depuis (1), ils conservent donc leurs valeurs qui étaient en (1). Y a été mis à jour. On applique la matrice de rotation à "rotcam3" qui a donc changé uniquement pour l'axe Y.
rotcam3.worldOrientation = rot_eul.to_matrix() # applique le changement et converti en matrice



En tout cas, j'ai du mal à comprendre car il me manque probablement quelques infos.
Par exemple, est-ce que c'est toi qui calcules la valeur du Z ou c'est Blender qui te la fournit par le jeu des liens/contraintes ?

Pour faire plus simple peut-être, est-ce que les blends pour le cheval s'appliquent ici ? J'ai retesté ta dernière solution (post #25) et je peux bouger latéralement et de haut en bas en visant. Donc je ne suis pas sûr d'être bien au point.

Ou bien peux-tu faire un blend minimaliste avec le problème ? J'ai besoin de "tester" pour voir et surtout comprendre les bugs en fait, j'ai beaucoup de mal avec de l'abstrait (que ce soit là, dans mon taf, etc).

Contribution le : 13/11 19:25:35
_________________
Développement en cours du hARMful Engine
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
19/03/2016 16:30
De Belgique
Post(s): 1432
Je pense avoir compris:

D'abord, j'ai compris que je devais dépendre d'une variable pour faire mes modifications.

rot_eul[2] = rot_eul[2] + math.radians(-rotcam3['rot_arcX'])


Donc, pour modifier un seul axe, je dois y mettre la variable qui corresponds et l'incrémenter avec delta. Je pensais que cette variable ne servait à rien. J'avais tord.

Pour répondre à ta question:

- On convertis la matrice XYZ de l'objet "rotcam" en euler.
- On modifie les coordonnées de l'axe souhaité (qui sont du même type, du coup).
- On applique les changements mais on reconvertis en matrice avant.

Je l'interprète comme ça avec mes mots.

Là, ce que j'ai fais (bout de code au début), c'est dire: "Tu prends les coordonées Z actuelles et tu rajoutes la valeur que je te demande, puis tu applique tout".

Donc, en résumer, si je veux modifier les 3 axes séparément, je dois donc créer une variable associée à chacun des axes.

Et, comme le cube joueur se réfère à un empty qui, lui-même, suit la rotation de "rotcam" (par parentage), c'est comme si on appliquait les nouvelles coordonnées à ce même cube mais indirectement (on pourrai le faire s'il n'y avait pas de "track to").

Je retenterai une dernière fois sur la monture pour l'axe Z...

Contribution le : 13/11 20:34:48
_________________
Mon projet jeu vidéo
Mes tutos
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
23/02/2006 19:10
De Sideula
Post(s): 2048
J'ai l'impression que ça t'a permis de cerner le souci dans ton code.
Si ton souci était que tu mettais seulement le delta pour Z, alors oui ça posais clairement problème. La valeur que contient le vecteur Euler après la conversion (matrice > Euler) est très importante si tu as besoin de te baser dessus.

N'hésite pas à revenir pour dire si ça marche ou pas ! :)

Contribution le : 13/11 22:12:53
_________________
Développement en cours du hARMful Engine
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
19/03/2016 16:30
De Belgique
Post(s): 1432
C'est bon, j'y suis parvenu !

C'est assez compliqué à expliquer, mais j'ai enfin compris comment ça fonctionne.

Merci bibi !

Contribution le : 15/11 14:25:27
_________________
Mon projet jeu vidéo
Mes tutos
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
23/02/2006 19:10
De Sideula
Post(s): 2048
Génial ! Bonne suite. :)

Contribution le : 16/11 11:38:45
_________________
Développement en cours du hARMful Engine
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant
« 1 2 3 (4)




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
Questions & Réponses découpage du maillage pendant l'animation 0 4 Aujourd'hui 13:45:02
leo23 
Questions & Réponses Importer des objets de Maya dans Blender 2 70 Aujourd'hui 10:05:44
lucky 
Questions & Réponses Enlever les reflets des arbres dans le shader glass? 3 87 Hier 20:48:38
flahaut 
Python & Plugins [non résolu] faire apparaitre des éléments spécifiques 0 35 Hier 18:38:26
Redstar 
Questions & Réponses Comment snapper un vertex sur un edge selon un axe donné 7 136 Hier 16:55:39
Bibi09 
Questions & Réponses Pixel Blanc sur rendu blender 2.8 5 72 Hier 15:31:10
fenixdragon 
Moteur de jeu GameBlender et alternatives [non résolu] Modifier un visage - ajouter machoire    [1][2] 12 408 Hier 15:09:54
Redstar 
Questions & Réponses Mirror qui fonctionne mal en mode Edit (mais marche en mode Sculpt) 2 49 Hier 10:16:05
moonboots 
Le coin des geeks information sur taille prise en memoire par le projet pour choix GPU    [1][2] 17 679 05/12 23:26:04
papillon 
Questions & Réponses Blender vs Sketchup et Fusion 360 7 325 05/12 21:50:04
Anarchy62 
Questions & Réponses Importer des objets de Maya dans Blender 0 37 05/12 16:16:24
Melodicpinpon 
Questions & Réponses compter les éléments de l'outliner 3 132 05/12 09:57:09
Bibi09 
Questions & Réponses UV editing, mes translations sont saccadées. 7 364 04/12 16:28:39
Homarus 
Moteur de jeu GameBlender et alternatives Faire un jeu sans coder 7 274 04/12 16:07:18
Azerblue 
Questions & Réponses [résolu] Utilisation carte graphique 5 182 04/12 13:27:34
Bibi09 
Python & Plugins nuage de point 1 134 04/12 01:55:02
WinZs 
Questions & Réponses [résolu] problème lecture piste son 6 168 03/12 11:06:51
flahaut 
Questions & Réponses scale partiel d'un import STL 5 149 02/12 21:28:30
ewok2 
Questions & Réponses Lier visibilité et rendering 1 99 02/12 14:55:41
Rimpotche 
Graphisme alternatif Créer sa propre typo gratuitement: Tuto 1 151 02/12 14:41:38
Redstar 

Qui est en ligne
102 utilisateur(s) en ligne (dont 57 sur Forums)

Membre(s): 0
Invité(s): 102


plus...
Nouveaux membres
AudreyMcQu 7/12/2019
leo23 7/12/2019
KathiRitch 7/12/2019
RandallMus 7/12/2019
Alexandria 7/12/2019
FidelCuper 7/12/2019
ScotSinnet 7/12/2019
cherdothibaut 2/12/2019
pato90v8 2/12/2019
LFR54 2/12/2019
Dernier Ajout
2019-11-05 01.JPG

Evènements à venir
Dec 29
Anniversaire d'ebrain
Jan 11
BUG de Lyon
Fev 15
Anniversaire de Dany
plus 277 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2019 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445