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] conseils pour une forme incurvée    [1][2][3][4] 30 243 Aujourd'hui 09:31:13
tykrane 
Moteur de jeu GameBlender et alternatives [WIP] DeadSigns FPS horreur - Reprise du développement    [1][2][3]...[40] 397 72702 Aujourd'hui 08:38:46
Bibi09 
Questions & Réponses Racourci selection par loop qui ne fonctionne plus 8 72 Aujourd'hui 08:25:49
martin26 
Questions & Réponses [non résolu] Problème modélisation verre 1 43 Hier 18:59:41
Gilead_Maerlyn 
Questions & Réponses Problème retopologie avec b surface 0 30 Hier 16:59:21
martin26 
Questions & Réponses [terminé] Sélection mode objet ne fonctionne pas 2 44 Hier 16:41:27
Etpaf 
Questions & Réponses Deplacer les objets dans blender    [1][2][3] 22 574 Hier 14:37:00
Rimpotche 
Questions & Réponses [résolu] Impossible charger objet dans Blender 6 90 16/01 19:25:16
HarDrive 
Mes premières images sous Blender (débutants) club Blender en collège/lycée    [1][2][3]...[7] 61 26879 16/01 19:23:06
busanga 
Questions & Réponses [résolu] Tasse et café 8 624 16/01 15:34:22
Rimpotche 
Questions & Réponses [résolu] Objet parent / enfant 3 94 16/01 13:27:18
rizer 
Questions & Réponses [résolu] [2d animation] sauver ces préférences et matières 2 95 16/01 13:22:53
pierre-y 
Questions & Réponses [résolu] modifier Subdivise surface vs. Mesh > Subdivise 3 66 16/01 12:20:53
blendinfos 
Questions & Réponses Exporter seulement les ombres 2 81 16/01 08:33:32
busanga 
Questions & Réponses Problème d'affichage des objets dans le 3d viewport 3 84 15/01 17:21:20
Rimpotche 
Questions & Réponses Plus de polygones apres le sculte 3 95 15/01 14:51:29
debutant 
Questions & Réponses [résolu] Débutant : sculpt/retopologie avis 5 211 15/01 13:29:48
Nigal 
Questions & Réponses Dynamique hair sur 2.80 0 76 15/01 03:42:31
Zarathoustra 
Questions & Réponses La fonction "Split" ne fonctionne pas 1 89 14/01 22:53:10
GreenDollars 
Questions & Réponses Blender 2.8 & BVH 0 94 14/01 20:39:15
Modigliani 

Qui est en ligne
73 utilisateur(s) en ligne (dont 39 sur Forums)

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


plus...
Nouveaux membres
AllisonHol 17/1/2020
Etpaf 17/1/2020
Booowaaap 17/1/2020
rizer 16/1/2020
Nigal 15/1/2020
Modigliani 14/1/2020
Bungo 12/1/2020
Highjack 12/1/2020
gigi 11/1/2020
Lelouch 10/1/2020
Dernier Ajout
atlantischateau2.jpg

Evènements à venir
(continuer) - Fev 1
Blender Day Paris 1er février 2020
Fev 15
Anniversaire de Dany
Fev 23
anniversaire de windspirit
plus 276 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