I'm new to blender and python. I have a blender model (.blend) that I want to batch-render as several images providing some properties for each image.
I wrote a python script with those parameters, something like:
import bpy pi = 3.14159265 fov = 50 scene = bpy.data.scenes["Scene"] # Set render resolution scene.render.resolution_x = 480 scene.render.resolution_y = 359 # Set camera fov in degrees scene.camera.data.angle = fov*(pi/180.0) # Set camera rotation in euler angles scene.camera.rotation_mode = 'XYZ' scene.camera.rotation_euler[0] = 0.0*(pi/180.0) scene.camera.rotation_euler[1] = 0.0*(pi/180.0) scene.camera.rotation_euler[2] = -30.0*(pi/180.0) # Set camera translation scene.camera.location.x = 0.0 scene.camera.location.y = 0.0 scene.camera.location.z = 80.0
So then i run it like
blender -b marker_a4.blend --python "marker_a4.py" -o //out -F JPEG -x 1 -f 1
Then for instance if I try to use arguments to the python script
... import sys ... fov = float(sys.argv[5]) ...
And run it:
blender -b marker_a4.blend --python "marker_a4.py" 80.0 -o //out -F JPEG -x 1 -f 1
The render gets done but i get this messages at start.
read blend: /home/roho/workspace/encuadro/renders/marker/model/marker_a4.blend read blend: /home/roho/workspace/encuadro/renders/marker/model/80.0 Unable to open "/home/roho/workspace/encuadro/renders/marker/model/80.0": No such file or directory. ...
Can anybody tell me whats causing this? I think blender is also parsing that as a model but don't understand why. I later tried something more sofisticated for the argument parsing in python (argparse) but it did not work at all. So i'm thinking there might be something strange happening at this level.
Thanks!