PDA

Voir la version complète : ProjUV



César Vonc
08/11/2012, 23h44
Module Python pour Cinéma 4D R13.


ProjUV v1.0 (http://code.vonc.fr/?a=32)


Voici un module permettant de projeter le dépliage UV d'un objet sur un autre.

L'outil se présente sous la forme d'une propriété à appliquer sur l'objet à texturer.


L'utilisation d'une même projection sur deux modèles différents permet de les texturer de la même façon malgré leur différence de maillage. Exemple avec une voiture :

http://code.vonc.fr/details/s32-01a.png

http://code.vonc.fr/details/s32-02.png


N'hésitez pas à proposer des améliorations, le module est gratuit et le code ouvert !

Aurety
09/11/2012, 00h37
Ca m'hallucine à chaque fois. Tu es un alien, tu ne penses pas comme un humain ? :huh:
Je ne dis pas que c'est hors de portée d'un développeur lambda, mais encore une fois ta méthodologie me laisse pantois.
Tu réponds toujours à la question mais d'une manière qui échappe au sens commun, en tout cas au mien et je ne dois pas être le seul. C'est la marque des génies, selon moi :icon_prie:
J'ai testé avec le terrain et l'idée de la route ( qui était certainement à l'origine de cette nouvelle pépite ) et ca marche nickel maintenant, vu que la projection se fait visiblement selon le maillage, je me retrouve avec des polygones ayant reçus la projection mais pas d'autres sur les bords ( cf fichier joint pour mieux comprendre :whistling: ), du coup 2 questions :

1 - Le plugin ne peut-il pas récupérer/créer automatiquement les polygones ayant reçu la projection afin de générer automatiquement la propriété de sélection associée ? Je vois tout de suite un usage sur des techniques de compositing ou ca serait super pratique.

2 - La cage FFD est super mais on devrait avoir au choix : la cage et/ou un deformateur enveloppe spline ( comme dans mon exemple ). Possible ? :icon_boss:

César Vonc
09/11/2012, 00h55
Ce module est en réalité un vieux rêve que j'avais déjà essayé de réaliser en COFFEE il y a fort longtemps, sans succès. ^^

Le code est encore un peu lent, surtout quand il y a beaucoup de polygones, je conseille de désactiver la mise à jour automatique dès que vous sentez que ça rame.


Si vous voyez que les UV projetées ne semblent pas très rectilignes, augmenter le nombre de polygones de l'objet qui projette l'UV.


Pour te répondre :

1) Oui, c'est bien vu et tout à fait réalisable !

2) Possible aussi (même si n'importe quel autre objet fonctionne), je peux ajouter un autre bouton qui génère un déformateur enveloppe, voire même quelques préréglages d'enveloppe, tiens.

Getro
09/11/2012, 02h23
Tu n'est pas humain :icon_eek:
Mais sinon bravo , hate de tester :)

shtl
09/11/2012, 09h02
AH c'est super cool ça ! C'est marrant, ya plein de fois je me dits "ça serai cool si… " et paf je passe ici et tu l'as fais :icon_bouncy:
Merci beaucoup :icon_thumbsup:

clemz
09/11/2012, 11h48
merci César :) ! je vais tester ça

diego1968
09/11/2012, 13h20
C'est hallucinant ce que tu peux être productif en Codage…et en plus que du bon !:thumbup1:

Tu vas finir chez Maxon si ça continue !:sweatdrop:

César Vonc
11/11/2012, 13h21
Merci, visiblement personne n'a remarqué la faute de frappe « Mise à auto ». ^^

Du coup je sors la v1.1 qui ajoute automatiquement une sélection de polygones correspondant aux polygones affectés par la projection.

Ainsi qu'un fichier d'exemple :
http://code.vonc.fr/details/projuv_exemple.zip?v=1.1


Je vais attendre quelques retours, Aurety, avant d'ajouter d'autres boutons pour générer un objet de projection, je n'ai pas encore choisi entre le déformateur libre et le plan dans un HN pour le meilleur exemple possible.

human
14/11/2012, 15h49
Salut alors ça a l'air super mais j'ai pas tout bien compris, y aurait un tit videotuto par hazard?

je reviens sur le texturage de tubes cosmeto car même en passant par blender unwrap les textes et logos sont déformés (un logo rond fini en patatte) et au final je dois faire une projection planaire ou du toshop, alors peut-être que ProjUV pourrait m'aider.

j'essaie de refaire l'exemple du bouquin mais j'entrave rien de rien

César Vonc
15/11/2012, 00h27
La projection se fait dans le sens des normales de l'objet. Si les deux objets n'ont pas leurs normales qui se font face, coche la case « Inverser la direction » du module, peut-être est-ce qui te bloque ?

César Vonc
13/12/2012, 19h40
D'accord, je viens de comprendre pourquoi certains ne voyaient rien, il semblait y avoir un problème de rafraîchissement pour ceux qui utilisent l'OpenGL (résolu avec un obj.Message(c4d.MSG_UPDATE) qui n'était visiblement pas nécessaire avec l'OpenGL désctivé).


Du coup, la verison 1.2 est dispo !

Le fichier d'exemple a également été mis à jour.


http://code.vonc.fr/?a=32

Exemples : http://code.vonc.fr/details/projuv_exemple.zip?v=1.2


Quel con !

Sir Gong
13/12/2012, 23h58
Quel con !Des cons comme toi, on en voudrait plein. :afro:

Merci encore pour tes contributions !