Skip to content

Comments

feat: rework mixer transforms#1598

Merged
Julusian merged 3 commits intomasterfrom
feat/matrix-transforms4
Mar 28, 2025
Merged

feat: rework mixer transforms#1598
Julusian merged 3 commits intomasterfrom
feat/matrix-transforms4

Conversation

@Julusian
Copy link
Member

@Julusian Julusian commented Feb 3, 2025

This adds a fair amount of complexity in calculations, but it allows for routes to preserve transforms which got broken when changing the route behaviour in 2.2. closes #1307 #1274
This finishes the work started years ago in 777b7f2

Unless anyone has any objections, I shall aim to merge this to 2.5 soon.
I still need to reenable/reimplement the scale_modes, but this is otherwise looking functional and pretty complete.

This is a slightly breaking change, as the way that crops compound now is slightly different. This should only affect routing one channel into another, where the crop values to be used on that routed frame are relative to the viewport and not the content. (This does sound wrong, could that change?) And also when routing a channel, the clip values for each layer are now respected correctly and may need to be set over amcp to avoid clipping the routed frame. While annoying, this is how it behaved before 2.2, so is consistent with behaviour when routes preserved transforms.
The other simple 'fix' for avoiding unexpected clips is to not scale beyond the channel bounds of the source channel, likely using a custom resolution channel to do so.

The one bit of this change that I do not like is the enable_geometry_modifiers property, but that became necessary to avoid cropping on intermediary frames with no way to control it. The other option I can see is to entirely change how we do cropping, but that is a much larger and more breaking change

@Julusian Julusian marked this pull request as ready for review March 25, 2025 12:28
@Julusian Julusian force-pushed the feat/matrix-transforms4 branch from 69d1582 to 42b902e Compare March 25, 2025 12:36
This finishes the work started years ago in 777b7f2
It adds a fair amount of complexity, but it allows for routes to preserve transforms which got broken when changing the route behaviour in 2.2
@Julusian Julusian force-pushed the feat/matrix-transforms4 branch from 42b902e to e9d3d67 Compare March 25, 2025 13:00
@Julusian Julusian merged commit 8f989d6 into master Mar 28, 2025
8 checks passed
@Julusian Julusian deleted the feat/matrix-transforms4 branch March 28, 2025 16:45
jpc0 pushed a commit to jpc0/server that referenced this pull request Jun 27, 2025
This finishes the work started years ago in 777b7f2
It adds a fair amount of complexity, but it allows for routes to preserve transforms which got broken when changing the route behaviour in 2.2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Mixer perspective on routed layer

1 participant