Idea for interface with lots of controls
-
Let's say I have an interface with 200 sliders. Rather than creating 200 sliders would it be more efficient to use a panel and create 200 "mouse zones" and store/restore the values via a slider pack?
The only downside I see to this method is instead of using the built in JSON UI I'd have to define the properties of my virtual sliders in an object within my script. But I could load this as an external file so it's not much hassle.
-
@d-healey From my (small) experience, you should definitely use one panel with zones. I began a synth last year with about 200-400 controls (I'm not sure because I pulled this project aside).
The result? It was laggy as hell!Since then, I'm trying to use panels exclusively, and try to give several functions to them instead of nesting them.
Loading the object into the panel can be a hassle sometimes though...
edit:
Was in fact 700 controls... -
@d-healey I have to mention that I don't even use a sliderpack, I just store all values in the panel... I noticed that a sliderpack in this context doesn't necessarily make the panel easier to handle, but it's a matter of taste in the end...
-
@ustk Thanks for the info. So you store the values of the controls in the panel's value object?
-
@d-healey Exactly ;)
In this case, I would give each slider a row which holds data, name, value, maybe range if they are not the same...
Sometimes it's an object, sometimes a multidimensional array. -
@ustk Do you have to restore the values in on init or does it just read directly from the panel?
-
@d-healey This is where it's weird.
You have to load the object once. After that, since the panel is SaveInPreset enabled, the object will always be restored.
So what I tend to do is loading the object the first time or when you modify its structure via a hidden button in the interface. -
@ustk Thanks. I'll play around with this idea and see what happens.
-
Keep in mind that if you want to update a value inside the object, you can't use
this.setValue(newVal)
.
You have to do this:this.getValue()[i].thing = newVal; or this.getValue()[i][j] = newVal;
-
@ustk I think this might be a way to initialize the panel in its own callback - Christoph did something similar when we discussed persistent variables a while back
if (typeof component.getValue() != "object") component.setValue(widgetData);
-
@d-healey Yep, I'm using it here and there too, essentially for non-complex objects. But I prefer to remove the test for complex ones for maximum optimisation, it's not much, but I'm a bit paranoid :)
The other reason is that for the most complex component I've made, I have in fact several lookup tables with different objects, so I have to load at least one. Afterwards, it's handled by the preset system. Might not be the best solution, but it works. -
I think I've hit one major problem with using a single panel for multiple controls. MIDI learn won't work, I'd need to create my own system.
-
@d-healey You're right. That's what I did.
The downside of using a unique panel is that you have to get your hands dirty. But by using a lot of components, you pay the price of UI efficiency ten times... So the CC# is another property to add to your object... -
@ustk I've added up all of the controls on my UI and I think I can do it with less than 100 widgets, so maybe I'll just stick to the HISE controls.
Apart from MIDI learn I will also lose host automation (which I use more than MIDI learn) and I don't there is a workaround for this.
-
@d-healey Yep you're right, I don't know too if there's a workaround for that. In my case, only one value needs to be automated with the DAW so I just linked it to a unique hidden slider.
Tell us if you notice any laggy UI issue ;) -
Here's a test with 512 controls (not including the panels)
HiseSnippet 5244.3ocyc1raicckE9xpJ5jpbbhCP+.TCc.RGvye264fdfUW+ETHobptkai1iLXIwxhvR7JPQYagFMPOMyxSPdNxP+Hz.8fdZdDxaP2jRTRTkEKo6ZuVToFXTjR6K+DE4de1eV0RudZ6NiN5n1oU8d3mexgip58y5u8ISls2S2a33IUu7YU8dT+u93we0rQGMq5Imb3viNZztU85c+e6hOduG9fpS+ye6Sexv8GNYmQWdWUUeQ63cF86Gev3YWduudqe2382+EC2czmO9fU9ria8xcZm7z18aOdNK2u+fpCGty2L7qG8YCW7ocu9U89fmu63YsS2d1v4vL+y4Is6dx1609cSN6y+KFez32r+nE2vUs87KzY2c0S2a79695y+57nppdO30W9U88O6q5+g9uZ7tiu39u7q9O9zOviurhUeNn28tJRO3JH4VGRunc+cWbAVCd8VAuGbFd+x9auyzwGN6xOxB19v9ubxrQSe6v4OsuJVm84V06G5+z14eBSl8aNX32L5ESmeiKJ3SxCF7qe77+yu5e5sGOYmYiam731IeV6rQ+gIexu5Q+GO5gO5+7QO9c+Pu8sW6GawCyz182ezzq8Cu36zSeeE9ISN9f2LZ5u9we6v8OdzEehy+x+pO+9A2tme24rupW4SrcxKmLd1e3vQKu8keGvcMeGnZ4SaUU26+p2RDm+4N6zuU7yW9shs2e7tilVMd9U4mz+2Mo8MtpSoe4Ko25Q+u+OeZ0stX+UJ9r+bqKNXo3nkhSVJt9JE+W+W9K+4N7DVikG4bGJ9IGOaV6jSK9g8O6FNak6sUdvV4QakmrUdssxarU9s466e7xxeZ6Auo8Ise+oWfOr+42zY+R3seIB1uDQ6Whj8KQs8KQi8KQ1RyjBVw+zyFZLvT0NSU6MUcvT0QSUmLUswlPErxez4SOFXrdmw58FqOXr9nw5SFqmPOmB5k3mc4fjADtFNBWCOgqQfv0HR3ZjHbMpM0aowT0YSUaZRj2zjHuoIQdSSh7llD4s1NpwX8Yi0abbj233HuwwQdiii7FGG4Yz2ogv0HS3ZPXtjmvbIOg4RdByk7DlK4McRUuoSp5MMKxaZVj2zrHuoYQASyhBllEEr1Ox3wS80Fq237Huw4QdiyiBFmGELNOJvnuCgyg5qIbMHLWxSXtjmvbo.g4RABykBlNqZvzYUCllEELMKJXZVTvzrnfoYQASyhhV6GY77oAi6mDLNOJXbdTv37nfw4QAiyihL56P3bnAB6oDHLWJPXtTfvbo.g4RABykhlNqZzzYUillEEMMKJZZVTzzrnnoYQQSyhhF6GEMd9znw8ShFmGEMNOJZbdTz37nnw4QQB8chDNGZjvdJQBykhDlKEILWJRXtTjvbonoypFMcV0joYQISyhRllEkLMKJYZVTxzrnj09QFOeZx39IIiyiRFmGkLNOJYbdTx37nDi9NDNGZhvdJIBykRDlKkHLWJQXtThvbojoyplLcV0joYQISyhpMMKp1zrnZSyhpMMKp1Z+HimOMYb+jjw4Q0FmGUabdTsw4Q0FmGUynuCgyglHrmRhvboZBykpILWplvboZBykpMcV05ymH0kZpApoAnlLPMktWSy.fZb.03uwZtt2+mfppFppFnpxPUUPp5V78pqqJGTUq+6W2z6ISvUVCWYCbkY3JKnU9d993MUoCtROv6YC.0DApAnObCPe3Ff9vM.8ga.5Cmwduc.ppHTUP8haf5E2.0KtApWbCTu3L96gCvUFgqDtmbCbO4F3dxMv8jaf6ImANGTF3bPYf9vYf9vYf9vYf9vYf9vYf9vYn2amgN6SF5rpYndwYndwYndwYndwYndwY32CmgOiSF9LqY3dxY3dxY3dxY3dxY3dxYfyAkANGTAnObAnObAnObAnObAnObAnObA681Pm8o.cV0BTu3BTu3BTu3BTu3BTu3B96ggOiSA9LqE3dxE3dxE3dxE3dxE3dxEfyAUL8+Opho++QU5Tu4Gt7ee8CPJxgTjGon.RQXuoG5PQEnCwV5TS5O7h+kwO.qLGVYdrxBXkg+Nb3S.UfOQaoicr+nU9209.7Rc3k5wKMfWZD4suIjhpQJpAonLRQH8lcH8lcH8lcfuUOgUVMVYMXkkwJCqEsCqEsCqEsyv6pS3kViWZCdoY7Rw6V6v6V6v6V6PNqjC4rRNjNzNjNzNjNzNjNzNjNzNjNzdv2sicDIWDqLrtzNrtzNrtzNrtzNrtzdCuqF+zPtHdo3cqc3cqc3cqc3cqc3cq8HmXxibhIORGZORGZORGZORGZORGZORGZO1618XmRxic5VOVWZOVWZOVWZOVWZOVWZO96p83mFxieJWOd2ZOd2ZOd2ZOd2ZOd25U995+1Ke1vYCWDy1KS44WOs8vQSmMdQ.S26Yi91w6L5rP29g8e1ni9lYsGV06AyuRG1NYQlP26CN6g7iNORtGNYz9KsTd5eOU88q527jUuw2Md2Y6c4c7G2ZuQi+58ls58bkGqexM7X4V7X0u2xGmy9Ku6k7jsdmG0S15vgSme4W4w4Bz683e7i96IwqW+Woq6gv8tOG7k+nmCd4VUc.B+pP7kac2.QXUHFeGAQbEH9go2QPr9W8+xs1XPTu1WSrAgnYsulXCBQdsulPGDWahoutWU7kaRLVeuhMJFquawFEi02uXihwZ6X7CuYShwZ6YrYwXscM1rXr19FLw3mdKSb+006X7VGL7hy+rgoZ8sRtKoZ8cVtKoZ8MZtKoJsNp1p8Njp508p86TpZV2q1uSoJutWsKhp2Yare+v2rbare9p2yZ6WM+EYKe.62a2qYQs22IxtlmbtALVaCJKXLaz2O6G8ka2YKr1oK28rEW6.36d1Vsk0+8pOu8WO9NmsUab83w+8EaWo80e6S+6J1VsI1Ve4l54saRrj+LwR+od2IhkJ.hk77Vc9he07zcyR7ovAnVhOEd.2R7oH.HWhOEQ.6R7oHAnWhOE0.9k77WWs.3WhHFq7q1otKXRAGN.CSJ3vCnXRAGA.GSJ3HBHYRAGI.KSJ3nFPyjWyxjEaZlnR0U9sDlIOSpvxYSzjJr71LMoBqfMUSpvJZy0jJrR1jMoBqZa1l7ZrMU3aaxe61h8WbksKGvW2j2vJ1WENGeeS7fyyW3DO3B7MNwCtHekS7fKw24DO3p4KcxaW5T3c9oYZg8oMgzoK9U2Y2sNEnuQcFv5DeJJ.VmnSge.f0I9T3.rNwmBOf0I9TD.rNwmhHf0off0Wa.zNofiLf1IEbT.zNIfi2SeiMKGN.sSJ3vCncRAGA.sSJ3HBncJHZsxFadmTgU1l2IUXUr4cRDVumFN2oX4r4cREVdadmTgUvl2IUXEs4cJPy6zUWgrgu3o.xprY9hmBz1ytvW7DM3tRSKRhm3Amiu3Idv44KdhGbA9hm3AWju3ofcwSw24m1oMq3IeBP7Tj9R00.hm3SQCf3I9TjADOwmhBf3I5TDF.HdhOEN.wS7ovCHdJJXA1Df3IEbTCHdRAGM.hmTvQFP7jBNJ.hmDvw56crg4vAHdRAGd.wSQQ6UlrIdREV01DOoBqFahmTgU1l3IUXUrIdRDVWscT2EOoBKmMwSpvxaS7TTi3o022BWaQDYU1Z9hmhz1ytgu3Idvk4KdhGbE9hmnA2UZfQR7DO3b7EOwCNOewS2B3torhpdClUTMbyJp5tI4JD.jb0PeA9HfjK9Tj.jbwmhZ.IW7onAPxEeJx.Rt3SQAPxEcJhC.jb0HXY4.fjKEbDAjbofiDfjKEbTCH4RAGM.RtTvQFPxkBNJ.RtDvw56evjia4NrAaRtTgUzljKUXkrI4REV01jboBqFaRtTgU1ljKUXUrI4RDVwA1jb0nQx056agqHoAYs4HeIWMz1oOwWxEO3p4K4hGbM7kbwCtLeIW7fqvWxEM3tRyLRRtZr+SWUlaVR0QwSQjTJOSeoZjXJmOEH4TNeJPBpb9TfjT47o.Ipx4SARVkymBjvJOKXAVjzJWAGHwUtBNPxqbEbfDX4J3.IwxUvARjkqfCjLKWAGHgVdVzdkFSsbUXYL1xUgkwbKWEVFCtbUXYL4xUgkwnKWEVFytbUXYL7xyZDOEEjd4YjUYEDe4YZ6YKH+x4Amf.LmGbBRvbdvIHBy4AmfLLmGbBBw7rcwSEt4IUWEOgjh4E1KUmPRwb9Tfjh47o.IEy4SARJlymBjTLmOEHoXNeJPRw7hfEXQhwbAbjPhwbEbfDi4J3.IFyUvARLlqfCjXLWAGHwXtBNPhw7hn8JMli4hvJYLGyUgkwbLWEVFywbUXYLGyUgkwbLWEVFywbUXYLGyKhDOIHHyK.qxlDDj4EV6YmDDj47fSPPlyCNAAYNO3DDj47fSPPlyCNAAYdwf3oGt7W.eC3FnTcz7TpSIY9kLyds5NEk45vnSYYtLLp6TXlqCiNkl45vnSwYtNL5TdlqCiNEn4rv351jsSIZtRP5TjlqDjNko4BAotSgZtRP5TplqDjNEq4JAoS4ZtRP5TvlCCxsbQSzjMWMWnQatZtPy1bwbUiFt4p4BMcyUyEZ7lqlKz7MWMWnAbt0Fo2ztkLS37KYEXIWlQb9kfvZEblYbNc5pYFx47oiYJmymNlwbNe5Xly47oiYPm2A59faxLkaSj3Tm+f4IE4TWBem7fUmP7f4ouceMhGL9Xzf3AiOFYDOX7wnf3AiNFMCP7fwGCGhGL9X3Q7fI3WL80IDOXJ.oFwClBPZP7fo.jLhGLEfTP7fI.jlAHdvT.hCwClBP7HdvD8KN95jQOXp3p1nGLUb0XzClJtxF8fohqhQOXh3pYfQOXp3xYzClJt7F8f403AqNIvClGYm5ZAdv7z13uQfGLdzkE3AiGcEAdvnQWy.Adv3QmSfGLdz4E3AyS3mPq.oPoBTMUS.QMUf9B2QD0T7wHgnlhOF0Hpo3iQChZJ9XjQTSwGiBhZJ5XjGfnlRvu75aBHpoT.RDQMkBPRHpoT.RMhZJEfzfnlRAHYD0TJ.ofnlR.H4AHpoD86V9lfQ0Tp3JZTMkJtRFUSohqZipoTwUiQ0Tp3JaTMkJtJFUSIhq7.ipoBZTS0DDnlJfrlaTfZp.skvSBTSwitZApo3QWi.0T7nKKPMEO5JBTSQit7.ApoBDTSEIEaUfpoxND0TQ5Kb6QTSwGi.hZJ9XDQTSwGiDhZJ9XTinlhOFMHpo3iQFQMkfe81mcHpoT.hGQMkBPBHpoT.RDQMkBPRHpoT.RMhZJEfzfnlRAHYD0Th9sOe1YTMkJt7FUSohqfQ0Tp3JZTMkJtRFUSohqZipoTwUiQ0Tp3JaTMUTiZprSfZpHxZtdApohzVBOHPMEO5hBTSwitj.0T7nqVfZJdz0HPMEO5xBTSEInlJQJWqPUSUPTSkXuvcY.hZJ9X3PTSwGCOhZJ9XDPTSwGiHhZJ9XjPTSwGiZD0TIA61VPTSI.jx.D0TJ.wgnlRAHdD0TJ.IfnlRAHQD0TJ.IgnlRAH0HpoRhV4rXTMkHtJCLplREWNipoTwk2nZJUbELplREWQipoTwUxnZJUbUaTMURjZph.0TIf0bKCDnlJwZI7hSfZJdz4EnlhGcAApo3QWTfZJdzkDnlhGc0BTSkHDrU0axfspgbvV0w.du.Ev6Mz2tGJf24iAT.uSDiGdJFtAPI7t.Nfh3cAb.kw6B3.Jj2EvATJu2HXaZnTdWAHPo7tBPfR4chf7gKA480DYSSBTNuKgDnfdWBIPI8tDRfh58FQa5ZMp2Uwk0ndWEWVi5cpb8QWv06q6ycLXVC6cYfYMs2kAl03dWFXVy68FMZwJJx68FjUrUj26MzD.nHu2sP2GekZFnHv2IhmhDemHdJh7ch3oHy2IhmhPeugvO1VYxgc0sVW04a9BED6Y9afCkD6B3.JJ1EvATVrKfCnvXmOGNnzXW.GPwwt.Nfxi8rh0cgBjcIj.kH6RHAJR1kPBTlrKgDnPYWAINnTYWBIPwxtDRfxk8rpEQsFL6x.yZxrKCLqQytLvrlM6x.yZ3rqBLm0zYWFXVimcYfYMe1yz7V8NqcpHf1yPK.qHg1y71OWQDsSDOEYzNQ7TDR67vyoHk1IhmhXZmHdJxo8LA0UExggUWUW4fBp8B+UwgRpcAb.EU6B3.Jq1EvATXsKfCnzZW.GPw0NeN7P40dQwRuPA1tDRfRrcIj.EY6RHAJy1kPBTnsKgDnTaWBIPw1tBR7P41dQ0tnVCtcYfYM41kAl0naWFXVytcYfYM71kAl0zaWFXViucUf4sle6EQpqbJBv8BzBvJRv8Bu8yUDg6DwSQFtSDOEg3NQ7Tjh6DwSQLtyCOuhbbuXWc0YbQLrr5p5JORPtOmZ5qhijj6J3.IJ2UvARVtqfCjvbWAGHo4tBNPhycEbfjm6l43ZW5EIP20PBRhtqgDjHcWCIHY5tFRPB0cMjfjp6ZHAIV20PBRtt2cRts6hZLX20AlwjcWGXFi1ccfYLa20AlwvcWGXFS2ccfYLd20Alw7cGti5Mt1of.deNrHK.KHg2mSBs8yEDw6LwSPFuyDOAg7NS7Djx6LwSPLuyDOA479Zw60Sa2YzQG0Nsp2C97k8deU6tGu+vYsSe5dCGOo5kOawc9am+WW9AFO+rjO4jCGdzQilCeu6+xIyFM4nwyNY0mT6cumu634WismMb1nile0eR6tmr8dse2jpd2uuq5KFez32r+nE2XP01s62d1e6Es6u6hq5hOkpmt23828BBOp5Vi6ur+qGOam8tddu20vaUkbdu+mu769O+suczNytD1Gz+E+6W44SMn7u1d7rwS95WMb1zwKFP9YGev1sGOcmQyIYx7WhbzhWUcupEkd5sGb9PzsGMY2Suw+27+r7C5Vb6dK+fty+fUGLbmose0NsSlMsc9Eb9K4O8dlyzjgGLZwqFe0ha+XW02Nb+imeG86O32Ln5fw6N9q1YmEOU7ONm8quFOPMAfZh.0j.poFnlFfZxu2Zd07a9Oe7r1CN6sIyuiW+7mMb1v4uN74SFN+UYm9Jxp+efeu7lm
And one with 256
HiseSnippet 3152.3ocyctsaaicEFlz1JSrmoyAf9.3Ky.Lcf3l6MOfdwnZ6jAFyjLFUoAMWMfVhNhHRjFTTIwnnO.8t9HkGg9HzGg4MnkzR1RxQzV7esVRiuHP7vZyOwCq0d8Cp+bVdVu3wiyxsr2+kWcYrk8Wzp6UoECNdPTRp0omXYePq2LI4WKhGWXczUWFMdbbeKa6c+wpsau+dVW+2u8CGEMLJsW77UYY8prjdw+bxnjh4q8rN+TxvgOKpe7KSFsvdq6bZurziyFlMojkca015xnduM5MwuHpZ21okk8idZ+jhr7tEQkvTtOGk0+ptCxde5z8+UIiSNeXb0BNVcKGnoq153AIC6e1MeOGaYYu2Yy+Vu6zu0+wVOOoexsqe929u95Mb37HV7bf8NKizdKgjScH8rrg8qFfZvydA71aJdeSqt8xStrX9VpX6yacZZQb9EQkm1WDqo6qk8GacbV4NjV78ihda7yxKW31.dRP61e2gk+y29muXRZuhjrzCyReQVQ7uj9ju8f+wA6ev+7fCu6lt3hUtspCSd1vgw4qbyUWoyuu.eR5jQmGm+cG9tngShucGK+5u742Gsdme6M8a8B6XV5ooIE+xkwyVd9U.mUbEvZ1osxqEebFgk6Zw0WI9xYWI5NLoebtUR4f7Ys9ozrycrtF9Eu+2ZsCVQIXWJAqoDrgRvdTB1mRvAMH3ilTTjkdcv62Z5BNzBWQKbWZgqoEtgV3dzB2mV3qy08udV3GmM57rix9v0Cvm25lEcnODJ5CgK8gPSeHLzGBO5CgO8gHfRxjPrfe7zhFsIEsConUjh1kTzZRQaHEMwjPgXgevMUOZSLdGhwqHFuKw30Di2PLdFx4DhNDew7BIsYXLbXXLTLLFtLLFZFFCCCigGobK9jhNfTzjpDoHUIRQpRjhTkHEoJQJpoi7IFe.w3IVNRQrbjhX4HEwxQJhkiTbj2wmgwHfgwfg5RJFpKoXntjhg5RJFpKoHMSUEoYppHUKRQpVjhTsHEoZQtjpE4RpVjK07QDmdpxiX7DqGoHVORQrdjKw5QtDqG4xQdGFlGpxigwfg5RJFpKoXntjKC0kbYntjKo4p5RZtpt2TKpIwX.hwCHFefXB.hIr4wnolSw8AOlqJJMTTDqe3Rr9wZbcbUQE.EUHRT2d0r4O65BGoFNRCbjdvQ5CGY.bjgnQdOWOq+IZGfXT.w3BDCPVZMPVZMPVZMPVZMzy1ZhyCSSbd3Zh5BnIpKzZbEcUQ4AEETNaM7y52ySeOTjJ3HgycqgycqgycqgycqgycqAlMkFX1TFf70Ff70Ff70Ff70Ff70Ff70FrmsglizZbMZUQ4.EkBJJn4TaflSsAJWrA+YX34BYfmaqANmrANmrANmrANmrANmrAX9RFf4KY.xCa.xC6AjG1CHOrGPdXOf7vdXOaCM2GCzbZMP4h8fxE6AkK1CJWrGTtXO7mggmiiAdNqF3bxdv4j8fyI6AmS1CNm7BWO+amdRTQT0qh9r2D5yxytLNuHo5kv19j32kzKd5Kl99sNId7aKxtzxdmxA5xrzp2aZ6GM8H9Gt40VOJMd3rG0u9yFqOrXiUWs3BuOoewf4q3e0YPbxaFTr3Zr2agi0m8.GKmpiUK6YGmoe3tC4UctyQ8pNWFkWN7KbbtEc6C+zi987ZgW+2z5NDN28bvq+jyAm1wpAPnVDhW2Y6.g6hPjrkfPu.DeLeKAQ828eZmMFDd0dOwFDB+ZumXCBQPs2SHGDq7mUPc2U75MIF0mqXihQ8YK1nXTe9hMJF0lw3imuIwn1bFaVLpMqwlEiZyavIFOdM+YoTWtijNihtc9OaXppOUx1jp5yrrMop9DMaSpL0QUmrsHUd0c29VkJ+5taeqRUPc2sKDU2oareN57Yci8kKtlZyWUdS1rCXK69qnQs6aFYq3jyCfQsInnfQQ7GJ9jutMmM2Zqtr8YSWaA3sOaKlx5+r34s+6jsNaKl35vjeew1Rou9se32UrsXRrNudScd6gDVRMUXo+s8VQXoP.gkT7057s+9UatxR7SgCfzR7SgBPaI9ovEPbI9oPCntD+TX.jWheJ7.zWRwe6pg.5KwHFK76et4BLIAGN.JLIAGJ.IljfCW.MljfCMfHSRvgAPkII3vCPlIkLMSFRSlIVoZoeJ8jzYRJrbnIzjTXonozjTX4RSpIovRSSqIovxPSrIovxilZSJYTaJje0lTqWWre0RcW1le4lTDZwdY3b3WuI9fSwufS7AmK+JNwGbZ9kbhO3L7q4Dev4wunSJ5hN4dm2loJ0m1DhNcq+1zbUmbYui5..Um3mhP.UmXmBUa.Um3mBG.Um3mBEfpS7SgKfpS7SgFP0IWAZe0GP1II3H.P1II3HDP1IA33dxarY4vAP1II3PAH6jDb3BH6jDbnAjcxUn1J8oo6jTXEPS2IovJjltSBg08jvYqhkCMcmjBKEMcmjBKWZ5NIEVZZ5N4xltSK2BoO+BO4hzJa.+BO4xVe1g7K7DavsTRKlDdhO3b3W3I9fSwuvS7AmK+BOwGbZ9EdxktvS5671NsYEdRY.DdRydS0d.BOwOE9.BOwOEA.BOwOEg.BOwNEtsADdheJb.DdheJT.BOoEnAVCfvSRvgGfvSRvgOfvSRvQ.fvSRvQHfvSBvQ84N1vb3.H7jDbn.DdRKTekFZBOIEVdzDdRJr7oI7jTXEPS3IovJjlvSBg0xoiZtvSRgkCMgmjBKEMgmzxH7T84svksPizJqG+BOoYqOae9EdhO3B3W3I9fKjegmXCtkRfwjvS7AmC+BOwGbJ9EdZMf6g7JJuMnWQ4yqWQ40LQtbcAD4xm8F30.hbwOEF.Qt3mBO.Qt3mBe.Qt3mh..Qt3mhP.QtXmBca.Qt7EnYYW.QtjfCMfHWRvgAPjKI3vCPjKI3vGPjKI3H.PjKI3HDPjKA3n97GbxwiW2+WQgjHWRgkllHWRgkglHWRgkGMQtjBKeZhbIEVAzD4RJrBoIxkPXoaSSjKeYD4p97V3Rj3iz1rleQt7YqmdC+hbwGbd7KxEev4yuHW7AW.+hbwGbg7KxEavsTxLlD4xm9aWU.udIUCEdRi3R4Ar2TMhMkyOEH9TN+TfXT47SAhSkyOEHVUN+Tf3U47SAhYkGHPCrHtUtDbfXW4RvAhekKAGHFVtDbf3X4RvAhkkKAGHdVtDbfXZ4AB0WIQWKWJrHZa4RgEQeKWJrHZb4RgEQmKWJrHZc4RgEQuKWJrHZd4AxH7jV.2KO.oUVAru7.15yV.+KmO3Dv.y4CNAbvb9fS.KLmO3DvCy4CNALw7.5BOExqeR0TgmPbw7Ptap1f3h47SAhKlyOEHtXN+Tf3h47SAhKlyOEHtXN+Tf3h4gBz.KhMlK.GFDaLWBNPrwbI3.wFykfCDaLWBNPrwbI3.wFykfCDaLOTn9JI5i4BgkgnOlKEVD8wbovhnOlKEVD8wbovhnOlKEVD8wbovhnOlGJjvSBXj4g.sxZDvHyC4pOai.FYNevIfQlyGbBXj47Am.FYNevIfQlyGbBXj4gDDdZ+Y+GvWadMTpFp7joQNY9bl4ts5FYk4xgQi7xbwvvqQlYtbXzH2LWNLZjclKGFMxOykCiFYn4bgwp5jsQNZtjfzHKMWRPZjmlKHHdMxTykDjF4p4RBRir0bIAoQ9ZtjfzHiMGFj0rQSTmMWZtPs1bo4B0ayElKOTyMWZtPc2bo4B0dyklKT+MWZtPM3bpIRendK4zgymyJPStbZw4yAgqVv4ziyYmNONM4b9oiSWNme53zly4mNN84b9oiSiN+gn6r7rdwiGmkaYu2Kmkx84Y8mLLpHK+3AQIoVmdR0J+wxONaCIkSc7nqtLZ733R1s28zzh3zwIEWs34T6cdZ+jxwnaQTQ73xQ+nr9W0cP16Ssr2ski0qRFmb9v3pEZa0MaX1zO8rrg8qF0pcw53AIC6eKgisVab+lVmkTzavp4cmUvqkk37t6Kmcw+oWbQbuh4vtWqm82W57oLn7WylTjj9lmGUjmTUX7ESF0MaRdu3RRRKuEYb0cU6XUE50K29lhmciS6e8B+ux+lsQmpksmsQma1n0nnd4Y+Zurzh7rxAr7N9qWSISoQihqta74UKeni06hFNobEsZ096aaMJoexu1qW0oh+TI6qNFEPLt.wnAhw.DiGPL9.wDbuw77xE+KSJxFM8wjxUb1SOIpHp79vmlFUdW102QZ8+Afq+BDG
And here's one with 128
HiseSnippet 2002.3ocyc1sbSaDE.VJDAjvOEloO.9RXFJi0t52oWfa9qSFHPlZJS4JphrR7NXq0i7Z.Oc5CPuqOR7HzGg9HvaPqjkisbh2P7dNqL4BlneNq9jzlyQ6mLdONiGmLbHOyvbqWOdPhg4csZONUzc2tQrTiC2yvbaqyFwdmHYnvXmwChFNLoigo4M94hsat0lFS94KOamndQowIyWkgwa3r3jWv5yDyW6wsdNqWuCh5j7ZV+J6sSqCi4o6x6wGkyxMrZZLHJ98Qmk7xnhcaCKCyateGlfm0VDkCS99rCuy31c4eLsb+eCaH6jdIEKXazNugJWswtcY85b74mmCMLL2734m02n7r96sNh0gMa8yO6evjMzXdDUuFXtwhHs4BHYKCoC385Tz.RvyrBdaVh2CsZGmwFHlukB1ti0gohjrSixurWEqx80v7yV6xy2gTwS6G89jCxxWXV.OJnYymzH+ed7Od5nzXAim1fm9RtH4UoO5wa+Gau01+41Mt3lN8zktshCSFuWujrkt4h6zYWUfOJcT+SRxdRiOD0aTxrcL+zewqu275c8Mt7rtxNxSOLkId0fjoKO+Nf8RtCXL8xV98heeJg46pXxch6O8NQ6drNIYFr7F4VVOOkehswD3q1+23ZGLARvTHA6.IXWHA6AIXeHAGrBAuyHgfmNI3srJWvFV3DXgSgEtCrvcgEtGrv8gE90499ClF9t79mv2g+oIMvcrNeQa3MAAdSPg2DNvaBW3MgG7lvGdSD.IYRnZAe6xhFMAEsMnnIfhlBJZGPQ6BJZfIgBUK7sOu5QSfwaCLdBv3o.i2AX7t.iGgbNgp1D2cdgjlHzF1HzFDDZCJBsgCBsgKBsgGnbK9fhN.TzfpDQ.UIh.pRDATkHBnJQDnoi7AFe.v3AVNh.rbDAX4HBvxQDfkiHXj2wGg1H.g1.g5RDDpKQPntDAg5RDDpKQ.8jpDPOoJATsHBnZQDP0hHfpEQAUKhBpVDEZ9HfOdJwCX7.qGQ.VOh.rdDEX8HJv5QTLx6fvygR7PnMPntDAg5RDDpKQQntDEg5RKs+wud3dQhnhWcyz2bvwY7AIYBVwKsvbujOvhSJeQNaYsWxv2K3Clru8GvSKdOCl2r7XeuyeMOQoI8llTZxu6Z7opGvwUW3irNhtyWwe0paB6rthpqwbyJGqa8UNV1EGKKyoGmxe4hM43VW3nNt0fnr7luxwYF5lMt7Q+JdMJxOSkcHru30f2doqAG1xXEffTEh21Z8.AsJDr0DDNUf3yYqIHj26+vV0FDdR6STiP3KsOQMBQfz9D5Chk9Z3j0q3s0IFxyUTqXHOaQshg77E0JFRyX74SpSLjlyndwPZVi5ECo4MvDiaeMeMtxxcvZ0OZ1y+TyTIOUx5jJ4YVVmTIOQy5jJWYT0huFoxSVu80JU9x5suVoJPVucMQ0EFM1KhNY5nwte00HMeUdmroGPKyNKYfZW0SjsjKNeELjlfBBFhjOItzo6pyFUZ0k0OaNRK.u9YqZJq+o50s+czZmspItZv91hsERe8km8MEaUSh05s000sulXIRoXo+1bsHVJTAwRD7F57rOuWqtYI7ovVA0R3SAQA2R3SAUA4R3SgiB1kvmBWEzKgOEdJ3Whf+vUCUvuDhXT4yK3pKXRGbXqfgIcvAQAES5fCpBNlzAGNJHYRGb3pfkIcvgmBZlH5YvjgvzLgJUK7QOEjmIcgkMLQS5BKBLSS5BKJLUS5BKGXtlzEVtvjMoKr7fYahnGaSg3aahb8FE62svnKahutIBfgXuHb136aBO3H3KbBO3n3abBO3bvW4Ddv4huyI7fyCeoSD3RmnW3SyTg8o5P5zr++fr5VmnnOh5.ErNgOEgJXcBcJHMUv5D9TXqf0I7ofnf0I7ofpf0I7ovQAqSTML7UeEzNoCNBTP6jN3HTAsSZfiqHuQ8xgsBZmzAGDEzNoCNnJncRGb3nf1IplFVoOLuS5Bq.XdmzEVgv7NoIrthDNqUrrg4cRWXQf4cRWXQg4cRWX4.y6DEMuSKNDRe7EOQUYnrA3Kdhh13rCwW7DZvsPRKjDOgGb13KdBO3H3KdBO3n3KdBO3bvW7DEt3ImK7ocpdEOQbUP7jC5Cp1SAwS3SguBhmvmh.EDOgOEgJHdBcJnMUP7D9TXqf3I7ofnf3IGML.VWEDOoCN7TP7jN3vWAwS5fi.EDOoCNBUP7jF3PdtiZlCaEDOoCNHJHdxQSiqzEl3IcgkGLwS5BKeXhmzEVAvDOoKrBgIdRSXsX5nUW7jtvxFl3IcgEAl3IG8HdRddK00V3nxPY8vW7jCZiy1GewS3AW.9hmvCtP7EOgFbKj.CIwS3AmM9hmvCNB9hmjA2kmRPdf0Q7Ni5EIVb1JoXZYY5FX4OoX0oEjh49izgLw3pWQWgovjlKcJLYoSfFWSben0wLQb2ky6FKgWCCsy6zIDl6Ys+omlDKlC6lVG7apN6urBn7K7QBV5YGEIxXE0Ce4n9s4ixhSxIIMuGxvhNUaT7EWV4xMOulY6jzNSV3+x+Y5FsKV1b5FsOeiF8ihy3uKt7a9rhoblaOYM4LkNY11YKqiJVtwruuzrrZ9zlF8YcXuKNt3RwOjy9xignPLTEhwQgXbUHFOEhwWgXBtxXJlDh9oQBd+x+LIeEGu+juy4LM2OMJuW1jdjF+OTb78yB
The project in HISE is a little laggy but the exported standalone seems to be fine.
I also noticed that if you hide controls then the interface is a lot less laggy.