Rendering multiple scenes with different active cameras and resolutions #88
Replies: 14 comments 4 replies
-
Hi @beyond9thousand, As of the current state, we can override the render settings including the 'camera' and 'resolution' property in the regular as well as the batch dialog, see the presets option. In order to render different scenes, you can either use the Blender's compositor or the batch dialog which provides a 'snapshot feature' that allows to create a (temporary) snapshot of the current blend file which automatically gets added to the queue: Should only take a few seconds to set up, depending on the project. Does this help and answer your question? Cheers, |
Beta Was this translation helpful? Give feedback.
-
Blender's compositor only lets me decide the scene, but its specific properties like the resolution are not respected. The active scene always seems to take precedence |
Beta Was this translation helpful? Give feedback.
-
Hi @beyond9thousand, as mentioned, the 'snapshot' operator should do in any case, just give it a whirl. Cheers, |
Beta Was this translation helpful? Give feedback.
-
I have Scene1 and Scene2, how would I make this work exactly? I need to save the file with a Scene selected and then the add the snapshot I believe. But then how am I supposed to render the same file with the other Scene? Sorry but I am a little lost since the dialog box disappears if i click away to save the file with a different scene as currently active Edit: |
Beta Was this translation helpful? Give feedback.
-
Hi @beyond9thousand,
All snapshots end up in a new folder called 'temp' (can be customized in the preferences). To render everything, either add a new scene to the existing
Here you go: import bpy
context = bpy.context
current_scene = context.window.scene
for scene in bpy.data.scenes:
''' Assemble the filename '''
filename = file_name="{}_{}".format(
bpy.path.basename(bpy.data.filepath[:-6]),
scene.name)
''' Switch the scene and call the operator '''
context.window.scene = scene
bpy.ops.loom.batch_snapshot(file_name=filename)
context.window.scene = current_scene
Sure, a more direct way to override the camera, layer or scene per render execution should be straight forward to implement but I have no idea how to add that properties within the 'Batch dialog' without destroying the current logic. If you have an idea or mockup for the UI, please let me know and let's discuss about why this is worth to implement in the first place. Cheers, |
Beta Was this translation helpful? Give feedback.
-
The issue with the snapshot method as it turns out, is that the filepath for the output set in compositor gets messed up. This is because (personally) its more convenient and foolproof to set a relative file path This is especially true when I am working with a team or rendering parts of the same file from different machines as this happens to also be the most powerful way to use your addon in Blender. Since the snapshot function creates another directory in the current directory (tmp), it creates an output in a lower level down the tree. As for the functionality being added into the batch dialog, I think we can have a small button that can toggle on rendering for each scene (all Scenes in the given blend file get rendered, as opposed to the active scene only). Its default behavior would be to only render the active scene in the saved file. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Hi @beyond9thousand, got it, thanks. I think you will agree that rendering for 3 outdoor screens simultaneous is a bit special right? In general, it would be nice to make this add-on useful to everyone and in this regard I still see no advantage in adding a button to render all scenes one after the other. Beeing able to override the scene or the camera per item in the queue is an old request but Blender's UI is visually very limited when it comes to lists and looks crappy without a good idea which is my actual problem in this matter... Are you with me? Nonetheless, I've already tried a lot e.g.: Screen.Recording.2024-07-10.at.23.21.50-2.movThe best thing so far is to display the properties on demand and add an option to duplicate queue elements: Screen.Recording.2024-07-10.at.23.17.24-2.movIf you'd like to help, you can download the latest changes, test it and report back. It works technically, but I'm still not completely satisfied with the interface though. If you have a better idea, let me know. Cheers, |
Beta Was this translation helpful? Give feedback.
-
This is splendid for the time being to be honest. Give me a few more days and I will let my team members give their own feedback on this as well. |
Beta Was this translation helpful? Give feedback.
-
On that note, any idea what this could be? One of the scenes in my file keeps triggering this issue with loom
|
Beta Was this translation helpful? Give feedback.
-
Hi @beyond9thousand, I guess that the original file was created in a very old version of Blender (< 2.65) or it has been saved incorrectly. You can either (1) disable the 'Sequencer' property under Output > Post Processing or (2) temporarily add a new strip of any type to the sequencer and then delete it immediately. If this happens frequently, we can add a test to Loom for such cases... Fixed file for Blender 3.6 LTS: HSBC_UV_Unwrap_Blender3.6_v2.blend.zip Cheers, |
Beta Was this translation helpful? Give feedback.
-
It was created in 4.0.2 I disabled sequencer properties and it worked, but not sure why I don't run into the same problem with the other scene (Perspective) |
Beta Was this translation helpful? Give feedback.
-
Do you think we can push it as an official release for the scene selector version or do you still have some reservations on it? |
Beta Was this translation helpful? Give feedback.
-
Hi @beyond9thousand,
why this is a thing for you right now?
In general, I'd like to work on a real project with it before merging the branch to be on the safe side. Apart from that, I am still looking for a reliable way to exclude cameras that are not part of the selected scene and would like to add an option to the snapshot function to include all available scenes of the current file to the queue, but can live without it. I'm also still waiting for your promised feedback. How does it feel with the new features? Cheers, |
Beta Was this translation helpful? Give feedback.
-
Is there a way to do this even natively? If so, does loom have a way to achieve this?
Beta Was this translation helpful? Give feedback.
All reactions