[Bf-python] Modified RenderEngine API Proposal

Brecht Van Lommel brechtvanlommel at pandora.be
Wed May 11 18:13:44 CEST 2011


Hi,

On Wed, May 11, 2011 at 3:12 PM, Doug Hammond
<doug.hammond at luxrender.net> wrote:
> 1.
> At times it would have been good to know in the RenderEngine instance
> whether the render.render() operator was called with animation=True or =False.
> I hear what you say about the fact it shouldn't make any difference, however
> under certain circumstances (for "offline" batch exporting etc) it would
> be useful to have access to this boolean value.

Passing on if the render is part of an animation is no problem (adding
e.g. self.is_animation_render). Would that be sufficient? Not sure
what kind of batch export you are talking about here, maybe that
should be an operator instead?

> 2.
> I agree with Matt's opinion of the existing preview.blend preview scene
> data. The built-in scene is entirely unsuitable for LuxRender, IMO it might
> be more efficient to not bother loading/passing it at all and let the
> external engines provide their own data from scratch.
> There's also the issue of passing in other settings and data from the
> current scene into the preview. Our users' top request is to be able to
> adjust the scale of the preview scene to match the size of the objects
> they want to apply to material/texture to, since in physically-based
> rendering the scale of the object is important for many properties
> of the material.

Sometimes there is an associated object, and sometimes there isn't.
Passing in context is a bit problematic, as the preview runs in
another thread detached from the user interface, and e.g. previews
aren't actually related to any scene in particular when doing
link/append. Not sure yet how to deal with this.

> Another thing would be to provide custom preview types, eg. the
> 'strand' preview is not relevant to LuxRender, and we might also want
> to switch the Monkey type to the LuxBall type, for example.

Doing totally custom preview scenes would be possible, just add a
property for the preview type and ignore the scene blender gives you.
So question is then, is this something we should then just leave to
render engine entirely, and have Blender only pass on the datablock?
Or should we improve the builtin preview scenes?

> 4.
> Rendering progress bar. Can update_stats() provide a way to update the
> progress bar in the info header too?

Ok, that shouldn't be too hard.

Thanks,
Brecht.



More information about the Bf-python mailing list