GRIS-UdeM / SpatGRIS-legacy

4 stars 0 forks source link

changement de contrainte de mouvement durant l'automation déplace les sources non-sélectionnées de façon plus ou moins aléatoire #105

Closed vberthiaume closed 7 years ago

vberthiaume commented 7 years ago

relié à #99, mais moins systématique

Xon77 commented 7 years ago

Pour moi, ce n'est pas vraiment un problème. Les sources non-sélectionnées doivent obligatoirement changer de position, puisque la position des sources non-sélectionnées dépend de la source sélectionnée dans les modes autre qu'indépendant. Donc, logiquement, les sources non-sélectionnées doivent changer de position. Le changement d'automation de mouvement implique forcément cela, non ?

vberthiaume commented 7 years ago

Ce n'est pas un problème si les sources non-sélectionnées se déplacent d'une façon qui suit le mode de mouvement sélectionné. Le problème est que, pour moi du moins, le comportement est aléatoire. Genre:

  1. Nouveau projet reaper, nouvelle piste, vst spatgris dessus
  2. input output mode 2x2
  3. armer l'automation en mode write
  4. commencer une trajectoire en cercle
  5. quand la source 1 a fait un quart de cercle, changer le mode de mouvement pour circulaire. La source 2 devrait commencer à tourner avec la source 1, mais avec 1/4 de cercle d'avance. Mais ce qui se produit est que la source 2 va soit direct SUR la source 1, ou à l'opposé de la source 1, genre mode circular fully fixed.
  6. finir d'écrire l'automation et la relire (changer pour automation read). Observer qu'un comportement différent peut arriver -- ou non, c'est un peu aléatoire selon le séquenceur
Xon77 commented 7 years ago

En effet, pour moi le problème n'apparaissait pas dans le cas d'une écriture manuelle : La position des sources non-sélectionnées saute de manière apparemment cohérente. Dans le cas d'une écriture automatique avec une trajectoire, le mode mouvement ne devrait pas pouvoir être changé, comme c'est la cas pour la trajectoire.Ou alors si on veut changer de mode de mouvement en cours de route, pourquoi pas aussi changer de trajectoire ? En tant qu'utilisateur, lors de l'écriture d'une trajectoire, je définis ma trajectoire et mon mode de mouvement au préalable, avant de lancer l'écriture de l'automation.

Le Lundi 21 novembre 2016 14h07, Vincent Berthiaume <notifications@github.com> a écrit :

Ce n'est pas un problème si les sources non-sélectionnées se déplacent d'une façon qui suit le mode de mouvement sélectionné. Le problème est que, pour moi du moins, le comportement est aléatoire. Genre:

vberthiaume commented 7 years ago

Bon point...! @Normandeau ?

vberthiaume commented 7 years ago

Je devrais aussi mentionner que je suis activement en train de coder pour régler ce problème...!

Xon77 commented 7 years ago

Ce problème n'est pas pour moi important et pourrait être facilement réglé en n'autorisant pas le changement de contrainte lors de l'écriture d'une trajectoire automatique... En revanche, l'issue #18 des automations qui se contredisent, est pour moi un bug important dans le cadre de Reaper.

Xon77 commented 7 years ago

Je précise ma pensée : il serait intéressant de pouvoir modifier en temps réel au cours de l'écriture automatique d'une trajectoire de multiples paramètres telles que le changement de contrainte, le type de trajectoire... avec morphing :)..., mais ce problème ne me parait pas essentiel par rapport à d'autres.

Xon77 commented 7 years ago

Une autre amélioration "feature request", non indispensable, reliée au changement de contrainte, pourrait aussi consister à mettre en place un temps d'interpolation, variable de 0 à plusieurs secondes, ce qui permettrait d'éviter les sauts bruts de trajectoires pour les sources non sélectionnées et de créer des "morphings" pouvant éventuellement être intéressants dans le cas d'une automation manuelle.

Xon77 commented 7 years ago

Après de plus amples tests, j'observe aussi un fonctionnement aléatoire dans Reaper...

  1. Nouveau projet reaper, nouvelle piste, vst spatgris dessus
  2. Input output mode 2x8 & apply
  3. Armer l'automation en mode write
  4. Commencer une automatisation manuelle avec la souris, en deplaçant la source 1 d’un quart de cercle vers le haut
  5. Changer le mode de mouvement d’indépendant à circular -> la source 2 ne doit normalement pas bouger, mais tout changement de la source 1 va affecter la source 2 par la suite.
  6. Continuer le déplacement d’un quart de cercle de la source 1 du haut vers la droite et stopper
  7. Résulat à la relecture : le déplacement de la source 1 est cohérent et peut être relu, mais le mouvement de la source n’est pas enregistré en mode indépendant, puisque je n’ai jamais sélectionné la source 2 pour lui créer une ligne d’automation. -> ce qui renvoie encore à l'issue #18 : non seulement les lignes d'automation pour les sources non-sélectionnées doivent être ignorées quand on est en mode non-indépendant. Mais aussi, dans le cas d’un mode indépendant, les positions de toutes les sources doivent être constamment écrites et lues : seule l’information de la source sélectionnée est actuellement conservé.

On continue.

  1. On réarme l'automation en mode write, on revient à 0, et on ré-écrit.
  2. On re-commence une automatisation manuelle avec la souris, en deplaçant la source 1.
  3. Changer le mode de mouvement d’indépendant à circular, et cette fois-ci, la position de la source 2 bouge, alors qu’elle ne devrait pas … et renvoie apparemment la dernière position de la source 2 lue… ???
vberthiaume commented 7 years ago

La prochaine version https://github.com/GRIS-UdeM/SpatGRIS/releases/tag/v0.1.9 devrait régler ce problème. Laissez-moi savoir si ce n'est pas le cas!