Système de rendu central dans Nuke, Fusion ou similar — traite les arbres de nœuds en temps réel ou ferme. Détermine vitesse et précision de sortie.
Le moteur de compositing est le cœur de tout logiciel de compositing professionnel — c'est le moteur qui exécute votre structure de nœuds en temps réel ou lors du rendu final. Il faut le considérer comme un calculateur intelligent qui suit chaque connexion entre les nœuds, optimise les flux de données et décide quelles opérations doivent être effectuées et dans quel ordre. Dans Nuke, vous travaillez avec le moteur DAG (Directed Acyclic Graph), qui est extrêmement efficace car il détecte les calculs redondants et met en cache les résultats entre les images. Dans Fusion, une logique similaire est appliquée, mais l'intégration 3D est plus profondément intégrée au moteur.
La vitesse de votre travail dépend directement de l'optimisation du moteur — et vous le remarquez immédiatement lorsque vous faites défiler de longs plans ou lorsque vous effectuez le rendu de piles de keyers complexes. Un moteur efficace priorise ce que vous voyez actuellement (optimisation de la vue) et reporte les calculs plus complexes. C'est pourquoi la lecture est fluide, même si vous avez enchaîné sept nœuds de rotoscopie, quatre qualificateurs et un tracker 3D. Ce n'est pas de la magie — c'est une allocation intelligente des ressources par le moteur. Il reconnaît également que certains nœuds peuvent être mis en cache car ils ne changent pas — par exemple, un nœud de correction de couleur statique avant une animation de rotoscopie.
Lors du rendu sur la ferme, le moteur devient encore plus critique. Votre structure de nœuds doit pouvoir être interprétée par le moteur de manière à pouvoir être distribuée sur des centaines de CPU. C'est un exercice d'équilibre : trop de dépendances entre les nœuds, et le moteur ne peut pas paralléliser ; trop peu de structure, et vous rencontrez des goulots d'étranglement, surtout avec des travaux en 4K-60fps. Il est donc important de comprendre où le moteur détecte des goulots d'étranglement dans votre script — les nœuds qui bloquent tout.
Concrètement, cela signifie : gardez vos flux linéaires et évitez les dépendances circulaires (que le moteur rejette immédiatement). Utilisez le linking par expressions intelligemment — chaque expression coûte du temps CPU lors du rendu. Et lorsque vous travaillez avec une profondeur de bits élevée (16 ou 32 bits), le moteur consomme plus de mémoire, mais devient plus précis. La plupart des erreurs ne proviennent pas d'une mauvaise utilisation, mais du fait que votre script submerge le moteur — trop de nœuds Read simultanément, des séquences non compressées, ou une boucle que vous n'aviez pas l'intention de créer.