Test cheveux 2.69 !
OverdOzed
Inscrit:
15/06/2006 10:11
De Rennes
Post(s): 759
[edit] mes excuses, je voulais mettre ça dans la section WIP...


Bonjour le Blender Clan,

Ca faisait un moment que je n'avais pas touché à Blender (depuis les 2.5x) et ces derniers jours je m'y suis remis fiévreusement car j'ai jugé qu'il était temps de me former à Cycles quand même. Et à peine prises en main les dernières fonctionnalités de rendu, je vois arriver la 2.69 RC1 avec les BSDF's de cheveux. Du coup j'ai passé la nuit dernière à faire mumuse pour reproduire un shader complet de cheveux. J'arrive à un truc comme ça sans vraiment chercher l'esthétisme (clic droit -> ouvrir l'image) :



Ils ont pas l'air en bonne santé mais c'est 1) parce que je les ai peignés n'importe comment et 2) parce que j'ai quelques textures pour "randomiser" un peu la couleur et l'angle d'offset donc on est loin de la chevelure lisse et fluide de l'Oréal.

A part ça, le shader est construit pour coller autant que possible au modèle le plus complet / récent qui existe (à ma connaissance) : Light Scattering from Human Hair Fibers (Marschner et al., 2004) http://www.cs.cornell.edu/~srm/publications/sg03-hair-lr.pdf

-> une "hair BSDF" blanche mise en "reflection" pour les reflets principaux (réflexion directe qu'ils appellent lobe "R" dans le paper) avec un angle d'offset autour de 5° (= 2 fois l'inclinaison des cuticules du cheveu).
-> une "hair BSDF" teintée mise en "reflection" pour les reflets secondaires (lobe "TRT" dans le paper pour transmission entrante -> réflexion interne -> transmission sortante qui fait sortir du même côté qu'initialement), avec des paramètres de "roughness" 2 fois plus larges que le lobe R (la réflexion interne étale le cône de réflexion) et un angle d'offset de -1.5 fois celui du lobe R (pour des raisons géométriques encore)
-> une "hair BSDF" teintée mise en "transmission" (lobe "TT" dans le paper pour transmission entrante -> transmission sortante de l'autre côté) avec des paramètres de "roughness" 2 fois plus petits que le lobe R (ça refocalise) et un offset d'angle de -0.5 fois celui du lobe R.
Un peu confus tout ça je sais, mais je vous assure tout s'éclaire avec le premier schéma du paper

Bref, tout ça pour dire que le but de la manoeuvre c'était de partir sur une base "physique", ça donne des valeurs de départ pour les paramètres, après on est libre de sortir de ce cadre strict.

Voilà, si vous voulez je file le .blend, mais je suis prêt à parier que vous êtes déjà arrivés à des résultats similaires sans vous prendre la tête à lire un paper du genre

Allez-y montrez vos tests ça m'intéresse !

Contribution le : 10/10/2013 15:38
Créer un fichier PDF de la contribution Imprimer


Re: Test cheveux 2.69 !
OverdOzed
Inscrit:
20/10/2012 05:53
Post(s): 485
Citation :

Pixelvore a écrit:
... Light Scattering from Human Hair Fibers (Marschner et al., 2004) http://www.cs.cornell.edu/~srm/publications/sg03-hair-lr.pdf ...

... vous êtes déjà arrivés à des résultats similaires sans vous prendre la tête à lire un paper du genre



Mazette! Non j'ai pas tout lu... mais ça a l'air passionnant. Et d'ailleurs ça me fait penser à un sujet sur lequel j'ai fait quelque succinte recherche cet après-midi: le langage glsl en général, et son utilisation dans blender en particulier.

La réflexion que j'en tire au point où j'en suis c'est que ça a l'air passionnant, mais faut quand même être bien motivé pour s'y mettre (l'apprendre et l'utiliser).


Pas mal ton rendu sinon! Hormis le peignage qui certe laisse à désirer, la texture fait très réaliste.


Edit: glsl tuto -> http://www.lighthouse3d.com/tutorials/glsl-tutorial/

et le site du bousin -> http://www.opengl.org/documentation/glsl/

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


Re: Test cheveux 2.69 !
OverdOzed
Inscrit:
15/06/2006 10:11
De Rennes
Post(s): 759
Citation :
La réflexion que j'en tire au point où j'en suis c'est que ça a l'air passionnant, mais faut quand même être bien motivé pour s'y mettre (l'apprendre et l'utiliser).


Je trouve pas le langage en soi difficile (j'ai eu une petite expérience là dessus en stage), ce qui demande de l'investissement c'est tout ce qu'il faut engranger pour savoir précisément ce qu'on fait. L'infographie ça demande 1) d'être à l'aise en "physique de la lumière" pour pouvoir broder et "inventer" de nouveaux shaders, et 2) d'être à l'aise en maths (surtout géométrie) pour ne pas s'y prendre comme un manchot au moment de coder lesdits shaders. Le reste c'est surtout de la syntaxe et du bon sens

Bon sinon petit up, j'ai uploadé la vidéo qui s'est rendue cette nuit

https://vimeo.com/76609109

Assez rapide le rendu finalement, je suis à 10 spp (clamp fireflies à 1.00 quand même) et les 800 x 600 se calculent en 1'30".

Contribution le : 10/10/2013 20:09
Créer un fichier PDF de la contribution Imprimer


Re: Test cheveux 2.69 !
OverdOzed
Inscrit:
01/11/2004 21:14
Post(s): 6567
Je mettais amusé à faire des tests dans le viewport mais je n'ai rien sauvegardé.
J'ai bien mixé les deux types de shaders mais je n'ai pas cherché à utiliser 2 réflections.
Mais c'est vrai que je trouve excellent le fait d'avoir ce nouveau shader transmission.
Ce n'est pas un lourd SSS qui prend des plombes au rendu.
Et ça donne des rendus, toute suite, plus réalistes avec cette translucence.
En tout cas, quand on cherche plus à tirer vers la fourrure voire vers la peluche, le bénéfice est saisissant.

Contribution le : 10/10/2013 20:42
Créer un fichier PDF de la contribution Imprimer


Re: Test cheveux 2.69 !
OverdOzed
Inscrit:
15/06/2006 10:11
De Rennes
Post(s): 759
@zeauro : oui la transmission est bien plus rapide que le SSS car elle ne simule pas la "marche aléatoire" du rayon à l'intérieur des fibres (encore heureux), il tape le cheveu et passe avec une seule déviation.
Faut pas être trop dur avec les devs pour le SSS, en Monte Carlo complet faut simuler le zigzag complexe du rayon à l'intérieur du volume, car le rayon change continûment de direction (à notre échelle) donc c'est largement pire que des rebonds d'une surface à l'autre (GI habituelle avec des matériaux opaques et transparents sans diffusion). Après justement, l'approximation diffusion isotrope + dipôles lumineux en surface (le truc codé dans Cycles) permet d'éviter de simuler tous ces rebonds en calculant approximativement pour chaque point de la surface la contribution lumineuse des autres points de la surface (donc plus besoin de regarder volumétriquement ce qui se passe). Tout ça en saupoudrant d'une structure d'accélération du genre Octree pour regrouper ensemble les points lorsque l'erreur est tolérable.
Donc faut bien voir que oui, le SSS de Cycles est lent, mais c'est bien le plus rapide (et basique...) qui soit dans le cadre d'un moteur lancer de rayons. C'est à ma connaissance la méthode la plus populaire pour avoir du SSS pas cher. Si on faisait du Monte Carlo intégral là les temps de calculs se compteraient minimum en heures (rappelez vous quand fallait lancer le calcul pendant la nuit sur Indigo pour une scène bidon avec un peu de SSS...), là c'est en quelques dizaines de minutes au lieu de quelques minutes, ça pourrait être pire. Et faut savoir aussi qu'il existe des raffinements de cette méthode d'intégration du SSS qui permettront dans le futur d'avoir un meilleur SSS dans Cycles sans avoir à changer complètement de "paradigme" (à l'opposé d'autres méthodes du genre approximation par une grille 3D à l'intérieur du volume). Par exemple, pour du SSS multicouche on généralise la méthode avec des "multipôles" et ça fait juste un peu plus de termes dans l'addition pour le calcul des contributions lumineuses, mais le principe reste le même et les résultats sont très supérieurs. Ce qui me rassure c'est que le paper qui décrit ça je l'ai vu (lui et d'autres) dans la liste des papers repérés par Brecht http://wiki.blender.org/index.php/Dev:2.6/Source/Render/Cycles/Papers donc je sais qu'il a ça en tête.
Voilà tout ça pour dire "patience, ça vient"

Et sinon, je me suis fait un rendu high res avec des cheveux mieux peignés, on voit clairement la séparation entre le reflet principal (blanc) et le secondaire (teinté), vraiment essentiel pour tous types de cheveux du coup sauf les bruns évidemment (transmission négligeable car absorption quasi complète à l'intérieur. C'est géré tout seul par le shader de toute façon, une BSDF noire donne juste du noir partout sans aucun reflet.)



(clic droit -> afficher image)

Contribution le : 10/10/2013 23:47
Créer un fichier PDF de la contribution Imprimer


Re: Test cheveux 2.69 !
OverdOzed
Inscrit:
01/11/2004 21:14
Post(s): 6567
Citation :

Pixelvore a écrit:

Faut pas être trop dur avec les devs pour le SSS


Ce n'est pas mon intention.
Je parlais de façon générale.

Je ne connais pas un seul soft où le SSS ne ralentisse pas notablement le rendu.
C'est pour ça que dans la plupart, il y a un FakeSSS comme celui de l'internal.

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


Re: Test cheveux 2.69 !
OverdOzed
Inscrit:
15/06/2006 10:11
De Rennes
Post(s): 759
Citation :
C'est pour ça que dans la plupart, il y a un FakeSSS comme celui de l'internal.


C'est la même méthode qui est utilisée dans Cycles La seule différence c'est que dans Cycles les points échantillonnés sur la surface pour estimer l'irradiance incidente sont mieux répartis dans toutes les directions car les rayons sont susceptibles d'arriver de partout donc faut assurer, alors que dans l'Internal on prend juste les points "vus de face" + ceux "vus de dos" (et on se limite à l'éclairage direct dans le calcul d'irradiance). C'est pour ça que lors du pre-pass on aperçoit l'objet en rendu clay à la fois de face et de derrière. Mais sur le fond c'est pas "fake", c'est juste une approximation dans le sens où ça donne la solution exacte dans certains cas idéaux et en pratique, sur des vrais cas, ça donne une solution approchée. Du SSS "vraiment fake" par exemple c'est la technique de texture space diffusion qui consiste à flouter l'illumination dans l'espace texture ; même en floutant selon de vrais profils de diffusion, c'est faux physiquement même si ça colle à peu près perceptuellement. Mais ça fait du temps réel c'est sûr.

Mais en tout cas, agreed. Quel que soit le soft, le SSS et le rendu volumétrique sont toujours des problèmes épineux et y'aura jamais de méthode miracle.

Contribution le : 11/10/2013 13:28
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




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 [non résolu] Eevee ne fonctionne pas 2 46 Hier 23:48:46
Poutrator 
The Blender Clan 'tchat Avenir du blender clan    [1][2][3]...[5] 46 2687 Hier 16:52:05
Crocodile_13 
Questions & Réponses Artefacts sur 3D brute    [1][2] 13 175 Hier 16:41:40
Crocodile_13 
[WIP] et travaux terminés [terminé] Le Petit Train De La Mémoire 1 41 Hier 16:22:35
moonboots 
Questions & Réponses appliquer une animation NLA 6 147 Hier 16:14:41
Rimpotche 
Moteur de jeu GameBlender et alternatives [WIP] DeadSigns FPS horreur - Date de sortie 1er juillet 2020    [1][2][3]...[52] 513 87727 Hier 11:32:35
ProtonFox 
Questions & Réponses Remplacement d'une armature Mixamo 1 36 Hier 09:46:57
Rimpotche 
The Blender Clan 'tchat Blender 2.83! 1 77 Hier 00:41:42
Thewada 
Questions & Réponses Récupération fichiers Collada 1 53 04/06 15:46:05
Rimpotche 
[WIP] et travaux terminés [WIP] Projet Darwin (nom temporaire)    [1][2] 12 426 04/06 11:27:33
Bibi09 
Questions & Réponses [résolu] Vertex Weight après fusion de 2 objets 8 148 04/06 08:26:34
Sziuny 
Hors Sujet !! Mugcake au cacao 0 53 04/06 07:14:49
fiderana 
Questions & Réponses [Animation] Selectionner seulement les clés de l'axe Z 2 65 03/06 20:39:00
3dlone 
Python & Plugins Hover ! 1 92 03/06 17:47:11
Rimpotche 
Questions & Réponses Créer des muscles sur un squelette 7 115 03/06 13:09:48
Crocodile_13 
Mes premières images sous Blender (débutants) Texture de rouille pour le fun 0 68 03/06 12:47:09
Crocodile_13 
Questions & Réponses [non résolu] Visèmes import mhx2 + animation Mixamo dans blender 2.8 2 117 03/06 10:42:53
PapyDom 
Moteur de jeu GameBlender et alternatives hARMful engine    [1][2][3]...[7] 68 6699 03/06 10:27:51
Bibi09 
The Blender Clan 'tchat Le topic des trucs à voir    [1][2][3]...[304] 3031 741611 03/06 09:59:54
Sziuny 
[WIP] et travaux terminés Photo realisme avis/conseils (cocon)    [1][2] 14 638 02/06 18:37:43
Crocodile_13 

Qui est en ligne
37 utilisateur(s) en ligne (dont 25 sur Forums)

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


plus...
Nouveaux membres
AnnettGill 6/6/2020
RyderNorfl 6/6/2020
RoslynHann 6/6/2020
Deandre051 6/6/2020
PedroMette 6/6/2020
GTXHope805 5/6/2020
AnnieCupp1 5/6/2020
BryantSuth 5/6/2020
BrandieBau 5/6/2020
RositaFarn 5/6/2020
Dernier Ajout
mirages-preview~0.jpg

Evènements à venir
Jui 30
Anniv des Jedi :-D
Jui 11
BUG de Lyon
Jui 23
Anniv du BlenderClan !
plus 270 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