From BlenderWiki

Jump to: navigation, search
Blender3D FreeTip.gif
IMPORTANT! Do not update this page!
We have moved the Blender User Manual to a new location. Please do not update this page, as it will be locked soon.

Rendre de grandes scènes complexes ou accélérer le rendu

Temps de rendu attendu pour un rendu de qualité sur une machine octo-cœur.

“Une bouilloire observée ne bout jamais” (NdT : proverbe anglo-saxon ? “a watched pot never boils”), mais vous pourriez vous demander pourquoi votre rendu met tant de temps à se terminer, ou pire, se “crashe” à mi-course ! Et bien, il y a beaucoup de choses que vous pouvez faire pour accélérer un rendu, ou permettre à un rendu compliqué de parvenir à terme. Il est tout à fait possible de rendre une scène très complexe sur un PC médiocre, en étant un peu “futé”. Voici un “top ten” des choses à faire ou ne pas faire pour accélérer un rendu, ou même éviter son arrêt prématuré. Certaines options peuvent réduire la qualité de votre rendu, mais pour des “brouillons” cela peut ne pas avoir d’importance.

Si vous obtenez un message “Malloc returns nil”, cela signifie (pour ceux qui ne parlent pas le C) que Blender a essayé d’allouer plus de mémoire vive (RAM), mais que ça n’a pas été possible. Cela signifie (généralement) que vous n’avez pas assez de mémoire pour rendre la scène, et Blender ne peut continuer. Vous devrez suivre un ou plusieurs des conseils suivants pour pouvoir effectuer votre rendu.

Améliorations matérielles

  1. Ajoutez de la RAM à votre PC (dans les limites de votre carte-mère et de votre OS : inutile de dépasser les 3Go sur un OS 32-bits). Actuellement, Blender peut utiliser jusqu’à 8GGo (huit milliards de milliards d’octets…) de mémoire physique (espace d’adressage 64-bits), mais la plupart des PCs ne peuvent gérer plus de 2Go (ou 4Go) de RAM.
  2. “Upgradez” votre CPU vers un système multi-cœur/multi-processeur.
  3. Mettez à jour vos drivers vidéo OpenGL.
  4. Augmentez la vitesse de votre bus mémoire.
  5. Achetez de la mémoire vive plus rapide, jusqu’aux limites de votre carte-mère (la DDR-RAM 667MHz est 30% plus lente que la DDR-RAM 800MHz).
  6. Utilisez ou créez une ferme de rendu en utilisant tous les PCs de votre maison, ou en utilisant une ferme de rendu sur internet, comme BURP.


Configuration du système d’exploitation

  1. Augmentez la priorité du processus de Blender dans votre OS.
  2. Augmentez la taille du fichier (ou de la partition) d’échange (swap) utilisé(e) par votre OS comme “mémoire de réserve”. Aussi appelée taille de la mémoire paginée virtuelle, elle devrait être à peu près égale à la taille de votre mémoire vive.
  3. Passez à un système d’exploitation 64-bits.
  4. Quittez ou stoppez tous les processus en arrière-plan, comme l’anti-virus, BOINC, Real Player, même ceux qui sont “inactifs” comme Quicktime, car ils peuvent démarrer à tout moment une recherche de mise-à-jour. Et ils consomment de la RAM !
  5. Désactivez vos connections réseau pour arrêter le trafic “de maintenance” (ping, rafraîchissement, …).
  6. Arrêtez d’écouter votre radio internet et fermez votre navigateur web, surtout tous les sites multimédia (audio/vidéo/jeux).
  7. Fermez également toutes les autres applications actives (comme OpenOffice.org, The Gimp, …).
  8. Fermez toutes les icônes dans la barre des tâche, tous les widgets, enfin bref, tout ce qui tourne et n’est pas strictement indispensable !


Choix dans Blender

  1. Augmentez la MEM Cache Limit, dans la fenêtre User Preferences, boutons System & OpenGL.
  2. Utilisez une version optimisée de Blender, surtout si vous avez un CPU moderne supportant les instructions SSE2 – le rendu peut être 30% plus rapide avec une version optimisée.
  3. Utilisez une caméra orthographique, et rendez chaque “morceau” de votre scène vers une image séparée, puis collez toutes ces images (dans The Gimp, par ex.) pour reconstruire l’image définitive. Un vieux truc pour réaliser un panoramique avec un vrai appareil photo, est de prendre trois ou quatre photos d’une scène très large (coucher de soleil sur la plage), en tournant légèrement entre chaque prise ; puis, une fois vos photos développées, vous les rassemblez et les superposez pour obtenir une très large image du paysage. Faites pareil dans Blender : rendez une première “prise” dans un fichier, puis déplacez la caméra pour regarder une zone différente de la scène, et rendez une nouvelle “prise” dans un autre fichier. Chaque “photo” ne représentera qu’une petite partie de la scène, avec (relativement) peu de polygones. Assurez-vous, quand vous positionnez votre caméra, que les différentes “photos” se chevauchent toutes légèrement, pour que vous puissiez ensuite les rassembler facilement. Si vous voulez rester sous Blender, vous pouvez utiliser les nœuds de compositing (le nœud Translate en particulier) pour faire ce “collage”.
  4. Minimisez la fenêtre de rendu (ou Blender tout entier si vous rendez sur une fenêtre interne). Des utilisateurs de cartes vidéo ATI rapportent une forte amélioration du temps de rendu.
  5. Utilisez le script Big Render pour rendre des sous-parties de l’image, avant de les rassembler.


Scène et objets spécifiques

  1. Enlevez les lampes, ou déplacez-les vers des calques non-rendus, ou contraignez-les à n’éclairer qu’un seul calque.
  2. Désactivez les ombres de certaines lampes, en ne gardant qu’une ou deux lampes Sun principales pour projeter les ombres. Quelques lampes OnlyShadows (ombre seulement) seront rendues plus rapidement que si toutes les lampes projettent des ombres.
  3. Utilisez les ombres Buffer plutôt que les ombres ray-tracées.
  4. Pré-calculez, “cuisez” (“bake”) vos ombres en utilisant BakeFull Render pour les surfaces immobiles. Puis utilisez cette texture pour ce mesh, et désactivez l’ombrage pour son matériau.
  5. Simplifiez les meshes (enlevez des polygones). Plus vous avez de vertices dans la vue caméra, plus le rendu est long.
  6. Enlevez les doublons (Remove Doubles), ou utilisez l’outil d’édition des meshes Decimator.
  7. Enlevez (ou désactivez) les modificateurs Subsurf et Multires.
  8. Supprimez les faces arrières des meshes (en enlevant les vertices des faces invisibles).
  9. Ne rendez que quelques objets à la fois ; au début de votre projet, rendez les objets à l’arrière-plan, et le décor qui ne sera pas modifié et restera toujours en fond.
  10. Placez les bâtiments sur un autre calque, et grâce aux calques de rendu, de les rendez pas. Puis ajoutez-les plus tard, au compositing.
  11. Rendez la caméra statique, de façon à pouvoir plus facilement appliquer les deux idées précédentes.
  12. Évitez d’utiliser les lampes Area.
  13. Rendez les matériaux “sans-ombrage” (“shadeless”).
  14. Pré-calculez (baking) l’AO et les textures, puis désactivez l’ombrage de ces matériaux.
  15. Diminuez la distance Clip des lampes Spot.
  16. Diminuez la distance Clip de la caméra.
  17. Désactivez l’AO (occlusion ambiante) du monde.
  18. Désactivez le SSS (Sub-Surface Scattering) des matériaux.
  19. Utilisez des texture images plus petites. Une image 256×256 ne prend qu’un pourcent de la mémoire nécessaire à une image 2048×2048, bien souvent sans conséquence sur la qualité du rendu final.
  20. Réduisez le niveau des subdivisions de surface. Chaque niveau supplémentaire quadruple (×4) le nombre de faces par rapport au niveau précédent.
  21. Réduisez les Multires.
  22. Faites en rendu des objets d’arrière-plan, comme les bâtiments, et placez l’image-cache (matte) obtenue comme fond de la scène, à la place des objets eux-même. Cela réduira le nombre de faces/vertices dans la scène.


Réglages de rendu

  • Panneau Render Layers
    1. Ne rendez que les calques utiles !
    2. Rendez avec comme seule source lumineuse un unique Spot (entrez son nom dans le champ Light:).
    3. Rendez avec un seul matériau pour tous vos objets (entrez son nom dans le champ Mat:).
    4. Désactivez les passes de rendu inutiles, comme Z, ou ne rendez que les passes qui vous intéressent, comme Diffuse.
  • Panneau Render
    1. Désactivez Shadow.
    2. Désactivez l’Environment Mapping.
    3. Désactivez le rendu Panoramique.
    4. Désactivez le Raytracing.
    5. Désactivez la Radiosité.
    6. Désactivez le SSS (sub-surface scattering).
    7. Désactivez ou réduisez l’over-sampling (OSA).
    8. Désactivez ou réduisez le flou cinétique (MBLUR).
    9. Rendez par parties (parts). Cela vous permettra également de rendre d’immenses images sur un faible PC.
    10. Rendez à une fraction de la taille de votre image finale (comme 25%).
    11. Désactivez le rendu des trames (Fields).
    12. Utilisez Border pour ne rendre qu’une partie de l’image complète.
  • Panneau Anim
    1. Diminuez le nombre d’images (frames) de l’animation (et réduisez le frame rate, pour conserver la même durée d’animation). Par exemple, rendez 30 images à 10 fps pour une animation de 3 secondes, au lieu de 75 images à 25 fps.
  • Panneau Bake
    1. Pré-calculez tout le rendu (Full Render) – créez une texture UV qui colore les objets en fonction des matériaux, puis utilisez cette texture UV, sans ombrage (shadeless), à la place du matériau – sept fois plus rapide.
    2. Ne pré-calculez que l’occlusion ambiante.
    3. Pré-calculez les textures des objets.
  • La “cuisson” des cartes des normales ou de déplacement n’accélère pas le rendu – elle est destinée à d’autres usages.
  • Panneau Format
    1. Rendez dans une résolution plus petite. Les images plus petites sont plus rapides à rendre.
    2. Choisissez un codec, ou des réglages de codec, plus rapides.
    3. Rendez en Noir & Blanc (bouton BW).
    4. Si vous utilisez FFMPEG, n’activez pas Multiplex Audio (panneau Audio).
    5. Si vous utilisez FFMPEG, activez Autosplit Output (panneau Video).
    6. Ne rendez qu’en RGB si vous avez besoin des couleurs ; un canal Alpha (bouton RGBA) prend plus de mémoire et n’est pas utilisé quand vous rendez vers un fichier vidéo.