Closed dafei-qin closed 8 months ago
Hi @dafei-qin,
Thanks for your message, I am glad to hear that BlenderNeRF is integrated into your production pipeline!
It seems to me that the issue might be with calling bpy.ops.render.render
, as you suggested. In the ttc_operator.py
file, I would recommend removing the 'INVOKE_DEFAULT'
argument from the bpy.ops.render.render
function as follows:
bpy.ops.render.render(animation=True, write_still=True)
The 'INVOKE_DEFAULT'
argument enables user interaction with the rendering window, which otherwise is not visible. Without it, the scene is being rendered in the background. This operator might however break or interfere with the for loop in some way.
If this does not solve the issue, I can look into it in more details. If you have a dummy blender file with different shape keys for an object that you want to render, feel free to share it here for me to investigate!
Yes exactly! I remove the INVOKE_DEFAULT
and also some minor modifications of the post_render
function, then it works as expected. Thanks again for the excellent plugin!
Glad it worked!
Thanks for your amazing tools! It really helps and is integrated into my current production pipeline.
Have you tried call
bpy.ops.object.train_test_cameras()
in a Python for loop? Seems that the detection of rendering process has some bug, which makes the for loop functioning bad.For example, in this case I want to create datasets by setting different shape keys:
Only the last dataset in
bs_names
is created, others don't render. It's related to thepost_render
function in thehelper.py
and also the 'INVOKE_DEFAULT' argument of the call tobpy.ops.render.render
.