Problem with Parameter Expression
-
- KVRist
- 301 posts since 19 Jul, 2016
I'm trying to control the Mode value of 2 Phaser modules in MXXX1 with a Multiparameter. It works great.
But, I want the Mode of Phaser 2 to be "2 units" less than the Mode of Phaser 1. So, e.g., if The MP is set to 22 (it goes by the value of Phaser 1), Phaser 1 will have a Mode of 22, and Phaser 2 will have a Mode of 20.
I thought I could accomplish this by using a Parameter Expression. So, for the Parameter Expression of Phaser 2-Mode, I have typed "x-2" (no quotes). Now, when I move the MP, the mode of Phaser 1 changes correctly, but Phaser 2 jumps to a value of 1 and stays there no matter what. In fact, for any integer value, that's what happens. If I use "x+2" the Mode of Phaser 2 jumps to 100 and stays there. (I also tried with "p1-2")
If I type the expression "x-.1", or any other decimal value, the Mode of Phaser 2 tracks the value of Phaser 1 as if there was no Parameter Expression.
Do I not understand the use of Parameter Expressions? Or can someone help me out? I am attaching a screenshot of the MP window. Thanks!
But, I want the Mode of Phaser 2 to be "2 units" less than the Mode of Phaser 1. So, e.g., if The MP is set to 22 (it goes by the value of Phaser 1), Phaser 1 will have a Mode of 22, and Phaser 2 will have a Mode of 20.
I thought I could accomplish this by using a Parameter Expression. So, for the Parameter Expression of Phaser 2-Mode, I have typed "x-2" (no quotes). Now, when I move the MP, the mode of Phaser 1 changes correctly, but Phaser 2 jumps to a value of 1 and stays there no matter what. In fact, for any integer value, that's what happens. If I use "x+2" the Mode of Phaser 2 jumps to 100 and stays there. (I also tried with "p1-2")
If I type the expression "x-.1", or any other decimal value, the Mode of Phaser 2 tracks the value of Phaser 1 as if there was no Parameter Expression.
Do I not understand the use of Parameter Expressions? Or can someone help me out? I am attaching a screenshot of the MP window. Thanks!
You do not have the required permissions to view the files attached to this post.
-
- KVRAF
- 10367 posts since 2 Sep, 2003 from Surrey, UK
Just a complete guess: maybe the increment/decrement has to be in the range -1.00 to 1.00, not based on the parameter's displayed value.
- KVRAF
- 2696 posts since 9 Jul, 2015 from UK
There is a much easier solution.
Set Phaser 1 with a range of 2-100 and Phaser 2 with a range of 0-98.
Or use banks, where you can set exactly the values of each on a per-step basis.
Set Phaser 1 with a range of 2-100 and Phaser 2 with a range of 0-98.
Or use banks, where you can set exactly the values of each on a per-step basis.
Jason @ Melda Production
-
- KVRist
- 382 posts since 9 Dec, 2014
You don´t need an expression for that. Here I present you 2 methods:tonycore wrote: Thu Aug 17, 2023 7:26 pm I'm trying to control the Mode value of 2 Phaser modules in MXXX1 with a Multiparameter. It works great.
But, I want the Mode of Phaser 2 to be "2 units" less than the Mode of Phaser 1. So, e.g., if The MP is set to 22 (it goes by the value of Phaser 1), Phaser 1 will have a Mode of 22, and Phaser 2 will have a Mode of 20.
I thought I could accomplish this by using a Parameter Expression. So, for the Parameter Expression of Phaser 2-Mode, I have typed "x-2" (no quotes). Now, when I move the MP, the mode of Phaser 1 changes correctly, but Phaser 2 jumps to a value of 1 and stays there no matter what. In fact, for any integer value, that's what happens. If I use "x+2" the Mode of Phaser 2 jumps to 100 and stays there. (I also tried with "p1-2")
If I type the expression "x-.1", or any other decimal value, the Mode of Phaser 2 tracks the value of Phaser 1 as if there was no Parameter Expression.
Do I not understand the use of Parameter Expressions? Or can someone help me out? I am attaching a screenshot of the MP window. Thanks!
Method 1:
Set Phaser 2 Mode range from 1 to 98.
Set Phaser 1 Mode range from 3 to 100.
Method 2 (expression):
Set Phaser 1 & 2 range from 1 to 100.
Set Phaser 1 Parameter expression to: x+(2*(1/99))
Code: Select all
Why x+(2*(1/99)):
X is Multiparameter value from 0 to 1.
(1/99) is the amount each mode values takes from the total (total = 1) (it goes from 1 to 100 so 99 values in total).
2 is because you need the amount of 2 values to be added.-
- KVRAF
- 10367 posts since 2 Sep, 2003 from Surrey, UK
^^^^
DarkStar wrote: Fri Aug 18, 2023 10:28 am Just a complete guess: maybe the increment/decrement has to be in the range -1.00 to 1.00, not based on the parameter's displayed value.
-
- KVRist
- 382 posts since 9 Dec, 2014
You have the answer in my previous post (expression method). You are using x incorrectlytonycore wrote: Fri Aug 18, 2023 12:33 pm Great solutions, thank you all. However, I'm still curious a why my original expression doesn't work...
-
- KVRist
- Topic Starter
- 301 posts since 19 Jul, 2016
Ah, yes...the ol' parameter value goes from 0 to 1 trick...I should be used to that from Gig Performer! Thanks again and apologies for not reading the note more closely.
