jeudi 22 juin 2017

La qualitay

Les artefacts de compression sur ma vidéo du cube dans la piscine étaient hideux, et je pensais que c'était du au format non standard en 540 lignes. J'ai donc tout régénéré en 1080 lignes, et ce n'est pas mieux :

Alors, je pense que ce qui coince, c'est qu'il y a finalement beaucoup de bruit à la surface (ou au fond?) de ma piscine, et que ça se compresse très mal. Youtube, qui doit avoir des limites de bitrate, encode donc tout ça de manière cochon, et c'est moche. Alors, pour le fun, j'ai fait des tests de rendus avec différentes valeurs de samples: 24, 60, 125, 250, 500, et 1000. Voici le résultat :

La qualité de l'eau bénéficie clairement d'un grand nombre de samples. Bon, après, à 15 minutes par image avec 1000 samples, je ne vais pas sortir une vidéo à ce niveau de qualité, mais le cœur y est !

À noter, l'image avec 1000 samples est un PNG de 3.1 MB, contre 4.5 pour l'image avec 24 samples. Encore une preuve que c'est du bruit, et que ça se compresse très mal !

dimanche 18 juin 2017

Il ne faut pas glisser dans la piscine

J'expérimente avec la simulation de fluide, et c'est quand même assez chouette. L'on découvre quelques trucs, quand même. Tout d'abord, le matériau : le matériau "glass" fonctionne suffisamment bien pour un petit volume d'eau claire, là où on n'aura besoin d'effets volumétriques, pas encore supportés par mon GPU (peut-être avec Blender 2.79 cet été ?).

Ensuite, l'environnement : un petit volume d'eau (par opposition à un océan) étant très transparent et pas très agité, en isolation, on ne voit pas grand chose. Il faut donc fournir un environnement qui permette, par transparence et par réflexion, de voir les mouvements de l'eau. Pour ma piscine, j'ai rajouté des carreaux colorés, qui fonctionnent très bien.

Enfin, parlons performances. J'ai découvert avec horreur que le motion blur, quoique très joli, prenait un temps fou à rendre. Mais vraiment un temps fou. C'est à dire, une image en 15 secondes contre une image en 15 minutes. Alors je vous montre quand même ce que ça donne avec et sans, mais pour ma vidéo, je me contenterai de la version sans motion blur. Avec la vague de chaleur qui s'abat sur le pays, les ventilos de ma pauvre machine sont à fond, et j'aimerais la ménager un petit peu.

Voici la version finale de la vidéo. Je me suis contenté de 30 images par seconde et de 720 lignes, mais ça rend déjà pas mal.

samedi 10 juin 2017

Bzzz !

Voici le début de la modélisation de ma libellule robotique. Pourquoi robotique ? Parce que c'est nettement plus simple. Si je veux modéliser une libellule organique, on va bien voir que c'est moche. La modélisation tiendra peut-être à peu près, mais les matériaux, la texture du corps, des yeux, des ailes, tout cela sera très certainement hideux, parce que je n'ai pas les compétences, et je ne vous parle même pas de l'animation. Alors que si je modélise un robot libellule, il est alors naturel que les ailes bougent d'une manière plus simple, que le corps soit complètement métallisé, et que le modèle soit plus simple. Là où ça devient intéressant, c'est qu'une fois la contrainte posée, c'est un robot, cela peut être un catalyseur pour l'inspiration. Que mange une libellule robot ? Où vit-elle ? Dans un environnement industriel ? Quelles autres animaux robotiques peuplent les étangs d'huile de machine ?

Je dois maintenant ajouter la tête et les pattes de la bestiole. Je pense que cette nuit, je vais rêver de mandibules.

lundi 5 juin 2017

Bureau - L'animation

Enfin, après un week-end à faire du rendu, voici l'animation du bureau ! Bon, question mouvement, c'est limité, mais les reflets et réfractions dans le verre sont intéressants, ainsi que le balancier (on dit balancier, quand ça tourne sur soi-même ?). Comme prévu, il a fallu environ 30 heures pour rendre le bazar, même pas en 1080.

C'est dû en grande partie à la luminosité très contrastée et aux zones très sombres, qui affichent énormément de bruit sans une augmentation sérieuse du nombre de samples. Mais je voulais faire une étude de modélisation d'objets courants, et ça a donné quelque chose qui correspond amplement à mes attentes.

Maintenant, j'aimerais bien modéliser une scène un peu plus dynamique, avec jeux de caméras et effets de vitesse, mais je ne suis pas sûr d'avoir trouvé la scène qui me permettra de faire tout cela avec mes maigres compétences.

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).