Idées Scripts

Ici on parle des scripts

Modérateurs : frez, Yadoob, stilobique, Matpi, ModSquad

Re: Idées Scripts

Message par lapineige » 02 Fév 2016, 22:46

Tu sais le faire ça ;)
Mon terrier/blog: https://lapineige.fr/wp (l'ancien: le-terrier-de-lapineige.over-blog.com) | Mon GitHub: https://github.com/lapineige/Blender_add-ons | Lapineige's Tools: http://cgcookiemarkets.com/blender/all- ... ompilation
Avatar de l’utilisateur
lapineige
 
Message(s) : 3717
Inscription : 25 Juin 2014, 07:06

Re: Idées Scripts

Message par cedric » 02 Fév 2016, 22:50

Oui et non, la partie blender je dois pouvoir m'en sortir, la partie maya/max c'est une autre histoire.

Je vais voir sur BA si je peux trouver du monde et sur mayalounge ou 3dvf pour la partie maya/max.
Ça permettrait d'avoir plus de lien entre blender et les autres softs.
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7057
Inscription : 03 Août 2013, 21:36

Re: Idées Scripts

Message par cedric » 20 Fév 2016, 23:42

Suis en train de me faire un ptit script bien pratique pour ne pas avoir à aller dans les properties !

Image

C'est très personnel, je ne met que ce que j'utilise.
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7057
Inscription : 03 Août 2013, 21:36

Re: Idées Scripts

Message par Akelian » 21 Fév 2016, 17:47

Ca tue le Wazou PopUp,
Il faut que vous fassiez des tutos sur le code blender qu'on suive un peu :), ou des QuickTips.
D'ailleurs le podcast sur le rig il est passé à la trappe?
Avatar de l’utilisateur
Akelian
 
Message(s) : 112
Inscription : 04 Mai 2015, 11:48

Re: Idées Scripts

Message par cedric » 21 Fév 2016, 18:00

Faut qu'on le relance !

Pour le code, faut vraiment se lancer dedans, regarde les podcasts qu'on a fait dessus, j'ai aussi fait des tutos vidéo et écrit.
Mais je suis une vraie bile comparé aux gars sur le forum.

Mon popup est terrible, j'adore vraiment, là j'ajoute les options pour les lights.
Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7057
Inscription : 03 Août 2013, 21:36

Re: Idées Scripts

Message par cedric » 12 Avr 2016, 15:50

Voilà un plugin bien cool !

Cédric Lepiller, Freelance 3D Pitiwazou.com, Mes Addons, Asset Management, Speedflow
Avatar de l’utilisateur
cedric
Administrateur
 
Message(s) : 7057
Inscription : 03 Août 2013, 21:36

Re: Idées Scripts

Message par Yadoob » 12 Avr 2016, 17:04

aha je l'ai aussi vu sur 3dvf, j'étais en train des tester sur Blender :D. Y a carrément moyen de faire un truc avec les outils de base de Blender avec juste des macros :

Le rigid body est là avec en plus les forces field : le bake nécessite pas mal de boutons pour l'instant (set up les rigid bodies, jouer l'anim, bake la frame voulue, supprimer les clés à cette frame pour les objets et remettre un rigid body passif pour la suite)

Le gros point noir c'est l'aspect painting, pour l'instant avec le shift+D et le snapping d'object en mode "Project Individual" on peut placer les objets assez rapidement mais il faut les écarter ensuite pour pas qu'ils partent dans tous les sens pdt la simu. Mais c'est vraiment lourd comme workflow...

Image
Avatar de l’utilisateur
Yadoob
 
Message(s) : 224
Inscription : 15 Sep 2013, 12:57
Localisation : Lille

Re: Idées Scripts

Message par AlbertoFX » 03 Juin 2016, 11:55

phpBB [video]
AlbertoFX
 
Message(s) : 2
Inscription : 03 Juin 2016, 11:51

Re: Idées Scripts

Message par tynaud » 20 Juin 2016, 20:44

Hello,

Il y a un truc qui me gonfle particulièrement, c'est de créer un colorramp avec disons une douzaine de stops et de devoir prélever à la pipette chaque couleur à la pipette sur une photo par exemple (pratique pour faire des matériaux procéduraux). J'ai vu dans designer un outil qui permet de faire un tracé (on pourrait imaginer un coup de grease pencil) et qui prélève à intervalle régulier une couleur sur ce tracé, c'est super pratique et je voulais avoir l'avis des as de l'api python pour savoir si c'était faisable facilement. Idéalement je vois ça comme : on effectue le tracé après avoir appelé l'outil en question avec un bouton dans le panneau tools du node éditor, et on récupère un node colorramp avec le dégradé correspondant. Un slider permettrait de régler le nombre de stop que l'on souhaite sur le colorramp. Si un colorramp est déjà sélectionné, il met simplement à jour le dégradé... À votre avis, compliqué à réaliser ? Sinon on pourrait imaginer un réglage de la différence en terme de rgb (offset) nécessaire pour ajouter un Stop au colorramp à l'endroit correspondant à la distance relative le long de la stroke du grease pencil. Il me semble que c'est plus comme cela que cela fonctionne sur designer.

Exemple ici :
https://youtu.be/GbGPWj6CkFk?t=13m29s
Dernière édition par tynaud le 20 Juin 2016, 21:08, édité 1 fois.
Avatar de l’utilisateur
tynaud
 
Message(s) : 168
Inscription : 17 Juin 2014, 21:49

Re: Idées Scripts

Message par lapineige » 20 Juin 2016, 20:53

Et pourquoi pas cliquer à la chaîne pour sélectionner tes couleurs ?
Ou balader le curseur et quand tu en trouve une bonne, un raccourci clavier.

Sinon ça me semble faisable, à un détail près, on ne peut pas gérer la colorramp en python, donc il faudra copier/coller les couleurs à la mano.

A voir aussi si on ne peut pas shunter avec un groupe de noeud et des nodes RGB.
Mon terrier/blog: https://lapineige.fr/wp (l'ancien: le-terrier-de-lapineige.over-blog.com) | Mon GitHub: https://github.com/lapineige/Blender_add-ons | Lapineige's Tools: http://cgcookiemarkets.com/blender/all- ... ompilation
Avatar de l’utilisateur
lapineige
 
Message(s) : 3717
Inscription : 25 Juin 2014, 07:06

Re: Idées Scripts

Message par Matpi » 20 Juin 2016, 20:59

Comment tu récupères la couleur sous la souris, Lapi? ops.ui.eyedropper_color? sinon bgl -> ReadPixels... mais alors le gamma est sûrement problématique...

Hein??? On peut pas gérer la colorramp en Python? Et pourquoi donc? colorrampelements colorrampelement
BAddons - La Collection d'Addons de Matpi: https://github.com/qwenger/BAddons
Avatar de l’utilisateur
Matpi
 
Message(s) : 288
Inscription : 07 Déc 2014, 10:51
Localisation : in dr Schwiiz

Re: Idées Scripts

Message par lapineige » 20 Juin 2016, 21:27

Matpi a écrit :Hein??? On peut pas gérer la colorramp en Python? Et pourquoi donc? colorrampelements colorrampelement

Ah tiens, je ne sais pas pourquoi je me souvenais que ce n'était pas possible, je n'avais pas dû trouver à une époque. Merci, j'apprends un truc ;)


Matpi a écrit :Comment tu récupères la couleur sous la souris, Lapi? ops.ui.eyedropper_color? sinon bgl -> ReadPixels...

Ou même, si ce n'est pas fait avec une API Blender, on peut le faire au niveau du système.

Sous OS X / Windows y'a ça:
Code : Tout sélectionner
import PIL.ImageGrab
return PIL.ImageGrab.grab().load()[x, x]


Sous GNU/Linux le code est un poil plus complexe avec PIL, sauf à utiliser PyGTK/PyQT.

Bon par contre:
Matpi a écrit :mais alors le gamma est sûrement problématique...

Je n'y avais pas pensé :/
Faudrait retrouver l'info pour inverser la modif' du gamma.
Mon terrier/blog: https://lapineige.fr/wp (l'ancien: le-terrier-de-lapineige.over-blog.com) | Mon GitHub: https://github.com/lapineige/Blender_add-ons | Lapineige's Tools: http://cgcookiemarkets.com/blender/all- ... ompilation
Avatar de l’utilisateur
lapineige
 
Message(s) : 3717
Inscription : 25 Juin 2014, 07:06

Re: Idées Scripts

Message par Matpi » 20 Juin 2016, 21:34

ReadPixels de bgl est sûrement le plus simple, il suffit de tweaker le Python template Operator Modal Draw.

Pour le gamma... à voir.


EDIT: je confirme que la méthode glReadPixels fonctionne bien, mais que le gamma est problématique. Je cherche plus loin.

EDIT2: ça fonctionne bien avec la trafo inverse donnée par Wikipédia, en tout cas pour le sRGB. J'ai pas testé les autres (moins importants, de toute façon), mais pas de raison que cela ne fonctionne pas.

https://en.wikipedia.org/wiki/SRGB#The_reverse_transformation (en laissant tomber la partie transfo matricielle vers XYZ puisqu'on ne s'intéresse qu'à l'espace colorimétrique linéaire)

Bref, je ne vois plus de problème majeur du tout. ;-)


EDIT3: tynaud, je regarde demain (mardi) soir si tu veux pour une implémentation, à peine tard pour ce soir... :)
BAddons - La Collection d'Addons de Matpi: https://github.com/qwenger/BAddons
Avatar de l’utilisateur
Matpi
 
Message(s) : 288
Inscription : 07 Déc 2014, 10:51
Localisation : in dr Schwiiz

Re: Idées Scripts

Message par tynaud » 21 Juin 2016, 08:53

Super, bien que je serai loin de blender toute la fin de semaine :cry:
Mais carrément, tu auras droit à mon éternelle reconnaissance :D
Avatar de l’utilisateur
tynaud
 
Message(s) : 168
Inscription : 17 Juin 2014, 21:49

Re: Idées Scripts

Message par Matpi » 26 Juin 2016, 10:01

Hello,

J'ai (enfin!) une première version fonctionnelle. J'y ai mis le temps mais au final il y a plus de features que prévu au départ.

C'est là que ça se passe: node_colorramp_dropper.py

Je ne suis pas sûr d'avoir exactement suivi à la lettre ta proposition initiale, mais j'ai essayé de faire qqch de cohérent.


Installation
Triviale, un panneau s'affiche dans le Node Editor à droite si ce dernier contient un arbre de noeuds.


Usage
Général: cliquer avec la souris sur le bouton "Draw ColorRamp Dropper Path" (ou le choisir depuis le menu contextuel de la barre d'espace); le curseur souris se transforme en pipette; dessiner un chemin avec la souris dans un des espaces de la fenêtre quelconque; valider. Les valeurs sont affichées dans un ColorRamp.


Options

Use Active Node: Si le node actif (entouré en jaune - pas orange - dans le thème par défaut) est un node de type ColorRamp, les valeurs sélectionnées seront ajoutés à cette colorramp-là. Sinon (ou si cette option est désactivée) un nouveau node ColorRamp est créé et utilisé.

Use Interval: Colle les valeurs sélectionnées dans un sous-intervalle de la plage (0.0 - 1.0) de la ColorRamp.

Erase Existing Keys: Supprime les anciennes valeurs avant de coller les nouvelles. Si Use Interval est activé, il y a également la possibilité de ne supprimer les valeurs que dans le sous-intervalle utilisé.

Path Type: Le chemin dessiné peut consister soit en segments droits (Polyline) ou en courbes (Cubic Spline).

Use Intermediate Points: Sur-échantillonne le chemin en sélectionnant un certain nombre de valeurs intermédiaires. Le mode Path Type/Cubic Spline n'est utile qu'avec un nombre non-nul de sur-échantillons.

Free-Hand Drawing: Trace le chemin en une seule fois plutôt qu'en plusieurs clics successifs (un peu à la manière du Grease Pencil).

Use Segments Length: Les valeurs dans la ColorRamp sont espacées selon leur distance réelle de leur sélection plutôt que régulièrement.

Keys Alpha: Alpha à utiliser pour les nouvelles valeurs.

Show Values: Ecris à l'écran les valeurs RGB sélectionnées lors du dessin du chemin.


Contrôles

Mode normal:
Clic gauche: commencer à dessiner/sélectionner la valeur sous la pipette
Clic droit: déselectionner la dernière valeur/annuler (quand aucune valeur n'est sélectionnée)
Escape: annuler
Retour: valider les valeurs sélectionnées, finir le dessin

Mode free-hand
Clic gauche: commencer à dessiner
Clic gauche, relâché: valider les valeurs sélectionnées, finir le dessin
Clic droit: annuler
Escape: annuler
Retour: valider les valeurs sélectionnées, finir le dessin


Limitations
  • Les valeurs RGB des pixels (telles qu'affichées au gamma près) uniquement sont récupérées par l'outil; l'alpha est défini par l'option Keys Alpha
  • La limite de valeurs d'une ColorRamp est fixée par Blender à 32


Screenshots

UI:
Image

Node créé:
Image


Bien entendu, commentaires, remarques et suggestions sont bienvenus.
BAddons - La Collection d'Addons de Matpi: https://github.com/qwenger/BAddons
Avatar de l’utilisateur
Matpi
 
Message(s) : 288
Inscription : 07 Déc 2014, 10:51
Localisation : in dr Schwiiz

PrécédentSuivant

Retour vers Scripts - Python - OSL

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 2 invité(s)

cron