Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modify how Play Mode parameter works #679

Open
mkruselj opened this issue Feb 27, 2019 · 9 comments
Open

Modify how Play Mode parameter works #679

mkruselj opened this issue Feb 27, 2019 · 9 comments
Labels
Feature Request New feature request Requires Param List Change To accomplish this issue we need to be able to modify the DAW params in all our hosts UI Issues related to UI look&feel UX Issues related to user experience (UX) - mouse, touch, keyboard, MIDI inputs, etc.
Milestone

Comments

@mkruselj
Copy link
Collaborator

mkruselj commented Feb 27, 2019

image

There are multiple monophonic modes for no good reason. ST (single trigger) should actually be a property of envelopes, rather than conflating it to play mode. and FP only relates to portamento (fingered portamento, or portamento only happening when you play legato), so it should be closer to the Portamento slider, rather than here... So ideally this parameter should just have three values: poly, mono, latch, with single trigger actually being calculated per envelope (needs a switch for filter and amp EG added, should just be called Retrigger), and FP should be a Legato button somewhere close to Portamento slider.

Yes, a GUI layout redesign is absolutely necessary to sort this one out. But it will result in a more sensible UX, IMHO.

@baconpaul baconpaul added this to the 1.7 or later milestone Feb 28, 2019
@baconpaul baconpaul modified the milestones: 1.7 or later, Currently Unscheduled Oct 4, 2019
@mkruselj mkruselj added Feature Request New feature request UI Issues related to UI look&feel Experimental Issues related to experimental features that may or may not see the light of day Surge++ and removed Feature Request New feature request labels Feb 5, 2020
@baconpaul baconpaul removed the Surge++ label Feb 14, 2020
@mkruselj mkruselj added Design Required We need to design a solution to this issue UX Issues related to user experience (UX) - mouse, touch, keyboard, MIDI inputs, etc. and removed Experimental Issues related to experimental features that may or may not see the light of day labels Jun 1, 2020
@mkruselj mkruselj added the Requires Param List Change To accomplish this issue we need to be able to modify the DAW params in all our hosts label Jun 18, 2020
@mkruselj mkruselj added the Feature Request New feature request label Nov 9, 2020
@mkruselj mkruselj modified the milestones: Currently Unscheduled, After parameter list expansion Nov 14, 2020
@mkruselj mkruselj modified the milestones: After parameter list expansion, 1.9.0 Dec 6, 2020
@mkruselj
Copy link
Collaborator Author

mkruselj commented Dec 6, 2020

Also a simpler variant would be not having ST a property of envelopes, and then we have Poly/Mono/Legato/Latch (which is far clearer to just about everyone). And FP becomes Legato button next to Portamento slider.

@mkruselj mkruselj modified the milestones: 1.9.0, Surge XT Jan 24, 2021
@mkruselj mkruselj modified the milestones: Surge XT, After parameter list expansion Feb 4, 2021
@mkruselj mkruselj modified the milestones: After parameter list expansion, Surge XT 1.0 Mar 4, 2021
@mkruselj mkruselj added Requires Param List Change To accomplish this issue we need to be able to modify the DAW params in all our hosts and removed Requires Param List Change To accomplish this issue we need to be able to modify the DAW params in all our hosts labels Mar 4, 2021
@mkruselj mkruselj changed the title Modify how Poly mode parameter works Modify how Play Mode parameter works Aug 26, 2021
@Andreya-Autumn
Copy link
Collaborator

I wanna brainbarf a bit ok?. :) I thought a bunch about what would be a really good way to present this, as usual with the intention of keeping things intuitive/simple, but also flexible and powerful. Here’s a suggestion.

Make an option tree with these options: MONO/POLY/PARA/LATCH

In MONO you have:
Retrig <-> Don’t
If retrig: from Zero <->Current
+Current Priority Options (minus “Legacy”?)

In POLY you have:
Voice stack <-> Voice Reuse
Max Voice Count

In PARA you have:
Exactly the same options as mono + max voice count. Set voice-count to 2 for #6333 for example. :)
Voices stack on the same key according to priority, otherwise spread out RR-style across held keys.

In LATCH:
No options needed right?

@Andreya-Autumn
Copy link
Collaborator

Then Portamento should get the options:
Always Glide
Glide overlapping sound only
Glide overlapping MIDI note only
+the ones already in its RMB context.

And about retriggering:

Give every retrigable EG/modulator an (RMB?) option to negatively override retrig
If this defaults to off, this maintains the intuitive/simple workflow where everything obeys the Retrig options under mono (and always retrigs from current in reuse-poly, but still makes it possible to let certain modulators only trigger once.

What do you think of this? :) I expect @mkruselj is gonna go to town on the naming schemes, but otherwise?

@mkruselj
Copy link
Collaborator Author

mkruselj commented Aug 16, 2022

I think it's too complicated with those portamento modes and retrig overrides, sorry. PARA doesn't really "do" paraphonic the way you described it, since you still get multiple voices happening and there's no actual sharing of filter ampabd amp between the voices.

The plan for XT2 is to add another play mode option called Release, which triggers the scene on note off. Glide would get an additional switch which would replace the current FP play modes (or rather, would work in conjunction with the two "new" monophonic modes to result in the old mono FP modes).

So final list of play modes would be: Poly, Mono, Legato (ex single trigger) , Latch, Release.

@Andreya-Autumn
Copy link
Collaborator

Well, the portamento modes is not something I'd be particularly attached to. Just dawned on me today that both behaviors could be useful.

Should have probably clarified that the PARA options would be relevant in the case that we decide there should be an actual paraphonic option, with the filters and other things shared. As in the request I linked. If that happens, I figure it'd need the same behavioral options as mono mode + importantly a max voice count param. That's what I was trying to say really. Whether that should be done can be discussed of course. I'd be for it, but we'll see. ;)

But I disagree about the envelope retrig override. I think it's a sensible way to keep a simple and usable default behavior while still allowing some deeper patch design options.
I've found myself wishing I could do this in the new poly mode a lot, retrigging the AEG and FEG and maybe some but not all LFO's for example. I think others could want it too!

@Lo-lo78
Copy link

Lo-lo78 commented Aug 17, 2022

@Andreya-Autumn
You reminded me of the polyphonic portamento of Roland synths.
In the Roland Juno 106 there was Poly 1 / Rotate and Poly 2 / Reset.
Poly 1 behaves like Surge. Portamento is always there for all polyphony and the envelope is never reset. The notes overlap.
While poly 2 is very interesting. If you play a 3-note chord on a 6-note polyphony, the next 3-note chord resets the previous 3 notes.
Basically with poly 2 you can make chords with the portamento without the release overlapping the previous notes.
Wow! If there was poly 2 of Roland Surge synths it will be my favorite virtual synth.
Not a bad idea!

@mkruselj
Copy link
Collaborator Author

mkruselj commented Aug 17, 2022

We have a voice reuse mode already, added that in the latest version of Surge. Right click the Play Mode and you will have an option to reuse voices in Poly mode.

It's not the same as Poly 2 mode in Rolands regarding portamento behavior. That one is quite tricky. (But also you can just use TAL U-NO and J-8 which emulate those modes perfectly, and are more fitting if you're looking for Roland like sounds anyways).

@Lo-lo78
Copy link

Lo-lo78 commented Aug 17, 2022

@mkruselj
I've tried everything about portamento with polyphony but there is no Roland poly 2 functionality.
The release overlaps with subsequent notes. The poly 2 of the Juno 106 Roland blocks the release for new notes.
Obvious. If you play 3 notes first and then 2 notes one will be free to play with its release.
On the other hand, if you play 2 notes with a long release, the next two notes disable the release. The result is a polyphonic portamento like the monophonic one.

@mkruselj
Copy link
Collaborator Author

I did say "it's not the same as Poly 2 mode"! It's better to use the aforementioned TAL synths if you want that feature.

@mkruselj mkruselj removed the Design Required We need to design a solution to this issue label Nov 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Request New feature request Requires Param List Change To accomplish this issue we need to be able to modify the DAW params in all our hosts UI Issues related to UI look&feel UX Issues related to user experience (UX) - mouse, touch, keyboard, MIDI inputs, etc.
Projects
None yet
Development

No branches or pull requests

4 participants