« 1 (2)


Re: Slider sur une shapekey en python.
OverdOzed
Inscrit:
08/10/2003 09:20
De Annecy
Post(s): 2819
Re, bon j'ai passé un peu de temps sur ton problème :)

Il faut savoir que tu t'attaques un problème épineux, les rotations en 3D c'est toujours complex!
Il y a le système euler, et le système quaternions... donner des valeurs absolue et claire en degré est uniquement possible en euler, mais l'inconvénient c'est que ça amène parfois au problème de "gimbal lock" ("mauvaises" rotations), les quaternions en revanche seront toujours fiables, mais ils sont construits avec 4 valeurs (W,X,Y,Z) difficiles à comprendre, donc il faut passer par une conversion d'angle euler>quaternion si tu souhaites leur assigner une valeur en degré "visuelle".
Dans le script, tu assignes une valeur en X, Y, et Z seulement, ce qui n'a pas trop de sens car les quaternions fonctionnant différemment d'euler, tu n'auras pas le résultat escompté.

Passer par la fonction rotate() peut être effectivement une bonne solution car ça permet de laisser les calculs de rotation, conversion d'angles et axes référentiels à Blender. Le problème c'est que tu ne peux pas assigner une valeur de rotation absolue avec, mais une transformation par rotation, ce qui est différent: tu tournes la bone de tel angle par rapport à sa rotation actuelle.

Je vois deux solution possibles:
1) Tu enregistre la valeur de rotation de la bone au départ (pour simplifier on part du principe que ce sera toujours 0 ici), et tu assignes cette valeur au début de l'update, et puis enchainer avec la fonction rotate()

2) Ou tu passes le mode de rotation en Euler et set directement la valeur d'angle pour l'axe que tu souhaites. Attention les valeurs de rotation sont toujours en coordonnées locales, alors que transform.rotate() peut utiliser des coordonnées globales ou locales. L'axe Z globale devient X (0) donc pour cette bone.

Voilà le blend (j'ai passé le mode de rotation en euler et j'ai ajouté une conversion degré-radians pour plus de clarté si on peut dire).

https://pasteall.org/blend/34c70ca0be7d469bad8dcebf4077d265

Contribution le : 24/05 15:49:01
_________________
lucky
www.lucky3d.fr
Auto-Rig Pro Addon: Blender Market - GumRoad
Créer un fichier PDF de la contribution Imprimer


Re: Slider sur une shapekey en python.
OverdOzed
Inscrit:
22/03/2010 12:13
De Gard du Nord
Post(s): 2415
Ah Lucky ! C'est moi qui suis lucky...
Je viens de tester et ça fait exactement ce que je voulais !
Comment te remercier ? Je vais me chercher une bière, tu en veux une ?
Bon, maintenant que j'ai cette solution, il va falloir que je la multiplie par tous les bones que je veux pivoter ! Plus les shapekeys, mais ça ça va grâce à toi aussi.

Y'a du taf.
Encore merci grandement du temps que tu as passé !!!!!!
Allez, je me replonge dans mon futur addon !

Contribution le : 24/05 16:39:17
_________________
Des soucis, un SOUCI !
Créer un fichier PDF de la contribution Imprimer


Re: Slider sur une shapekey en python.
OverdOzed
Inscrit:
08/10/2003 09:20
De Annecy
Post(s): 2819
Eh bien content de t'avoir rendu service :)
Juste par curiosité, quel est le but de l'opération?

Contribution le : 24/05 17:15:15
_________________
lucky
www.lucky3d.fr
Auto-Rig Pro Addon: Blender Market - GumRoad
Créer un fichier PDF de la contribution Imprimer


Re: Slider sur une shapekey en python.
OverdOzed
Inscrit:
22/03/2010 12:13
De Gard du Nord
Post(s): 2415
Quand j'ai essayé d'appliquer ta recette 2, ça n'a pas marché
Je me suis encore cassé la tête pendant un moment. Jusqu'à ce que j'aie l'idée de remplacer rotation_euler par rotation_quaternion et maintenant c'est ok. Pourquoi ????

Contribution le : 24/05 17:44:19
_________________
Des soucis, un SOUCI !
Créer un fichier PDF de la contribution Imprimer


Comment renommer "Key" ? (le chef des shapekeys)
OverdOzed
Inscrit:
22/03/2010 12:13
De Gard du Nord
Post(s): 2415
Bonsoir.

Mon petit problème du jour, même des derniers jours.
J'ai choisi de transformer ce thread en SIP (Script In Progress) à la 'MacBlyver' ! C'est-à dire que je poserai (si j'en ai, héhé, j'espère peu) mes questions en changeant le titre du thread.
Mon script s'étoffe, tout marche bien, même très bien, je ne pensais pas aller aussi loin.
Il va bientôt pouvoir acquérir sa promotion de 'Addon'.
Tout ça grâce à Lucky qui m'a dépanné à chaque tourment. En voici un nouveau :

Comme je disais, tout marche bien , tous mes sliders sont opérationnels et puis je fais des essais et soudainement,
mes curseurs n'ont plus d'effet. Après avoir cherché un certain temps, j'ai localisé le problème.

Mais la doc est bien discrète de ce côté là : Comment avoir accès à ce fameux "Key" (que je n'ai d'ailleurs pas demandé,
c'est Monsieur Blender lui-même qui l'a attribué à mon objet, ou peut-être même à la scène, tout cela est encore un peu mystérieux pour moi)

Voilà donc la cause : Le patron des shapekeys, ce fameux "Key" est renommé chaque fois que je relance mon script en Key.001, Key.002, etc....
et quand mon script l'appelle ('Key'), il n'existe plus...
Je voudrais donc pouvoir l'atteindre par exemple en cherchant un genre de "Key.0*" et s'il existe, le renommer en "Key" (pour être sûr que ça ne merde pas dans le futur Addon).



Encore mille grâces d'avance !

Contribution le : 26/05 17:58:54
Créer un fichier PDF de la contribution Imprimer


Re: Comment renommer "Key" ? (le chef des shapekeys)
OverdOzed
Inscrit:
22/03/2010 12:13
De Gard du Nord
Post(s): 2415
Après quatre jours, j'ai trouvé. Je suis patient et obstiné !
Faut juste tomber sur la bonne page dans les recherches.

Au cas où ça intéresserait un pythonneux :
for kee in bpy.data.shape_keys :
    if kee.name.startswith("Key.0") :
        kee.name = "Key"


Contribution le : 28/05 22:08:47
Créer un fichier PDF de la contribution Imprimer


Re: Comment renommer "Key" ? (le chef des shapekeys)
OverdOzed
Inscrit:
08/10/2003 09:20
De Annecy
Post(s): 2819
Un petit tip qui pourrait t'intéresser, dans la console (shift-F4) de Blender, on peut afficher tous les attributs d'une classe grâce à l'auto-complete. Par exemple si tu tapes "bpy.data.", il affiche tous les attributs de la classe data:



De manière similaire, en python:
for i in dir(bpy.data):
    print(i)

Contribution le : 29/05 11:20:37
_________________
lucky
www.lucky3d.fr
Auto-Rig Pro Addon: Blender Market - GumRoad
Créer un fichier PDF de la contribution Imprimer


Re: Comment renommer "Key" ? (le chef des shapekeys)
OverdOzed
Inscrit:
22/03/2010 12:13
De Gard du Nord
Post(s): 2415
Salut, cky !

Oui, merci beaucoup, j'ai découvert ça... Mais comme je débute de façon empirique, bien que je commence à potasser les cours de python, je patauge encore et je pataugerai un bon bout de temps. Ça me rappelle mes débuts avec Blender Interface 2.49 et juste après quand je commençais à m'y retrouver, paf version 2.50. Génial, mais que d'apprentissage !

Avec ce problème de renommage automatique de Blender, ça m'a retardé pour une connerie. Bon, j'ai progressé sur d'autres fronts. Pas mal me posent encore problème, mais j'aime résoudre.

Oui, le renommage automatique de Blender reste un peu mystérieux. Je charge en Append un modèle objet avec tous ses attributs, shapekeys, bones etc... et Blender me renomme mon "Key", un peu aléatoirement, (parfois pas, parfois .001, parfois .002 ou 3 ou 4, même 7. Alors j'ai déduit que jusqu'à .004, pas la peine de vouloir renommer "Key". Il incrémente jusqu'à .004. ENsuite, à .005, il permet ! Fallait le savoir ! Donc la solution que j'ai montrée dans une réponse précédente n'est pas forcément viable. J'ai bidouillé un truc bâtard qui marche pour être sûr...

Les scripts lancés perdurent tant qu'on ne redémarre pas Blender. Y a-t-il un moyen d'"éteindre"
les scripts qu'on a lancés ?

Contribution le : 29/05 18:43:45
Créer un fichier PDF de la contribution Imprimer


Re: Comment renommer "Key" ? (le chef des shapekeys)
OverdOzed
Inscrit:
08/10/2003 09:20
De Annecy
Post(s): 2819
Ben bonne question, à ma connaissance non pas dans le cas d'un script intégré au blend file. Par contre pour un addon, oui, la fonction unregister() est appelée au moment où on désactive l'addon dans la liste en décochant la case, ce qui a pour effet "d'éteindre" le script comme tu dis :)

Contribution le : 29/05 19:06:29
_________________
lucky
www.lucky3d.fr
Auto-Rig Pro Addon: Blender Market - GumRoad
Créer un fichier PDF de la contribution Imprimer



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




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 Fractal et nombre de vertice 0 1 Aujourd'hui 20:10:30
kimlicrea 
Questions & Réponses Diminuer le nombre de faces 1 20 Aujourd'hui 18:41:04
moonboots 
Questions & Réponses Comment nettoyer le LNA ? 3 54 Aujourd'hui 16:40:06
Meltingman2 
Moteur de jeu GameBlender et alternatives [WIP] DeadSigns FPS horreur - Première version disponible !    [1][2][3]...[58] 578 98510 Aujourd'hui 12:24:21
Bibi09 
Questions & Réponses [non résolu] Copier propiétés UV d'une face à une autre 2 34 Aujourd'hui 11:33:12
paquetdemouchoirs 
[WIP] et travaux terminés [WIP] Teeny Tiny - Story    [1][2][3]...[5] 46 4188 Hier 22:50:02
Bibi09 
[WIP] et travaux terminés [WIP] Tutoriel vidéo et création de mon prochain court métrage 5 261 Hier 20:25:01
Meltingman2 
Questions & Réponses switch entre IK/FK 4 59 08/08 18:54:05
prometheusx 
Questions & Réponses Je bloque sur la modélisation de ce verre! Avez-vous une solution? 8 304 08/08 13:23:47
debutant 
Questions & Réponses [non résolu] cloth: déformation bizzarre au rendu 3 83 07/08 09:21:18
Arielboid 
Questions & Réponses les cheveux longueur 1 68 06/08 19:53:18
Rimpotche 
Questions & Réponses ADDON MB - Lab 0 73 06/08 15:29:23
GI-jo13 
Questions & Réponses [résolu] en sculpt mode 5 218 04/08 18:21:10
prometheusx 
Questions & Réponses [résolu] Array circulaire 2 173 04/08 15:22:46
Redstar 
Questions & Réponses Addon pour textures procedurales 2 176 02/08 20:11:35
Crocodile_13 
Questions & Réponses avis animation marche :)    [1][2][3][4] 34 876 02/08 20:03:14
prometheusx 
[WIP] et travaux terminés [terminé] court métrage 2020    [1][2] 13 949 02/08 15:28:29
flahaut 
Questions & Réponses [résolu] Générique, sous-titres etc 3 179 02/08 09:18:02
Corpia 
Questions & Réponses [résolu] Scène prend la couleur du fond    [1][2] 11 349 02/08 08:20:32
Arielboid 
Questions & Réponses [non résolu] Problele d'addon 0 134 02/08 01:52:30
nayther 

Qui est en ligne
152 utilisateur(s) en ligne (dont 97 sur Forums)

Membre(s): 2
Invité(s): 150


KandiGetty, kimlicrea, plus...
Nouveaux membres
ZNXBrigett 10/8/2020
LeomaVangu 10/8/2020
KandiGetty 10/8/2020
JodiDivine 10/8/2020
WZASusanna 10/8/2020
Myles53Y57 10/8/2020
MaxineQuin 10/8/2020
XKGLeola56 10/8/2020
Efrain5922 10/8/2020
VioletWise 10/8/2020
Dernier Ajout
mirages-preview~0.jpg

Evènements à venir
Aou 13
Anniversaire Siskas
Sep 8
Anniversaire de ang
Nov 18
Anniversaire de RichDeg
plus 266 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