Roadmap to HISE 5
-
@Christoph-Hart yes that's a good compromise, I'll sort it out in a little while and send you the file
-
Did anything change in the parseAsJSON stuff for a floating tile?
This is what I was doing prior to this update, and it worked:
local filter1Graph = Content.getComponent("ft_Filter1Graph"); local filter1GraphData = filter1Graph.get("Data").parseAsJSON(); Console.print(trace(filter1GraphData)); filter1GraphData.Index = graphMap[filterType][0]; filter1Graph.set("Data", filter1GraphData.toString());
But now the toString() call on filter1GraphData returns an unknown function error.
But when I print out the trace of filter1GraphData, I can definitely see data showing up.
Here's a simplified snippet:
HiseSnippet 1038.3oc0V0saiSDEdbalJhAVXQHDbmUtJAUEk+2VVgHaSZfrPSSIkEta0T6wIi53YL1i2tQqpfGEdA3cgmCth2fkyX6D6zVkMMqPh0WDkyOed9747MmYFGHsoggx.jg44y8oHiO.OYtPMq2LBSfF1GY7.7IjPEMvJw0Qy8IggTGjgwteq1gQwBn3m+4aNhvIBaZlKD5YRlM8GXdLUl2wc+dFmOf3POm4kK6VcGZKE8jbYDvmcw0P9D6KISoiH5z1Ai9NR3LjwWha2nocKmG4znQ6C6XS5POzk35VuoSqVcN3v5MOjz5fNzZsQF6crCSIClnHJZH7ROR5LexL4UhjE3YrP1Ebp1nNZBrxItQ8lw3NiWTbBQHiBiyJU6lTp9T7ILG1R+YkrONNfUFh7EMicVGkpeOnjQNJUHgRODOwNf4qxhn4y6iGJfNnKA5M4oRRtnc9SCbOIjgPU0ibIcP.XrDQ4N0psuE7SkGaZZBMnPk0KHAVCXbHi5VesUrfo5Tp5XWWpspbozPk.D4xmKIJlX54LNUiZwJB35I87kBv.flOqR2XIcU8IJBfckrzugxkzQJUopOIHj9jvmN4zQk0nSfTcnvg9R.XavUJ6pFtD19ou4pJ4DU.7dKWoxiciD1JlTXIEijJ5ohxULekYQyqMstYHW26Ll9KLPx4zf6LrV7GrNfkEQdWPC1G914QzkIBM6UUP6sYJH6jBdtDkhgBl5TeZp8.I2QqLz++15MTZGC92OMTWtzRvTePd9z.ESSGi9zW.a5SDjEw8ogWpj9w4l1lAEoJcGThDLe+Dw.F7Q3UZwnWlMkne24YFi5lRfjUCfE2b6yB84j4nKltXZRw8Z1r4q0PXJpWl2WCOq5sQp6eOdwzelFOE+JSKqRKKFCcJ8UVKU46qiEKv.u0hsfBIWd0OKCtLDFgQA+tDdH07ZzULGELBCa72FHzLJa5Lk1pigdt3s1NCCRjNQbhZ0oK54toA.AyJao0aaEgL077ykuGibps1QNaJEeHdLSYO6t43N2AGAoz+EbLcP8GhSlLkQvB3A+x1NUt1lOUtXx5+I3wR9b+YRAyNQ0DShhop05q4PUDZP.8WinB6EUq+35e6u5dV91KTlycJ5m28rHB+FU2iX9RNI3ssxeONibcxiOCu7ix5sQGWXyZRugwZarlV2Yd2gueANsoaoK1u6v6GfO6+Aj8GkQ5SeNg.2G.N7AOJxaBb3fMEHpPP4g5o16nOTLwtl1VSnITgSrg9jkzf001FoAquHHxiXGHetcxg858OuWrGfSh3K7VDt4MXaUGEeAf76Y8f6W9ba6UeU2BXisEXysEXqsEX6sEXmsE3i1VfG7lApu9+ShTRuDMLBcx3iStJgwwBBnFikyn+EvirgaQ
I swear this used to work!
-
@Orvillain I think the function you need there
trace(filter1GraphData);
- rather than toString -
@d-healey Yep that works. Just odd that the old call stopped working.
-
@Orvillain
toString()
was never a function for objects, it's always beentrace
-
@d-healey I don't think that is correct. This code was working fine before upgrading to Hise 5. toString() did exactly what you'd expect, it converted the JSON data object to a string.
Trace is fine, but I regard trace as a logging/debugging command, which is why I wasn't using it.
-
@Orvillain said in Roadmap to HISE 5:
This code was working fine before upgrading to Hise 5
In which commit does it work?
-
@d-healey said in Roadmap to HISE 5:
@Orvillain said in Roadmap to HISE 5:
This code was working fine before upgrading to Hise 5
In which commit does it work?
May 30th. Hence my original question to Chris as to whether something changed in this HISE 5 round of updates.
-
@Orvillain said in Roadmap to HISE 5:
May 30th.
Just tried your snippet with that commit and I'm getting the function not found error.
There's an Object.toString() function in Javascript, but not in HISE script.
-
@d-healey Was definitely working.
-
-
@d-healey said in Roadmap to HISE 5:
@Orvillain said in Roadmap to HISE 5:
Was definitely working.
Can you show me a video?
Will do. But I'm very sure this was working at some point. I wrote the code and even sent a video to the client showing them this feature area working.
(updating graph index so that it looks at a different exposed filter graph from a custom filter node)
-
@d-healey OK, apparently I can't show you a video, because now I also cannot get my demo snippet to work!! How strange.
This is so weird. I was sure it was working. Can't explain it, because I wasn't getting an error or anything previously, and my graph data WAS definitely updating, because in the video I sent to my client you can see the graph switching indexes - which is the whole goal of this.
I wonder if it was actually an older commit? I can't really remember now, But as recent as July 2nd, I was updating the Data array for a FloatingTile, using .parseAsJSON() and then setting the index to a value, and then performing a .toString() call on it, to shove the modified data back into the FloatingTile.
Anyway... trace() does work.... but this baffles me tbh. Maybe Chris can say if something changed. The only reason I posted in here was because he was asking for feedback.
local filter1Graph = Content.getComponent("ft_Filter1Graph"); // gets a component on screen local filter1GraphData = filter1Graph.get("Data").parseAsJSON(); // parses the Data array for the component filter1GraphData.Index = graphMap[filterType][0]; // this just returns an integer from an array, and sets the index property to that integer filter1Graph.set("Data", filter1GraphData.toString()); // this shoves the Data back in as a string
In the full code, this was literally the code that was working until very recently.
-
@Christoph-Hart I decided to make a clean PR without the library in the commit history - https://github.com/christophhart/HISE/pull/755
You can download the .lib from my repo - https://github.com/davidhealey/HISE/tree/development/tools/fftw/windows
I intend to keep it in my fork since I'll always want it.
I added the windows sub-folder for the lib just in case in the future we ever need to put another version in there for some reason and keep them separate. But we could just put them in the fftw folder instead to save users the step of creating the sub-folder, let me know what you think?
-
H HISEnberg referenced this topic
-
Encountering a crash when using modulation assignments on UI controls with no assigned processorId.
- Uncomment line 7 in the snippet
- Hit Compile
- Right click Knob1 and try assigning the LFO.
Same crash occurs if you try assigning via the ModulationMatrixController tile.
HiseSnippet 1595.3oc6YsraabCEkisYpsSaZRZPQQWMvnKbZScjrkUhQQgGaY6Tg3GBVJOZ6h.5YnjH7LjS4vwINEAnK599GzuitpO9C5mP6ptM+AsWRpGy3H+R4kaPzBAwm2CIO2ykWpZRgOMIQHQNS1X+XJx4cw02mqZWoMgwQUWA479XN8gQDkj8HEMQgVd+XRRBM.43L5szcxYhwPlOOcwkIgDtOseUHzcELe55rHlpes07tMKLbMR.sAKJSuK4U0WvqHBEo.fFEW.ES72kzhtIQ2sQvnuhjzF47o34mcN+RA2HX1Ymegx9jxzEZRZ1r3bAkJU9lKTbtEHktYYZg4QNma0.lRHqqH.5QNisrHX+5sEOjaMvcYIrcBo5BEQ0AKaqdMQXfdIpqEUoMKLnV2cpDDLo05uuMpce6J3MXArd02e+6hlFb6OhrafNijGdilCdEyBuBYf2.fjSFHMlERWBW2WxhU8aQimyiqxUTYSBbNkEJ19hF4IN3JBnGb0LQjcoqIgB8FwzkKT3ZtvWW8KlbR3rJQ4tGQ5ZoGteo6p7VLNcFeIEVOaHBRCIJlfugo8ompUnXGRXjHXp7i+1bwNEgg20vsnpJhnXAGJL8TlV0iv7iYRnPcwcWSUCl5ZSUmEEGRc0zQSGu90Ozt5ZLcyTtuFXtB9lBEcK9zWcxuexIl7IS5dvlZ1bfsogpTDFRkCrYMwVdTCbZdZzNT40f0eXJsWGgCu7LB7gyHxRX8s6bY5nfWkyTaES4GFMF0Y6Vyd5fJnqJC24Bc3N0CYATIhATj2Aa1TQF.2wo8u9me4m+MzcptBQQ5NMvLBVIlJUL8BvYE5dfDfkRNAdEZxtJQroucNgAQmi0nOpmJwObGu86Uv69dIJZbc1i6hHu+9w+3hV9XChDHRUCzZXIFFhlf.rRDv.6.Fe1NzPjh9H.EmCazyhxpo80+dDousQK6EwBBBo0DIL84YVktL7LyRICmDj7dFuSPWv5ejWrnCD633jyCU6ExA6teVI2WXJHmTHdIbMlxu8fw3HC.i.u3kAF6n69d3Ua1j5q5Cvwvqc+WNhrYM+3Vy+w3aYzz5uQAd..RncEa6I4cDAN+ySZfy3SbfyCJiL1ISF4Xh6M1Yt3dmTV6Gz4bxsWaIuB8sxEc9RVXhwqu1VFrY+0whlkYwhPhT29ZR52kR49YZebOMsnZeVk2O4cOxdzlBYTGs2dyz5zVvNP1ZZPAsX3he9YYf0iDBUaFuUdx1U7VWHhWkSfkdP1IoVaRhNdID0M2z.SaCwFDPnVVIT3ua1Fq1hKjTaL3r0WIMQIh5t.L28qNHzahy37s3xklA9z7yzeuPE3q415ES4SiVUwi9LejSL0DN9c6cjqYnmdp4XmLp4Q6eiNUHtGI7+AH9HCZM5a1As1Vjp.mX6cvA0lMSipCwI7of04bZn9RlNin84rkKnKabbo7.Sg+E9zowh5xNcZrX2FQ1I2dKvrq2KXWumGtMDmZRrzrZ+PSYWs6s6snPvR8oUwWsQH2xWAlugjvShEI4l35zHVC3poIYq7NITMieaM8ImRkfHGXSOcw0fE4.GSchJUZ3gKEIR44jKcF8sQtOibk3bR3SzEi1K1uJeOZHjkiAiWFxjnIIMT0s17b4MDbQbaAmkK751TvmoUKpLK1G3BZIkhjMr4U71lFRIYIseh25.YiH2vlYyvrWT7T+.CC775ivV35pc.cesmJy3ceKDqDUO.av5D3VcxHLaNLOuGW2MSBxG0Eop5cPe8g9zAYr41DdKpl1VkGmprkbvl7Yw3ByT.YxkEiKB+rJvTkJqhQAT+jnscrAjPLjIioKRsd8lvsvHgPOBpQgPGPNNZKsUp54zPfpJH1zMc5kR9Fpr6h7sg1OUoULdu2us2ScXL+AdIhCKF6m+f+3WWgFRxsQcOV.Dwt+ig3Mfnv1y2Z5TSN317KJ1ctnWGMWPujd8H5LnCiAq5bvWi53zdd5huU64ro1iNtO3x3dl9A6tL13Fe1FjWDWi7Zxw8URBRuoXiHhuT7.e6+VfV0abSMvdK27ezMAn3Akcy+2DX9DAIU7.e+7S0yLvYG1AN2vNvRC6.meXGX4gcf2XXG3MO9Apy4aoTkHx5+gPaTaU6ys4z6s9bFE8e7NdMTH
Is the new matrix_mod node scriptFX-only (as in not meant to be compiled to a hardcodedFX)? Also curious as to whether it's polyphonic-only like the "Matrix Modulator" module.
-
LFOs for custom parameters seems to be broken. The LFOs do nothing.
Does it work differently now?
-
@griffinboy Yes, that's the entire point of the update - you get complete control over the update rate and how the modulation is applied for each node, but I had to introduce a few breaking changes in the bridge between modulation and nodes for this (eg. the weird behaviour of switching to pan mode when the parameter range crosses zero). I'll write a "migration" guide with the necessary steps for bringing old projects up to speed soon, but in the meantime try changing the
ExternalModulation
property of the modulated root parameter in your scriptnode network before compiling as I would guess that this is most likely the thing that broke it for you. -
Fantastic thank you looking forward to it.
I've just tested out the latest branch, it's exciting.
There is a disturbing issue I've found though, where one of my c++ synthesiser engines now aliases horribly, where it didn't in a previous version of Hise. I'm investigating it now. Strangely, a simple c++ sine synth doesn't have the same issue, I'm hoping I can track down what is the matter.I'm rolling back Hise so that I can compare with an older build.
Maybe nothing is wrong with Hise, and it's due to some other mistake I've made. I'm hoping that's the case. -
*edit
The issue suddenly disappeared after clearing all the modules in the hise project and recompiling networks. I compiled the networks in an old build of Hise, then when opening the new build, everything was fixed. I have no clue at all what happened there. Maybe there was some issue caused by using an old hise project with a new version of Hise.
I was a few months behind after all.
How strange, sorry can't replicate the issue now! -
Okay I've replicated the issue. When compiling dsp networks as .dll in the new version of Hise (latest commit) something is wrong. My c++ oscillator aliases.
Wheras, when I compile in an older version of Hise
(HISE-6583025bbac9d7b4524de97e095dd2b85c6fd5be)
The node works as expected without any audio issues. It allows me to load this .dll in both builds of Hise. Which is odd too since there is a version mismatch.I'm making a video one sec -