[Bf-committers] Re: Displaying render result in Image Editor
matt at mke3.net
Tue Jun 13 06:21:47 CEST 2006
This is great, thanks! I've been wondering if you were going to do it
I'd love to be using it, but in my brief testing (yeah, not much time
for user testing a week or so before freeze, cough cough :) I found a
few nasty workflow problems with the behaviour of over-writing Image
Editor content though, especially using it in conjunction with UV
mapping. The main problem is that it's really bad for the render
result to overwrite something that I'm working on in the image
editor, and it makes this feature unusable for me in these situations:
* If you're not in UV face select mode at the time, but still have an
image editor open, as you're working on a texture, just doing a test
render will take over the texture that you're looking at (and
possibly compare with the render).
* If you're using the compositor and have a 'Compositor' open in the
Image Editor to view the output of your viewer nodes, doing a re-
render (for example to update the layers after a change in the 3D
geometry or lighting) will over-write your compositor viewer with the
raw render result, which is most likely something that you don't care
about looking at, at that stage.
* If the Image Editor is zoomed out very far (eg. working on a large
texture) the render result will also be zoomed out very far, which is
not very useful, and annoying if you have to constantly zoom in and
out all the time.
* This is something probably more like a bug, but if you're in UV
face select mode adjusting a UV layout, and render, the render will
appear over the UV layout+image that you are working on, as it
renders, then it disappears when the render has finished
In all of these cases, to get back to what you were trying to do
beforehand requires you to go and hunt in the image datablock menu,
which is very time consuming, disruptive and *annoying*. At the very
least, one should be able to press ESC to return to whatever was
shown in the Image Editor before the render result took over.
A situation that I would like would be that I have a Screen setup
that contains an image window showing Render Result. When I press
F12, the active screen automatically changes to that separate screen,
then when the render is finished, I can press ESC to return to my
previous Screen layout. Even better of course is if this was done in
a non-blocking way, so I can keep working and navigating the Blender
interface, but I guess that is a bit far off :)
Some other issues with this feature:
* The status line containing render statistics should not be drawn in
the same colour as the Image Editor's background. It can be very
misleading and can make the image shown look smaller than it actually
is. See here:
* This has the potential to be a great replacement for the 'J key'
buffers, and it comes close, but doesn't succeed. The main drawback
to the J key system is that it forces you to decide *before* you do
the render, if the image is going to be significant to store in a
separate buffer for reference. This is backwards, since you won't
know if the image is going to be one you really want to keep until
after it's been rendered and you can actually see it!
Rendering to the image editor could be a great improvement on this,
if only there was a way to save the currently displayed render result
to a Blender image block in memory for future reference, which there
unfortunately isn't :( It would be great if there was something like
a [ 0 ] users button next to the Render Result name, that functioned
like a normal std_libbuttons 'make a single user copy'. Then it would
be great, you could keep two image editors open simultaneously to
compare two different versions.
On 13/06/2006, at 00:39 AM, Ton Roosendaal wrote:
> The flow, when invoking a Render, goes as follows:
> - first it checks if there's an Image Editor visible displaying
> the "Render
> Result", if so then it uses that area-window.
> (Use this option for dual-monitor setups for example, a render
> will always
> go to the same location then)
> - else it checks if there's an Image Editor open in general, it then
> assigns that window the "Render Result" Image.
> - else: it searches for the largest Area in the screen, and turns
> that into
> a temporal Image Editor showing render output.
More information about the Bf-committers