feat: SG-41316: Add Dissolve blend composite mode to stackIPNode with UI controls#940
Conversation
pbergeron-adsk
left a comment
There was a problem hiding this comment.
This looks OK to me, needs to be view tested.
bernie-laberge
left a comment
There was a problem hiding this comment.
Thank you @nigelsumner for this great contribution !
|
Hi @nigelsumner, Thank you for the contribution! Could you fix the pre-commit issue? You might have to run the pre-commit manually on the files you modified. |
Signed-off-by: nigel sumner <nigelsumner@mac.com>
37823ae to
7b2e27a
Compare
|
Hey Cedrik, apologies for the messy commits. I'm still learning my way around the nuances of github. I figured a clean and rebase was the easiest fix. Still so much to learn on this platform. Cheers. |
|
It's ok, no problem! We will be testing your PR soon. Thank you for your contribution! |
|
Hi @nigelsumner ! Nice work on the Dissolve compare feature! It works well, but the addition of this new operation unfortunately cause an issue with the selection of the different options in the "Stack" top-menu of the application. We should make sure to fix this before going forward with the merge. Here is more information about the issue and the steps to reproduce it: Issue Steps to reproduce
---> Notice that once you select "Difference", nothing changes in the "Composite Function" values of the Session Manager. If you then select "Stack / Inverted Difference" option, the "Edit" section in the Session Manager will update to "Difference". The addition of the "Dissolve" option in the Stack menu is creating an issue trying to select the "Difference" option, then it will set an offset when selecting the following options (i.e: Inverted Difference, Replace, Topmost). This will ultimately cause the "Topmost" option now being available anymore for selection. |
|
Hey There, Your description of what is (or isn't) happening is pretty clear, but as i'm not seeing that on my build perhaps you could send a screen grab / recording of the issue. In the meantime i'll start digging in. cheers!
|
|
Hi @nigelsumner , Dissolve-Stack-Issue.movThanks! |
|
Hey @savoiei ! The code that's causing it is from some legacy lines in the Composite_edit_mode.mu, specifically: #OLD code: #Correct code (this should be the checked in version): There was an older check in i had done that hadn't fixed this issue (i hadn't fixed the top menu items, so the old indices were in there). Is it possible you picked up the older one before it got fixed? I'm still not 100% comfortable with everything i'm doing in git, so it's possible the issue is still on my end, but if i look at the checked in code, the fix looks to be there. If you could pull the latest and let me know, that would be great. I'd also be curious if you grepped the Composite_edit_mode.mu which version of the lines above you see. thanks! |
|
Hi @nigelsumner ! |
|
Thank you @nigelsumner ! I did a quick review again since it has been a while, merging it! |
6d1c478
into
AcademySoftwareFoundation:main
Add dissolve blend composite mode with UI controls
This PR implements a new dissolve blend composite mode for OpenRV's stack compositor with full UI integration and real-time controls.
OpenRV_dissolveBlend.mov
Features Added
Dissolve2.glsl) with configurable amountTechnical Implementation
Core Implementation
StackIPNode.cpp: Added dissolve mode support withm_dissolveAmountpropertyStackIPNode.h: Added property declaration for dissolve amount controlShaderCommon.cpp/.h: ImplementednewDissolveBlend()function for GPU shader managementGPU Shaders
Dissolve2.glsl: GLSL shader for hardware-accelerated dissolve blendingUI Integration
composite.ui: AddedQSliderandQLineEditcontrols for dissolve amountComposite_edit_mode.mu: Enhanced with slider integration and UI synchronizationBuild System
CMakeLists.txt: Updated build configuration for dissolve shader compilationTesting
Usage