mercredi 31 mai 2017

Bureau - Rendu haute qualité

J'y ai mis tout ce que j'ai pu : haute définition, 100 samples (carrés, hein, donc en fait c'est plutôt 10000), et le résultat est à la hauteur, l'image est propre. Après 1 heure à faire chauffer le GPU.

Je vais maintenant faire le rendu d'une petite animation, qui fera tourner l'horloge, et avancera la caméra doucement, mais ça ne sera pas à ce niveau de qualité.

Temps de rendu

Andrew Price de Blender Guru a publié il y a quelques jours une vidéo qui présente 18 techniques pour accélérer le rendu avec Blender Cycles.

Ça tombe bien, la scène sur laquelle je travaille est particulièrement gourmande. Un rendu acceptable en HD prend 15 minutes. Pour en faire une animation de 10 secondes à 60 images par seconde, c'est 150 heures de rendu, et 10£ sur la facture d'électricité. Alors, tentons d'appliquer les techniques de Blender Guru à mon image. Voici le rendu de base, en 720 lignes pour passer moins de temps (tiens, la résolution, non mentionnée par Blender Guru ! Nous y reviendrons). Comme vous le voyez, tout ne s'applique pas, mais il n'y a pas de magie : chaque image est différente, et réagira plus ou moins bien à chaque technique.

Voici mon image de base, dont le rendu prend 1m53, avec beaucoup de bruit dans l'image. Commençons.

1 - Réduction des rebonds (light bounces)

Par défaut, le nombre maximum de rebonds est de 128. La réduction jusqu'à 5 ne donne pas grand chose, et finalement la réduction à 2 permet d'économiser quelques secondes : l'on passe à 1m37s. En revanche, le verre devient opaque ! Généralement une bonne technique, mais pas applicable dans mon cas, où j'ai besoin des rebonds...

2 - Utiliser les portails

Cette technique n'est applicable que pour les scènes d'intérieur éclairées par une fenêtre, par exemple. On zappe.

3 - Utiliser le GPU

Déjà fait ! Sans le GPU, la scène met 7m05s à être rendue. Y'a pas photo.

4 - Utiliser la taille optimale de tuiles

Mes rendus GPU utilisent généralement des tuiles 256x256, mais c'était l'occasion d'utiliser du 512x512. Résultat : 1m30s ! Toujours bon à prendre.

5 - Réduire les samples

En l’occurrence, plutôt les augmenter : il y a bien trop de bruit dans mon image. Voyons avec 48 samples : argh, 6m26s ! Et avec 36 : 3m31. Je vous ai mis l'image de base, la 36 et la 48 les unes après les autres. La différence de qualité est visible, et la 48 vaut le coup.

6 - Denoising

Celle là va de pair avec la précédente : peut-on atteindre la qualité 48 en enlevant le bruit de la 36 ? Pour ma scène, très contrastée, la réponse est non : le bruit que je veux voir partir (le fond du bureau, le fond de l'horloge) reste, mais les beaux reflets de ma lampe sont atténués ! Pas pour moi, celui là.

7, 8, 9 - La version de blender, le système d'exploitation, le clamp

Je passe rapidement sur ceux là : j'utilise la dernière version stable de Blender disponible, je suis déjà sous Linux, et je n'ai pas de problèmes de lucioles.

10 - Les caustiques

Voici quelque chose qui va provoquer des différences ! Voici la scène en 36 samples, avec et sans caustiques.

Alors, ça prend moins de temps, 3m02s au lieu de 3m36s. Mais qu'est-ce que c'est moins joli ! L'image est plus sombre, et les couleurs moins intéressantes. Plutôt normal, pour une scène où les effets de transparence et de réflection, métallique en particulier, sont primordiaux.

11, 12 - Instances, subdivision

Ma scène est suffisamment simple pour que ne souffre pas de problèmes de mémoire, et la faible profondeur de champ ne permet pas une utilisation de la subdivision adaptive.

Le reste

J'ignore le reste, qui ne s'applique pas à ma scène, qui n'a ni matériaux volumétriques, ni système de cheveux.

Conclusion : Comme quoi, il faut essayer, comparer, voir ce qui marche et ce qui ne marche pas... Je garde l'augmentation de la taille des tuiles, mais je continue à penser que l'image bénéficie vraiment des 48 samples. Reste les dernières variables d'ajustement : au lieu de full HD, si je me limite à 720 lignes, et que je réduis à 30 images par seconde, et que je me contente de 5 secondes d'animation, c'est 15 heures de rendu.

samedi 27 mai 2017

Une horloge

Voilà où j'en suis de la modélisation de ma petite horloge avec Blender. Usage et abus du bevel et des subsurfaces. Également beaucoup d'opérations de duplication et de rotation au clavier pour créer chaque chiffre sur l'horloge (que cache la vitre dans le mode plein de la première image).

jeudi 25 mai 2017

Agent 327 - Operation Barbershop

J'ai présenté sur LinuxFR le dernier court métrage de la fondation Blender, Agent 327, Operation Barbershop. Le lien direct vers mon article est ici.

dimanche 14 mai 2017

Verre de vin

Et un autre tutoriel ! Cette fois ci, il s'agit du verre de vin de CG Geek. Le matériau utilisé pour le vin est intéressant : il est composé d'un matériau de type "verre", complètement transparent, et d'un matériau de type "absorption de volume", qui lui, pour le coup, est rouge.

Malheureusement, le support d'OpenCL dans Cycles est moins poussé que CUDA, ce qui veut dire que ma carte vidéo ne permet pas le rendu du matériau volumétrique. Il me faut donc passer sur le CPU, ce qui est nettement plus long (5 minutes pour cette image). Pas la mer à boire, cependant.

Parquet

Modéliser un parquet est nettement plus facile que de le poser. J'ai combiné l'excellent (quoiqu'un peu rapide) tutoriel de BlendMaster pour créer une texture de bois procédurale, et je l'ai combinée à mon noeud PBR Dielectric pour créer 2 nouveaux noeuds PBR (physics based rendering, rendu basé sur la physique, pour ceux qui ne suivent pas) : un PBR bois, et un PBR parquet. Voici le PBR parquet en action dans une pièce aux murs lavande, avec une grosse lampe au plafond.

Notez l'effet de bump, en bas de l'image. L'on peut contrôler le niveau de bump ainsi que la réflection, afin de donner un aspect brut ou verni.

Je suis un peu obsédé par les textures procédurales. Je comprends parfaitement qu'un artiste puisse s'intéresser plus au résultat final qu'à la manière d'y parvenir (et c'est probablement primordial pour un artiste pro), mais j'aime me rajouter comme défi supplémentaire de n'utiliser aucune image réelle, que ce soit textures ou environnements. J'aime l'idée qu'une scène soit complètement artificielle, jaillissant d'un modèle mathématique.

J'ai une petite idée d'animation que je veux pousser un peu. Pour commencer, je vais utiliser ma texture de bois pour modéliser une table, puis poser des choses dessus. À partir de là, on devrait pouvoir s'amuser...

vendredi 12 mai 2017

Une balle qui rebondit dans l'eau

J'ai suivi le tutoriel de CG Geek qui explique comment faire rebondir une balle dans de l'eau.

Un aspect particulièrement intéressant de ce tutoriel est que l'image est en fait composée de 2 couches, l'une au premier plan modélisée à l'aide d'une simulation de fluide, et l'autre à l'arrière plan modélisée à l'aide d'un modificateur "océan". Une troisième couche, dupliquée de la première, permet de créer un masque, de manière à pouvoir combiner les deux couches dans le compositeur pour créer une quatrième image, finale celle là. L'on voit bien au moment du rendu, pour chaque image de l'animation, 3 images sont générées, puis le compositeur les combine.

lundi 8 mai 2017

Une section de rail

J'essaie de modeler une section de rail, et voilà le résultat. J'ai suivi les conseils de Blender Guru sur le photoréalisme, en particulier:

  • Utiliser des mesures réelles : ça tombe bien, il est facile de trouver, sur Wikipedia et autres, tout plein d'informations sur les tailles de rail, de traverses, et ainsi de suite. Super !
  • Utiliser des photos de référence : même chose, et la page sur les traverses contient une belle photo d'une voie de RER C qui a été mon inspiration principale.
  • Les angles parfaitement droits sont rares dans la réalité ! J'ai usé et abusé du modificateur "bevel", qui arrondit les angles, et rend ma traverse nettement plus belle.

Maintenant que ma traverse est (presque) prête, avec un modificateur "array" et un modificateur "curve", je peux créer n'importe quelle voie ferrée. Il n'y aura plus qu'à faire rouler un train dessus !

samedi 6 mai 2017

Ubuntu Phone - C'est bien fini

Ce n'était malheureusement pas un poisson d'Avril : début Avril, Mark Shuttleworth annonce un changement de cap massif pour le système d'exploitation Ubuntu. Certaines décisions sont plutôt des bonnes nouvelles, comme l'abandon de Mir pour se ranger derrière Wayland (je n'ai rien contre Mir, mais il me semblait dommage d'éparpiller ses forces sur quelque chose d'aussi bas niveau). D'autres sont décevantes sans être catastrophiques, comme l'abandon d'Unity, que j'avais fini par apprécier, mais pour lequel chacun trouvera facilement un remplacement qui lui conviendra, soit chez un mammouth du secteur (KDE ou Gnome) ou dans la myriade de gestionnaires de bureau existant. D'autres enfin m'affectent bien plus, en particulier l'abandon de l'aventure Ubuntu Phone.

J'avais du mal à voir comment Ubuntu allait résister face aux bulldozers (pardon, je veux dire, aux bouteurs) Android et iOS, les avantages de la plateforme n'allant pas de soit pour un public non spécialiste. Au contraire, l'absence d'applications se faisait cruellement ressentir. Mais j'avais espéré qu'Ubuntu Phone survive juste assez longtemps pour 3 ou 4 générations de téléphone.

Mon BQ Aquarius me donne pleine satisfaction, mais il sera dans un jour pas si lointain trop vieux et avec des logiciels qui, non mis à jour, seront de plus en plus incompatibles. Et il n'y a vraiment rien sur le marché qui me tente. Apple est trop fermé, avec l'impossibilité de l'utiliser proprement sans avoir un iTunes, et donc un Windows à disposition, et Android est un sacré bazar rempli d'applications plus ou moins honnêtes et avec une approche plutôt légère de la vie privée. Reste les OS alternatifs, comme Sailfish, mais qui nécessitent une installation à la main, et qui ont encore moins d'applications qu'Ubuntu. J'ai eu beaucoup de mal à faire paser mon entourage sous Telegram, le seul logiciel de messagerie qui fonctionne bien sous Ubuntu, je ne vais pas maintenant leur dire de tout laisser tomber pour me suivre sur quelque obscur protocole.

Alors j'espère l'émergence de quelque chose qui me convienne avant d'avoir besoin de changer mon téléphone. Nous verrons...