VertexColor et arêtes franches

Questions à propos du scripting Shader.
Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

VertexColor et arêtes franches

Message par boubouk50 » 28 Avr 2014 14:54

Bonjour,

Après avoir fait le tour du forum, il ne me reste plus qu'une seule question encore sur les Vertex Color: Comment faire pour avoir une arête franche peinte en Vertex Color?
Après plusieurs tests, je ne suis pas parvenu à avoir une arête franche sans avoir a découper le mesh pour avoir plusieurs sommets au même endroit avec une couleur différente. Le problème, c'est que justement le mesh est découpé donc on perd le lissage (Sauf, bien sur, en éditant les normales à la main), et ça fait du boulot juste pour ça...
Existerait-il une solution simple, une case à cocher que j'ai oubliée ou toute autre solution pour avoir un Vertex Color dans Unity qui corresponde exactement à celui dans 3Dsmax?

Merci,
Antoine.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Avatar de l’utilisateur
mel68
Messages : 827
Inscription : 04 Fév 2012 14:57

Re: VertexColor et arêtes franches

Message par mel68 » 30 Avr 2014 10:37

Salut, je connait pas trop le vertex color et donc ne comprend pas forcément tout ce que tu nous dit mais peut être que cette vidéo peu t'aider :

http://cgcookie.com/unity/2013/03/22/qu ... ex-colors/

sur Max ça commence à 9:05

en, espérant que c'est ce qu tu cherche ^^
Bonjour bonjour, je tien juste a vous avertir promptement que ce message ne sert totalement a rien

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: VertexColor et arêtes franches

Message par boubouk50 » 30 Avr 2014 11:51

Merci Mel68,
Ça ne répond pas à mon problème, donc pour être plus clair, je vais illustrer mon propos:

Image

A gauche: dans 3dsmax. A droite: dans Unity. Il n'y a pas de texture, juste du Vertex Color et de l'éclairage.

Unity semble considérer qu'il n'y a qu'un seul vertex avec une seule couleur de vertex, d'où l'interpolation dégueulasse et cet effet flou.
Pour avoir cette arête franche dans Unity, il faut que je découpe le mesh au niveau de ces arêtes franches pour avoir 2 vertices avec 2 couleurs de vertex différentes. Je perds donc la topologie de mon mesh qui se retrouve ouvert et je dois éditer les normales pour ne pas avoir de coupure visible. Bref, ça représente trop de travail à fournir, je ne trouve pas cette solution valide. Je cherche donc un moyen d'avoir le même résultat en plus simple.
J'ai joué avec les options d'import: Optimisation de mesh, split tangent, etc. Rien n'y fait. Peut-être est-ce l'export FBX, je ne sais pas.

Antoine.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Avatar de l’utilisateur
F@B
Messages : 1844
Inscription : 01 Août 2013 10:41
Contact :

Re: VertexColor et arêtes franches

Message par F@B » 30 Avr 2014 13:50

huuum regarde par la :
http://forum.unity3d.com/threads/158048 ... esn-t-show!

question bonus l'uvmap et texture classique ne te suffisent pas?
ʕ·͡ᴥ·ʔ ==> Mon Portfolio <== ʕ·͡ᴥ·ʔ

Merci de lire et de prendre en considération la Nétiquette des Forums avant de poster un sujet !

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: VertexColor et arêtes franches

Message par boubouk50 » 30 Avr 2014 14:26

Simple question d'optimisation. Moins j'ai de textures et de DrawCall mieux c'est.
En fait je fait un baking d'illumination dans le VertexColor depuis max, pour ne pas avoir à illuminer mon objet dans Unity. Je travaille sur de grosses maquettes environnementales (>50km*50km), qui doivent être portées sur tout support. Un simple shader qui multiplie la texture avec le VertexColor fait l'affaire pour optimiser un maximum.
Sinon soit tout est éclairé dynamiquement soit tout est lightmappé, ce qui ne sont absolument pas des solutions viables: le framerate tombe en flèche pour mes scènes.
A l'heure actuelle j'ai quelque chose de correct, mais aucune arrête franche, ce qui est pas top au niveau des batiments, murs, etc... (tout ce qui a l'aspect cubique)

Merci pour le lien, mais je n'ai pas de soucis en ce qui concerne le shader, j'ai déjà codé ce qu'il me fallait.
J'ai cette perte d'information quelque part, je n'arrive pas à savoir exactement où et donc comment y remédier au mieux.
Si ça se trouve, c'est juste pas possible, mais peut être quelqu'un est déjà passé par là, et ça pourrait m'éviter de perdre du temps de prod que je n'ai pas trop.

Antoine.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

boboss
Messages : 28
Inscription : 24 Jan 2012 17:11

Re: VertexColor et arêtes franches

Message par boboss » 30 Avr 2014 14:50

Salut
regarde du coté de ton filter mode de ta texture ( en cliquant dessus) qui doit être en Point et non en Bilineair ou trilineair.

Avatar de l’utilisateur
F@B
Messages : 1844
Inscription : 01 Août 2013 10:41
Contact :

Re: VertexColor et arêtes franches

Message par F@B » 30 Avr 2014 15:44

ok je comprend mieux ton soucis, en effet mon lien n'est probablement pas utile et tu as deja ce qu'il te faut.

Boboss si c'est du vertex il n'y a pas de problème de filtre de texture je pense.

bon courage je vais faire quelques test si j'ai 5min!
ʕ·͡ᴥ·ʔ ==> Mon Portfolio <== ʕ·͡ᴥ·ʔ

Merci de lire et de prendre en considération la Nétiquette des Forums avant de poster un sujet !

boboss
Messages : 28
Inscription : 24 Jan 2012 17:11

Re: VertexColor et arêtes franches

Message par boboss » 30 Avr 2014 15:48

Oui je suis bête c'est un vertex color

alors ca vient surement du pixel shader qui interpole la couleur fournit par le vertex shader.
si ta sphère possède moins de sommet ça doit encore être pire

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: VertexColor et arêtes franches

Message par boubouk50 » 30 Avr 2014 16:03

Je vois que c'est réactif sur ce forum. ;)
Entrain de répondre que déjà c'est fait à ma place.

La question que je me pose: comment sont passées les infos.
Une face est composée de 3 vertex, un vertex au milieu de 4 faces sont donc en fait 4 vertex identiques.
Admettons que Unity décide que c'est le même vertex alors je me retrouve qu'avec un seul vertex et une seule couleur de vertex possible à ce point. De ce fait je suis baisé.
La question que je me pose ensuite, si je prends un vertex sur une arête qui définit 2 smoothing groups, alors j'ai un vertex avec 2 normales différentes, donc deux vertex(? car 2 infos), donc je peux également avoir deux couleurs de vertex -> ce n'est pas le cas. (en plus je perds le lissage, mais c'est pour le test).

Est ce que j'ai l'info de plusieurs couleurs au vertex et ou est ce que je la perds? Le shader peut être une piste.

Merci.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Avatar de l’utilisateur
Alesk
Messages : 2303
Inscription : 13 Mars 2012 09:09
Localisation : Bordeaux - France
Contact :

Re: VertexColor et arêtes franches

Message par Alesk » 30 Avr 2014 20:39

Salut,

Je ne sais pas trop comment max gère sa tambouille, mais coté carte graphique : un vertex <=> une normale <=> une couleur
Tu ne pourras pas avoir plusieurs couleurs/normales pour un même vertex, il faudra donc obligatoirement avoir des doublons :/

Si max te permet de générer proprement les couleurs et le normales dans un fichier obj, ça peut se tenter, sinon il va falloir coder toi-même un script d'export pour max ou d'import dans unity pour obtenir exactement ce que tu désires (je pourrais te filer quelques conseils plus détaillés à ce sujet, si besoin)

Répondre

Revenir vers « les Shaders »