Hello,
I created a YouTube video demonstrating this issue: https://www.youtube.com/watch?v=wCWwsXjGcUc
Basically, it appears that when using an EFX in Relative mode, and a Function which has the Fine Tilt and Fine Pan parameters set to anywhere except 128, the EFX's movement is choppy due to the Fine Tilt and Fine Pan parameters being incorrectly constrained.
To reproduce the issue, set up a function for a moving head light with Coarse Pan and Coarse Tilt set as you like, but with Fine Pan and Fine Tilt both set to 0. Then, create a circular EFX in Relative mode scaled quite small (say, 16 X and Y) and set to a high Delay to move quite slowly. Observe the Simple Desk and you will see the Fine Pan and Fine Tilt only move within the range of 0-127.
To confirm, change the Function which defines the basic position of the fixture so that it includes Fine Pan and Fine Tilt = 255. Turn off/on this function, and turn on the EFX. Observe the Simple Desk - Fine Pan and Fine Tilt will again be improperly constrained, but this time within the range of 128-255.
Thanks!
Matt
EFX Fine Tilt/Pan Issue as seen in Simple Desk
-
- Posts: 1325
- Joined: Mon Apr 13, 2015 7:05 am
- Location: Bratislava, Slovakia
- Real Name: Jano Svitok
- Contact:
Indeed. The problem is that QLC+ does not support 16 bit channels (yet?). Since EFX sets both channels separately, it does not know where the overflow/underflow should go.
In fact, I was almost sure that I disabled the fine channels completely when EFX is in relative mode. Actually I didn't.
This problem may be temporarily improved by adding new function to Universe that will writeRelative both channels at once. Most probably I will not have time for it any time soon.
If you disable relative mode, you will get better results, but then, you'll lose the relative mode...
In fact, I was almost sure that I disabled the fine channels completely when EFX is in relative mode. Actually I didn't.
This problem may be temporarily improved by adding new function to Universe that will writeRelative both channels at once. Most probably I will not have time for it any time soon.
If you disable relative mode, you will get better results, but then, you'll lose the relative mode...
-
- Posts: 71
- Joined: Wed Jun 15, 2016 8:51 am
- Real Name: Matt Mayfield
Thank you for the reply! That's unfortunate, but I think I understand the situation.
For now, I guess I will use one of two workarounds: 1) always set Fine Pan and Tilt to 128 if I know I'll be using an EFX with that scene; or 2) set up separate EFX in Absolute mode for each moving fixture location.
Thanks again,
Matt
For now, I guess I will use one of two workarounds: 1) always set Fine Pan and Tilt to 128 if I know I'll be using an EFX with that scene; or 2) set up separate EFX in Absolute mode for each moving fixture location.
Thanks again,
Matt
-
- Posts: 1325
- Joined: Mon Apr 13, 2015 7:05 am
- Location: Bratislava, Slovakia
- Real Name: Jano Svitok
- Contact:
I did try to implement the idea I wrote, but I've found out that it doesn't work.
The problem is that while I can add overflow/underflow to EFX, the values are recomputed after each function writes its data,
and the other functions do not know the relationship of the channels, so in some cases it won't work anyway.
Proof of concept is here: https://github.com/janosvitok/qlcplus/t ... Relative16
The problem is that while I can add overflow/underflow to EFX, the values are recomputed after each function writes its data,
and the other functions do not know the relationship of the channels, so in some cases it won't work anyway.
Proof of concept is here: https://github.com/janosvitok/qlcplus/t ... Relative16
-
- Posts: 66
- Joined: Mon Dec 21, 2015 4:38 pm
- Real Name: Tobias
I know this is an old thread, but since it's a known issue i didn't want to open a new thread.
I just wondered, since it works fine when the position is set to 127 on the fine channels, wouldn't it be possible for QLC+ to always calculate fine values based on 127 instead of the real fine values?
Maybe it's far more complicated, and i'm thinking too simple, but i don't see why this wouldn't work.
I just wondered, since it works fine when the position is set to 127 on the fine channels, wouldn't it be possible for QLC+ to always calculate fine values based on 127 instead of the real fine values?
Maybe it's far more complicated, and i'm thinking too simple, but i don't see why this wouldn't work.