(1) 2 3 4 »


Programmer un archer à cheval
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1465
Bonjour,

Pour mon projet, je dois reprogrammer mon code pour que mon personnage, armé d'un arc et sur un cheval, puisse orienter son torse à gauche ou à droite pour tirer à l'aide du mouselook.

Comment vous feriez, point de vue programmation, pour l'orientation du torse en sachant que c'est à la 3e personne ?

Contribution le : 29/10/2019 14:28
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
Fou Furieux du Clan
Inscrit:
26/07/2008 22:53
Post(s): 198
Salut !
En tant qu'archer moi-même, je tiens à te dire qu'on ne peut tirer que d'un côté. À gauche si on a l'œil droit directeur et à droite si c'est l'œil gauche.

Si tu veux pouvoir tirer des deux côtés de manière réaliste, il faudrait changer l'arc de main pour passer d'un côté à l'autre. Ce qui doit être faisable avec un arc médiéval sans fenêtre. (les arcs modernes ont un sens, on ne peut tirer que d'un côté)

Contribution le : 29/10/2019 15:43
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1465
Ok, donc je peux envisager une rotation de 0 à 90 degrés vers la droite, en sachant que l'on peut tirer soit devant soi, soit à droite. Ça va me faciliter la tâche.

Ça ne réponds pas à ma question point de vue technique... mais je tenterai quelque chose sur ces paramètres.

Contribution le : 29/10/2019 17:21
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
Fou Furieux du Clan
Inscrit:
26/07/2008 22:53
Post(s): 198
Désolé, niveau technique j'ai pas.
Sinon, j'ai essayé de me tourner en chevauchant le dossier de mon canapé et imaginant avoir un cheval entre les jambes et un arc en main, ça me donne un angle de tir de 115° à gauche à peu près. L'angle le plus confortable est bien sûr 90° à gauche par rapport au cheval. Je peux aller jusqu'à 160° derrière à peu près mais devant c'est plus difficile, je peux pas tirer droit devant, je peux aller qu'à 45° à peu près.

Contribution le : 29/10/2019 17:37
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1465
Je suis sur une piste:

J'ai une animation qui tourne le torse du personnage a partir de 45° vers 90° sur la droite, en 30 frames. J'ai une variable avec un int sur lequel l'animation sera mappées.

Donc je dois faire en sorte que quand je deplace ma souris vers la gauche ou vers la droite, j'incrémente ou décrémente de 1, 0.5, 0.1 ma variable.

Le problème: étant donné que mon personnage est dans un environnement 3D, se déplacer veut dire changer aussi de d'orientation, ce qui signifie que le 45-90° peut-être 135-180° ! Et si je demande à ma camera de s'orienter à 45° arbitrairement si l'orientation réelle ne corresponds pas, j'aurai alors une incohérence visuellement.

Donc, faire en sorte que l'orientation soit adapté par rapport à celle du personnage.

peut-être du style "orientation personnage" - "orientation personnage" + 30 ?

(Je note ma réflexion pour ne pas oublier et au cas ou je ne trouverai pas)

Contribution le : 31/10/2019 10:12
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
Fou Furieux du Clan
Inscrit:
26/07/2008 22:53
Post(s): 198
Peut-être peux-tu faire ton orientation des épaules, par rapport à cette des hanches ? Normalement les hanches ne bougent pas.
Donc si tes épaules sont dans l'axe des hanches, tu tires à 90° à gauche, si tu veux tirer vers l'avant, tu tournes les épaules vers la droite, toujours par rapport aux hanches et pour tirer vers l'arrière, tu tournes vers la gauche.

Tiens, si tu veux t'en inspirer, j'ai pris des screens de Mount & Blade Warband. C'était relativement bien fait pour un truc qui a 10 ans. Par contre le perso doit être plus souple que moi, car il a un angle de tir de plus de 180°.

Contribution le : 31/10/2019 13:02
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1465
C'est pas ça le problème. Je trouve pas de solution.

J'ai réalisé un blend en isolant le probleme.

Contribution le : 31/10/2019 14:29
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
23/02/2006 18:10
De Alpes-Maritimes
Post(s): 2134
Hello,
Je n'ai pas regardé ton blend encore car j'ai Blender 2.8 installé.

J'en déduis que ta caméra est "libre" et n'est pas attachée au personnage qui, lui, peut tourner sur son cheval à 360°.

A mon avis, tu dois envisager la rotation Globale (World) du buste.
Tu connais son orientation Locale donc, qui est de 45°-90° par exemple. Comme ton personnage est ancré dans le monde 3D, tu peux en déduire sa rotation World.

Pour ce faire, tu dois calculer la rotation du personnage et de tous ses parents. Par exemple : rotation du personnage + rotation du cheval (en admettant que le cheval est directement sous le nœud root de ta scène 3D).

Si ton cheval est orienté à 180° et ton perso doit tourner à 50°, tu auras donc une rotation World de 180+50 = 230° pour ta caméra. Pour autant, tu sais que ton personnage aura tourné de seulement 50° dans son référenciel, ce qui te permet d'utiliser ton incrémentation.

Contribution le : 31/10/2019 21:14
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1465
Pour être précis:

La camera est parentée à un empty, placé au centre du cube principal de mon personnage (celui qui subit les collision & déplacements). Cet empty est parenté à un plan, au même endroit mais en mode "vertex", afin qu'il ne subisse pas de rotation avec le reste. Ce plan, enfin, est parenté (en mode standard) au cube principal.

Quand je me déplace, mon cube principal s'oriente via un "track-to", ce qui veut dire que tout les objets parentés voient leurs orientations "world" changer, sauf l'empty, qui subit la rotation du mouselook, parce qu'il est parenté en mode "vertex". L'empty voie seulement sa position "world" changer, et sa rotation sur l'axe Z est en "world" quand on bouge la souris.

Et donc, je cherche à contraindre cet empty à pouvoir tourner avec une limite et selon une variable de 0 à 45. Mais cet empty, peut-être dans n'importe quel orientation ! Donc, si je suis à 15°, quand je vise avec l'arc, je dois contraindre une rotation d'une plage de 45 à 90°, pour que ce soit ajusté à la direction de mon armature, car celle-ci se réfère à ma variable pour s'orienter.

Dans mon blend test, j'ai simplifié car c'est juste la configuration de la rotation que j'ai besoin.

J'ai corrigé mon blend car j'ai remarqué une petite erreur mais le problème reste le même.

Contribution le : 01/11/2019 10:10
Créer un fichier PDF de la contribution Imprimer


Re: Programmer un archer à cheval
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1465
Je pense avoir trouvé:

Mon code est juste, mais la valeur de ma variable est trop élevée quand j'applique le changement de rotation. En effet, en gros, je demande à python de tourner de 1000° mon cube (soit 2 x 360 et 180), ce qui donne comme "impression" que mon cube part en cacahouète.

Que nenni ! Il suffit de diviser par -1000 ma variable (au moment ou je fais faire la conversion en degrés) pour arriver à l'effet escompté. J'ai donc maintenant ce que je voulais. Il faut cependant que je peaufine, histoire que la vue camera coïncide avec la direction ou le personnage vise, ça je peut régler moi-même.

Contribution le : 02/11/2019 09:56
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 Eevee et le baking 4 50 Aujourd'hui 10:56:12
Hook 
Questions & Réponses Mon rendu affiche des tiles différentes 0 32 Hier 16:59:18
GreenDollars 
Moteur de jeu GameBlender et alternatives Faire un jeu sans coder    [1][2] 18 1276 15/02 20:15:30
Bibi09 
Moteur de jeu GameBlender et alternatives hARMful engine    [1][2] 13 1053 15/02 18:18:39
Bibi09 
Questions & Réponses split une sphere en subsurf sans avoir de deformation 8 208 15/02 17:47:40
Bibi09 
Questions & Réponses Je m'arrache les cheveux... 4 82 15/02 11:44:27
CBY 
Questions & Réponses Donner du relief à une texture image    [1][2] 16 425 14/02 21:00:50
Rimpotche 
Le coin des geeks Nouvelle config.    [1][2] 12 324 14/02 18:31:17
Guppy88 
The Blender Clan 'tchat Le topic des trucs à voir    [1][2][3]...[303] 3028 730682 14/02 13:33:50
Gilead_Maerlyn 
Graphisme alternatif Fusionner Godot et Blender 3 169 14/02 10:19:03
Melodicpinpon 
Questions & Réponses Recalculer une texture sur une mesh découpée 2 112 14/02 10:14:34
Sziuny 
Questions & Réponses quelle technique pour terrain avec relief 4 125 13/02 14:04:02
skatekitchen 
Questions & Réponses bloqué l'animation d'un objet dans blender 1 93 12/02 23:56:26
Rimpotche 
Questions & Réponses bloqué l'animation d'un objet dans blender 0 74 12/02 11:31:37
heretics 
Questions & Réponses [résolu] N'avoir en modeling que le/les objets selectionnés 6 220 12/02 00:32:28
Samudesu 
Questions & Réponses Problème "transparence" exportation blender 2 111 11/02 10:37:58
darkloner 
Moteur de jeu GameBlender et alternatives [WIP] DeadSigns FPS horreur - Reprise du développement    [1][2][3]...[42] 413 75182 10/02 18:31:55
Hook 
Questions & Réponses [résolu] Séparer toute les faces d'un objets en une fois 5 149 10/02 17:32:22
Rimpotche 
Questions & Réponses Aide pour les textures 5 326 10/02 12:24:05
GLM 
Questions & Réponses Création d'une image 360° avec Blender ? 3 360 09/02 20:39:17
Legrim 

Qui est en ligne
83 utilisateur(s) en ligne (dont 48 sur Forums)

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


plus...
Nouveaux membres
Kevin09689 17/2/2020
Nila78W023 17/2/2020
IndianaGri 17/2/2020
RLVAleisha 17/2/2020
Nether 13/2/2020
skatekitchen 12/2/2020
elevencore 12/2/2020
heretics 12/2/2020
darkloner 11/2/2020
margauxbchlt 8/2/2020
Dernier Ajout
atlantischateau2.jpg

Evènements à venir
Fev 23
anniversaire de windspirit
Mar 14
Anniversaire de AMV12
Mar 16
Anniversaire de galba
plus 274 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2020 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445