p2or / blender-loom

image sequence rendering, encoding and playback
175 stars 10 forks source link

Rendering multiple scenes with different active cameras and resolutions #87

Closed beyond9thousand closed 4 months ago

beyond9thousand commented 4 months ago

Is there a way to do this even natively? If so, does loom have a way to achieve this?

p2or commented 4 months ago

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:

Screenshot 2024-03-12 at 09 40 59



Should only take a few seconds to set up, depending on the project. Does this help and answer your question?

Cheers, Christian

beyond9thousand commented 4 months ago

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

p2or commented 4 months ago

Hi @beyond9thousand,

as mentioned, the 'snapshot' operator should do in any case, just give it a whirl.

Cheers, Christian

beyond9thousand commented 4 months ago

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: Was fiddling with the information available online and it seems that you can technically loop through all scenes in a blend file using python, thereby achieving the exact result i am referring to. could this functionality be added to loom as an option?

p2or commented 4 months ago

Hi @beyond9thousand,

I have Scene1 and Scene2, how would I make this work exactly?

  1. Select Scene1
  2. Open up the 'Batch dialog' and hit Add Snapshot
  3. Select Scene2
  4. Open up the 'Batch dialog' and hit Add Snapshot ...

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 .blend or create a dedicated .blend for rendering, open up the Batch dialog add the files within the temp folder to the list and render.

seems that you can technically loop through all scenes in a blend file using python

Here you go: for scene in D.scenes: print(scene.name) but I don't see how that could help unless we loop through all the scenes and take snapshots with just one click ;)

could this functionality be added to loom as an option?

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, Christian