Dernières actualités
Blender : guide de partage des assets avec Link, Append et Library OverridesBiennale d’architecture de Venise 2027 : construction et savoirs locaux au premier planGuide QuadRemesh dans Rhino 8 : maillage quad propre et workflow SubDConfigurer Unreal Engine Pixel Streaming : diffuser un projet dans le navigateurRégler le cadrage de la caméra et la plage d’animation avec Blender PythonPréparer un modèle Revit pour Navisworks : guide des coordonnées, propriétés et géométrieBlender Geometry Nodes Repeat Zone : guide pratique des géométries répétéesBlender Geometry Nodes : placer des objets sur des points et transformer les instancesPavillon coréen de Venise 2027 : les villes en déclin face au « catabolisme »Créer des visuels d’intérieur avec Nano Banana 2.1 : guide de prompts étape par étape
TutorielsBlender

Régler le cadrage de la caméra et la plage d’animation avec Blender Python

La documentation actuelle de l’API Python de Blender présente les propriétés qui permettent de modifier par code les paramètres de la scène et de la caméra. Dans ce guide, nous réglons pas à pas la focale, le guide de cadrage et la plage d’images de l’animation.

Visualisation architecturale d’un intérieur contemporain composé selon le guide des tiersImage IA
Image d’illustration générée par IA.Image : 3dsınıfı / FCA AI

En bref

  1. Vous pouvez accéder à la caméra active via `scene.camera` et modifier sa focale.
  2. Le guide des tiers peut être activé avec la propriété `show_composition_thirds` des données de la caméra.
  3. La plage d’animation se définit avec les propriétés `frame_start` et `frame_end`.
  4. Depuis Blender 5.0, la propriété `scene.use_nodes` est obsolète ; pour régler la composition, il faut utiliser `scene.render.use_compositing`.

Ce que vous allez apprendre dans ce guide

Gérer les paramètres de caméra et de timing d’une scène de visualisation architecturale dans Blender via l’API Python permet de mettre en place un processus de travail reproductible. Dans ce guide, nous voyons comment repérer la caméra active, modifier sa focale, afficher le guide de cadrage et définir les images de début et de fin de l’animation. Dans la dernière partie, nous verrons comment définir une plage de prévisualisation plus courte et vérifier les erreurs courantes.

Les exemples présentés ici s’appuient sur les propriétés Scene et Camera décrites dans la documentation actuelle de l’API Blender. L’objectif n’est pas d’automatiser tous les paramètres de rendu, mais d’appliquer de manière contrôlée des choix fondamentaux tels que le cadrage de la caméra et la plage temporelle de la scène.

Prérequis

Exécutez les exemples dans un environnement où l’API Python de Blender est disponible. Les extraits de code supposent que le module interne bpy et le contexte de la scène active sont prêts à l’emploi. D’après la documentation, la scène est accessible via bpy.context.scene et la caméra active de la scène est stockée dans la propriété scene.camera.

Il s’agit des pages actuelles de la documentation de l’API. Il y est également indiqué que Scene.use_nodes est obsolète depuis Blender 5.0 et que sa suppression est prévue pour la version 6.0. Comme ce guide ne met pas en place de nœuds de composition, cette propriété n’est pas nécessaire pour les exemples consacrés à la caméra et à la plage d’images. Les sources ne mentionnent aucune exigence concernant un compte.

Avant d’appliquer le code, il est recommandé de conserver une copie du fichier de projet et de tester les valeurs dans une petite scène de test. Cette habitude permet d’éviter toute modification involontaire des paramètres de la scène, notamment dans les projets comportant différentes configurations de caméra ou plages d’animation.

1. Vérifier la caméra active

Commencez par vérifier si la scène possède une caméra active. Scene.camera indique la caméra utilisée pour le rendu. Le code ci-dessous affiche son nom si une caméra est présente ; sinon, il indique que la scène n’a pas de caméra active. Cette vérification constitue un point de départ sûr avant d’accéder aux données de la caméra dans les extraits suivants.

python
scene = bpy.context.scene
camera = scene.camera

if camera is None:
    print("Sahnede aktif kamera yok.")
else:
    print("Aktif kamera:", camera.name)

La présence d’une caméra dans la scène ne signifie pas nécessairement qu’elle a été sélectionnée comme caméra active. Le code n’accède qu’à la caméra active via scene.camera. Si aucune caméra n’est détectée, définissez celle qui sera utilisée dans la scène avant de passer aux réglages de focale et de cadrage.

2. Régler la focale et le guide de cadrage

Les paramètres de la caméra sont stockés dans son bloc de données, accessible via camera.data. Pour une caméra en perspective, lens exprime la focale en millimètres. La valeur par défaut indiquée dans la documentation est de 50,0 mm ; dans cet exemple, elle est réglée sur 35,0 mm. Il s’agit d’une modification numérique via l’API : elle ne garantit pas à elle seule un résultat architectural particulier. Vérifiez l’image pour choisir la valeur appropriée.

python
scene = bpy.context.scene
camera = scene.camera

if camera is not None:
    camera.data.lens = 35.0

Pour utiliser le guide des tiers dans la vue caméra, vous pouvez activer la propriété show_composition_thirds du même bloc de données. Ce guide aide à évaluer la disposition des éléments dans le cadrage ; il ne modifie pas automatiquement la géométrie ni la position de la caméra.

python
scene = bpy.context.scene
camera = scene.camera

if camera is not None:
    camera.data.show_composition_thirds = True

Si le guide n’apparaît pas, vérifiez que vous êtes bien dans la vue caméra et que la caméra active est correcte. Cette propriété fait partie des paramètres d’affichage des guides de composition de la caméra dans l’API. La documentation répertorie également le centre, le nombre d’or et d’autres guides de composition ; cet exemple se limite ici au guide des tiers pour évaluer un cadrage architectural.

3. Définir la plage d’images de l’animation

Les points de début et de fin de la plage de lecture et de rendu d’une scène sont définis avec les propriétés frame_start et frame_end. L’exemple ci-dessous règle la plage de la première à la 120e image, puis place l’image courante de la scène sur l’image de début. Ces valeurs sont données à titre d’exemple ; adaptez-les à la durée de votre animation.

python
scene = bpy.context.scene

scene.frame_start = 1
scene.frame_end = 120
scene.frame_set(scene.frame_start)

La méthode frame_set() actualise les objets et les couches de vue lorsqu’elle définit l’image courante. Vous pouvez donc l’utiliser pour mettre à jour l’image de la scène, plutôt que de conserver simplement le numéro d’image dans une variable. La documentation de l’API précise que la méthode frame_set() accepte également une valeur de sous-image ; ce guide s’en tient à l’utilisation de base avec des images entières.

Il est également possible de définir une plage de début et de fin distincte pour la prévisualisation. La propriété use_preview_range indique si cette plage alternative est utilisée, tandis que frame_preview_start et frame_preview_end en définissent les limites.

python
scene = bpy.context.scene

scene.use_preview_range = True
scene.frame_preview_start = 20
scene.frame_preview_end = 40

Dans cet exemple, la plage de prévisualisation couvre les images 20 à 40. Selon la description de l’API, cette plage alternative peut être utilisée pour la lecture de l’animation et les rendus de la vue. Cette distinction peut être utile si vous ne souhaitez pas modifier la plage principale de l’animation. Vérifiez dans la scène que les paramètres de prévisualisation fonctionnent comme prévu.

Erreurs courantes

  • Oublier de vérifier la présence d’une caméra active : si scene.camera est vide, vous ne pouvez pas accéder au bloc de données de la caméra. Commencez par exécuter la vérification du premier exemple.

  • Chercher le paramètre sur le mauvais objet : la focale et le guide de composition de la caméra se trouvent dans la section data de l’objet caméra. La plage d’images, elle, fait partie des propriétés de la scène.

  • Confondre la plage de prévisualisation avec la plage principale : frame_preview_start et frame_preview_end sont distincts des valeurs principales frame_start et frame_end. Vérifiez également le paramètre use_preview_range, qui active la plage alternative.

  • Utiliser l’ancien paramètre de composition : la documentation indique que la propriété Scene.use_nodes est obsolète depuis Blender 5.0, que sa définition est sans effet et que sa suppression est prévue en version 6.0. Pour activer ou désactiver la composition, utilisez la propriété scene.render.use_compositing.

  • Reprendre les valeurs d’exemple telles quelles dans un projet : 35 mm ou 120 images ne conviennent pas nécessairement à toutes les scènes. Évaluez le cadrage et la durée de l’animation en fonction des besoins du projet.

Étapes suivantes dans un flux de travail d’architecture et de visualisation

Cette méthode peut être utile aux équipes de visualisation qui réappliquent des réglages de cadrage et de timing dans une même scène, ainsi qu’aux étudiants qui apprennent à configurer une caméra. Ces courts extraits de code peuvent, par exemple, servir de base pour revenir à une plage fixe de la scène ou réactiver le guide de composition. Ils n’accélèrent toutefois pas le rendu et ne fournissent aucune information sur des exigences matérielles spécifiques. Dans les projets de grande envergure, testez les modifications d’abord sur le poste de travail utilisé et sur une copie du projet.

Pour commencer, appliquez les extraits de code un par un dans votre scène et vérifiez le cadrage de la caméra ainsi que la plage d’images. Si vous souhaitez ensuite transformer ces réglages en un flux de travail partageable avec l’équipe, consultez les objets et propriétés concernés de l’API Blender. Pour modifier les paramètres de composition, utilisez la propriété actuelle scene.render.use_compositing ; n’écrivez pas de nouveau code reposant sur l’ancienne propriété scene.use_nodes.

Sources et licence

Ce guide a été adapté à partir des propriétés décrites dans la documentation de l’API Blender pour Scene et Camera. Les deux sources sont proposées sous licence CC BY-SA 4.0 : bpy.types.Scene et bpy.types.Camera. Les exemples de code ont été écrits pour ce guide à partir des noms d’API décrits dans la documentation.

Sources

2 sources
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/api/current/bpy.types.Scene.html
Résumé
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/api/current/bpy.types.Camera.html
Résumé

Les textes sources ne sont pas republiés ; les courtes citations sont signalées, le reste est notre propre résumé et commentaire.

L’avis de 3dsınıfı
3dL’analyse de la rédaction

Gérer les paramètres de caméra et de timing via l’API Blender est un point de départ pratique, en particulier pour les bureaux qui réutilisent la même configuration de scène pour différents livrables. Les extraits de code sont courts et se limitent aux propriétés de la scène ; ils permettent donc de progresser par étapes mesurables avant de mettre en place un système d’automatisation complexe.

Pour les étudiants et les équipes de visualisation en Turquie, le principal point d’attention est de ne pas considérer les valeurs d’exemple comme une recette toute faite. Le guide ne fournit aucune information sur les performances matérielles ni sur le coût des licences ; il faut tester les modifications sur le poste de travail utilisé et examiner séparément les conditions de licence propres aux fichiers de projet.

Questions fréquentes

Comment accéder à la caméra active avec l’API Python de Blender ?

Accédez à la scène active avec `bpy.context.scene`, puis à la caméra active de la scène avec `scene.camera`. S’il n’y a pas de caméra, la valeur de `scene.camera` peut être vide.

Comment modifier la focale d’une caméra dans Blender avec Python ?

Vous pouvez définir la propriété `camera.data.lens` dans le bloc de données de la caméra active. Cette propriété indique la focale de la caméra en perspective en millimètres.

Faut-il utiliser `Scene.use_nodes` dans Blender 5.0 ?

La documentation actuelle de l’API indique que cette propriété est obsolète depuis Blender 5.0 et que sa définition est sans effet. Il est recommandé d’utiliser `scene.render.use_compositing` pour activer ou désactiver la composition.

Les commentaires et le forum sont en turc.Rejoindre la discussion
+

À lire aussi