Flip the Render #48117

Open
opened 2016-04-12 02:42:31 +02:00 by Andrew Price · 25 comments

I proposed this idea to Campbell via email and he said it sounded reasonable enough to add here...

The idea: In the image editor, when the Rendered Result is displayed, pressing F will flip the render horizontally. This is a common action that many digital painters use in Photoshop to refresh their eyes and see new flaws in their work.

Some notes:

  • It will should only work in the Rendered Result, not on regular images
  • All tools that normally work in Rendered Result, should work here as well. (rendered border, sampling image color, painting)
  • Only Flip X. I've tried Flipping Y before, but I haven't found it to be that helpful in the artistic process. Could be added later though if people want it?
  • Should apply the Flip state to all Slots. Eg. If flipped in Slot 1, when you change to slot 2 it will also be flipped. If you turn Flip off in Slot 2, it will also be off in Slot 1 and all slots.
  • To remove the potential confusion for users who flipped it by accidentally pressing F but don't know the hotkey, a new button should display in the toolbar. Here: new button location.png
I proposed this idea to Campbell via email and he said it sounded reasonable enough to add here... The idea: In the image editor, when the Rendered Result is displayed, pressing F will flip the render horizontally. This is a common action that many digital painters use in Photoshop to refresh their eyes and see new flaws in their work. Some notes: - It will should only work in the Rendered Result, not on regular images - All tools that normally work in Rendered Result, should work here as well. (rendered border, sampling image color, painting) - Only Flip X. I've tried Flipping Y before, but I haven't found it to be that helpful in the artistic process. Could be added later though if people want it? - Should apply the Flip state to all Slots. Eg. If flipped in Slot 1, when you change to slot 2 it will also be flipped. If you turn Flip off in Slot 2, it will also be off in Slot 1 and all slots. - To remove the potential confusion for users who flipped it by accidentally pressing F but don't know the hotkey, a new button should display in the toolbar. Here: ![new button location.png](https://archive.blender.org/developer/F302306/new_button_location.png)
Author

Changed status to: 'Open'

Changed status to: 'Open'
Author

Added subscriber: @AndrewPrice

Added subscriber: @AndrewPrice

Added subscriber: @ideasman42

Added subscriber: @ideasman42

Own notes on this feature:

  • Would be good to have some feedback from other artists (is this useful for guys in the blender institute for eg?)
  • What other space types might this apply to (Sequencer, Movie Clip Editor?).
  • Even with the button in the header, I suspect users will accidentally press this and not notice the button is pressed (We had quite a few reports from users who accidentally enabled Manipulate Center Points option), also the header is already quite full.
Own notes on this feature: - Would be good to have some feedback from other artists (is this useful for guys in the blender institute for eg?) - What other space types might this apply to (Sequencer, Movie Clip Editor?). - Even with the button in the header, I suspect users will accidentally press this and not notice the button is pressed *(We had quite a few reports from users who accidentally enabled **Manipulate Center Points** option)*, also the header is already quite full.
Author

Thanks Campbell.

  • Don't know about Blender Institute, but I know that Gleb Alexandrov already does flipping for his renders. He clips the camera with Ctrl+M, X then re-renders. But agreed would be nicer if it did this in the Image editor so you don't need to re-render.
  • Other spaces: Hadn't thought about this. I don't use the Sequencer or Movie Clip editor myself, so somebody else will have to weigh in.
  • Header button: I suspect users could still accidentally hit it and not see the button, but I can't think of a more obvious solution that doesn't introduce more problems. I think a button is better than zero feedback at all though right?
Thanks Campbell. - Don't know about Blender Institute, but I know that Gleb Alexandrov already does flipping for his renders. He clips the camera with Ctrl+M, X then re-renders. But agreed would be nicer if it did this in the Image editor so you don't need to re-render. - Other spaces: Hadn't thought about this. I don't use the Sequencer or Movie Clip editor myself, so somebody else will have to weigh in. - Header button: I suspect users could still accidentally hit it and not see the button, but I can't think of a more obvious solution that doesn't introduce more problems. I think a button is better than zero feedback at all though right?

Added subscriber: @davidmcsween

Added subscriber: @davidmcsween

Flip X,Y in Movie Clip editor would be useful for handling footage shot inverted (upside mounted camera). Sometimes features you are tracking are hard to make out when upside down.
All other areas that Movie Clip appears you can flip it to check (Compositor and VSE) except the MCE.

VSE quick flip of total image would be nice for testing composition but of course you can flip elements (strips) there already, just not globally (total output).

If the flip is available to the UV/Image Viewer then the compositor output and viewer node could already do it.

Flip X,Y in Movie Clip editor would be useful for handling footage shot inverted (upside mounted camera). Sometimes features you are tracking are hard to make out when upside down. All other areas that Movie Clip appears you can flip it to check (Compositor and VSE) except the MCE. VSE quick flip of total image would be nice for testing composition but of course you can flip elements (strips) there already, just not globally (total output). If the flip is available to the UV/Image Viewer then the compositor output and viewer node could already do it.
Member

Added subscriber: @Blendify

Added subscriber: @Blendify

Added subscriber: @RayMairlot

Added subscriber: @RayMairlot
Member
  1. I think it is a good addition if applied correctly
  2. There is already an option to set this per strip In the sequencer.
  3. I think I would be fine to place the this in the properties region or under the view menu.
1. I think it is a good addition if applied correctly 2. There is already an option to set this per strip In the sequencer. 3. I think I would be fine to place the this in the properties region or under the view menu.

I believe that the suggestion is to create an artist aid, as such a per strip flip is not ideal. The current implementation allows you to 'render' the flip as a composition or effect. You absolutely don't want that to accidentally happen to your media (by leaving the flip view active). Sometimes you want to see or read media or image on its side, perhaps a 90 degree rotate view should be included?

  1. flip only affects display
  2. flip should not be rendered out
  3. flip should affect X and Y axis
  4. should include a 90 deg and 270 deg rotations
I believe that the suggestion is to create an artist aid, as such a per strip flip is not ideal. The current implementation allows you to 'render' the flip as a composition or effect. You absolutely don't want that to accidentally happen to your media (by leaving the flip view active). Sometimes you want to see or read media or image on its side, perhaps a 90 degree rotate view should be included? 1. flip only affects display 2. flip should not be rendered out 3. flip should affect X and Y axis 4. should include a 90 deg and 270 deg rotations

To brainstorm a bit... theres no reason this state necessarily needs to be stored on disk, it could be a temporary state which is active only while the keys held, and de-activated on release.
To avoid having to implement this for every view, we could flip the entire window contents, that means you get animation playback, sequencer ... etc all views... for free.

This would be a temporary state you would activate, blender would keep running - you could view the contents and exit on release... pressing escape... whatever.
If flipping the entire window may be too distracting, it could be done for the active region's contents. (just the main view, not the toolbars or header).

There are good reasons not to do this (am not suggesting we should), nevertheless good to consider some different options :)

Note: If you're on Linux you can flip the monitor using xrandr , this could be tested as an addon quite easily to see if the functionality is useful.

(Would be good to get some feedback from UI team here).

To brainstorm a bit... theres no reason this state necessarily needs to be stored on disk, it could be a temporary state which is active only while the keys held, and de-activated on release. To avoid having to implement this for every view, we could flip the entire window contents, that means you get animation playback, sequencer ... etc all views... for free. This would be a temporary state you would activate, blender would keep running - you could view the contents and exit on release... pressing escape... whatever. If flipping the entire window may be too distracting, it could be done for the active region's contents. (just the main view, not the toolbars or header). There are good reasons not to do this (am not suggesting we _should_), nevertheless good to consider some different options :) Note: If you're on Linux you can flip the monitor [using xrandr ](http://askubuntu.com/questions/19936/how-can-i-mirror-flip-display-output), this could be tested as an addon quite easily to see if the functionality is useful. (Would be good to get some feedback from UI team here).

Added subscriber: @PawelLyczkowski-1

Added subscriber: @PawelLyczkowski-1

The Editor is called Image Editor, and we already have some rudimentary image editing commands in it (color inverting). I would see no harm in adding Flip Horizontal and Flip Vertical next to it (can have the F shortcut still) that work like a real image editing command. This would be helpful not only for render previewing then, but for general use as well.

I don't think full window flipping is needed or a good practice.

The Editor is called Image Editor, and we already have some rudimentary image editing commands in it (color inverting). I would see no harm in adding Flip Horizontal and Flip Vertical next to it (can have the F shortcut still) that work like a real image editing command. This would be helpful not only for render previewing then, but for general use as well. I don't think full window flipping is needed or a good practice.

@PawelLyczkowski-1, We could add various image editing options (flip, rotate scale... etc), but think its not ideal for viewing.

  • If you want to quickly compare different renders (JKey)... you need to flip each one.
  • If you want to save the render, you'll have to un-flip too (or not, maybe its handy to save flipped... but not convinced of this).

Having said that... if we do support flipping the image data, maybe its good enough, even if not ideal for using as a preview.
@AndrewPrice, what do you think?

@PawelLyczkowski-1, We could add various image editing options (flip, rotate scale... etc), but think its not ideal for viewing. - If you want to quickly compare different renders (JKey)... you need to flip each one. - If you want to save the render, you'll have to un-flip too (or not, maybe its handy to save flipped... but not convinced of this). Having said that... if we do support flipping the image data, maybe its *good enough*, even if not *ideal* for using as a preview. @AndrewPrice, what do you think?
Member

If a user wants to save a render flipped they can do that in the compositor.

For the ideas of placing an icon in the header, I think I would be better to add the image in the properties tab:

Capture.PNG

If a user wants to save a render flipped they can do that in the compositor. For the ideas of placing an icon in the header, I think I would be better to add the image in the properties tab: ![Capture.PNG](https://archive.blender.org/developer/F303435/Capture.PNG)

In #48117#369821, @Blendify wrote:
For the ideas of placing an icon in the header, I think I would be better to add the image in the properties tab

I could live with that.

> In #48117#369821, @Blendify wrote: > For the ideas of placing an icon in the header, I think I would be better to add the image in the properties tab I could live with that.

This patch adds flipping to the display panel (on the right hand side of the aspect ratio), P349.

Though its pretty much a hack, it does work for rendering, grease pencil, sample line and even painting...
However, I rather limit the use-cases we have to support here, so this could be modified only to work for rendered images.

This patch adds flipping to the display panel (on the right hand side of the aspect ratio), [P349](https://archive.blender.org/developer/P349.txt). Though its pretty much a hack, it does work for rendering, grease pencil, sample line and even painting... However, I rather limit the use-cases we have to support here, so this could be modified only to work for rendered images.

Added subscriber: @CraigJones

Added subscriber: @CraigJones

Interesting. As a painter, I have helped make a small addon with some macros I use for flipping an image plane when painting in the 3d view since the image Editor had not supported this (yet). I use the flip x for seeing problems with my painting and the forms, but even more so I use the flip y for comparing to my source image also flipped y to catch problems with negative space and eliminating errors when thinking 'eye', 'nose', or other feature and working from knowledge instead of observation.

This does spark my interest, and is useful if also possible for paint mode, I suppose without Edit mode since UV would possibly misalign. If only for rendered images, maybe later i can dig in and hack more with python.

Interesting. As a painter, I have helped make a small addon with some macros I use for flipping an image plane when painting in the 3d view since the image Editor had not supported this (yet). I use the flip x for seeing problems with my painting and the forms, but even more so I use the flip y for comparing to my source image also flipped y to catch problems with negative space and eliminating errors when thinking 'eye', 'nose', or other feature and working from knowledge instead of observation. This does spark my interest, and is useful if also possible for paint mode, I suppose without Edit mode since UV would possibly misalign. If only for rendered images, maybe later i can dig in and hack more with python.
Author

Oh man just saw this! I guess I didn't have email notifications turned on. Sorry for missing all these comments!

@ideasman42 that's awesome!
I just downloaded the latest build (b72aef9) but I couldn't find it. Tried pressing F and looking in properties and toolbar but couldn't see anything. I tried reading your code, but (not surprisingly) I couldn't follow it sorry :P What am I doing wrong?

Regarding your questions:
If you want to save the render, you'll have to un-flip too (or not, maybe its handy to save flipped... but not convinced of this).
Maybe only testing will tell, but I think saving it as unflipped regardless of state makes the most sense to me.

Also I'd agree with Pawel that flipping the whole window wouldn't be desirable, because you want to keep your eyes in one spot and flip back and forth to see the difference. Flipping the whole window would be jarring and a little confusing. But I think you hinted at that anyway.

Oh man just saw this! I guess I didn't have email notifications turned on. Sorry for missing all these comments! @ideasman42 that's awesome! I just downloaded the latest build (b72aef9) but I couldn't find it. Tried pressing F and looking in properties and toolbar but couldn't see anything. I tried reading your code, but (not surprisingly) I couldn't follow it sorry :P What am I doing wrong? Regarding your questions: *If you want to save the render, you'll have to un-flip too (or not, maybe its handy to save flipped... but not convinced of this).* Maybe only testing will tell, but I think saving it as unflipped regardless of state makes the most sense to me. Also I'd agree with Pawel that flipping the whole window wouldn't be desirable, because you want to keep your eyes in one spot and flip back and forth to see the difference. Flipping the whole window would be jarring and a little confusing. But I think you hinted at that anyway.

Added subscriber: @candreacchio

Added subscriber: @candreacchio

@AndrewPrice you need to apply the patch before compiling blender, it is not part of the main blender code yet.

@AndrewPrice you need to apply the patch before compiling blender, it is not part of the main blender code yet.

Added subscriber: @ChristopherAnderssarian

Added subscriber: @ChristopherAnderssarian

Removed subscriber: @RayMairlot

Removed subscriber: @RayMairlot
Philipp Oeser removed the
Interest
User Interface
label 2023-02-10 09:26:27 +01:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
9 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#48117
No description provided.