Tôi mới dùng máy xay sinh tố và python. Tôi có một mô hình máy xay sinh tố (.blend) mà tôi muốn tạo hàng loạt như một số hình ảnh cung cấp một số thuộc tính cho mỗi hình ảnh.Tập lệnh Python với đối số cho dòng lệnh Máy xay sinh tố
Tôi đã viết một kịch bản python với những thông số, một cái gì đó như:
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
Vì vậy, sau đó tôi chạy nó như
blender -b marker_a4.blend --python "marker_a4.py" -o //out -F JPEG -x 1 -f 1
Sau đó, ví dụ nếu tôi cố gắng sử dụng đối số cho kịch bản python
...
import sys
...
fov = float(sys.argv[5])
...
Và chạy nó:
blender -b marker_a4.blend --python "marker_a4.py" 80.0 -o //out -F JPEG -x 1 -f 1
Kết xuất được thực hiện nhưng tôi nhận được thông báo này lúc bắt đầu.
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.
...
Ai có thể cho tôi biết điều gì gây ra điều này? Tôi nghĩ rằng máy xay sinh tố cũng phân tích cú pháp đó như một mô hình nhưng không hiểu tại sao. Sau đó tôi đã thử một cái gì đó tinh vi hơn cho việc phân tích đối số trong python (argparse) nhưng nó không hoạt động chút nào. Vì vậy, tôi nghĩ rằng có thể có một cái gì đó kỳ lạ xảy ra ở cấp độ này.
Cảm ơn!
Xem những câu hỏi tương tự trên trang web stackexchange Máy xay sinh tố của: http: //blender.stackexchange.com/questions/6817 – ideasman42