DarienBrito / TDMorph

TDMorph, a toolbox for enhanced parametric exploration in TouchDesigner
GNU General Public License v3.0
136 stars 9 forks source link

V1.1.1 - Interpolation broken when saving preset with a custom morph time. #44

Closed baronlanteigne closed 4 years ago

baronlanteigne commented 4 years ago

First of all, thank you for this update. This project is awesome.

Here is how to reproduce the bug:

Change Morph Time value and save to current preset. Now any interpolation going to or leaving this preset will be broken. Other transitions between unaffected presets will work.

In fact, the preset with the new time value has to be clicked twice to be launched. First click will select the preset, 2nd click will launch the transition. I know this second click is part of a new feature to reload currently stored data so this seems to work independently.

Edit for clarity: I was the default mode: Global and Sync enabled.

DarienBrito commented 4 years ago

Will have a look!

DarienBrito commented 4 years ago

I'm having trouble reproducing this. Can you give me a step by step guide of how to cause it?

baronlanteigne commented 4 years ago

https://imgur.com/rBWr0cl

I hope this is clear enough. We can't see that I press shift to save the presets but you can see how the custom morph time is correctly recalled. At the end I fix the issue simply by saving the preset again with a morph time of 1.0.

I did this in a fresh empty .toe. You can see that the interpolation between preset 1 and 2 aren't affected at all. Also, the 2nd click on the current preset, meant to reload the preset, works just fine.

DarienBrito commented 4 years ago

Got it! Checking it out...

DarienBrito commented 4 years ago

Alright, this was a nasty issue. This is not really a bug in TDMorph but in latest versions of TouchDesigner, which has some cooking strangeness with the timer CHOP. I have added a couple of cook(force=True) in the code to make sure this works. One thing though that will change in TDMorph V1.1.2 is that the Time field will not display the time of the currently selected preset. I need to find a safe way to update this since it also interfers with proper preset calling due to cooking strangeness. This seems like a low priority thing to have and maybe even undesirable after all, so I will disable that behaviour.

This issue is solved. in V1.1.2