I'm working on a faithful skin upgrade for PatchWork* including QOL features such as per-param style selection (see pic)

Official support for: bluecataudio.com
Post Reply New Topic
RELATED
PRODUCTS

Post

PatchWork is already so good, but there's a lot more workflow-friendly features I wish it had. Well it turns out that Blue Cat Audio lets anyone modify their plug-in skin files (or create brand new ones) I've taken the plunge learning this stuff (KUIML, angelscript, basic graphic design, etc) and have been working on my own skins for Blue Cat Audio plug-ins (mostly PatchWork) for some time now.

While as of right now I still consider this a personal project, I wanted to share my progress here in case anyone is interested; if anyone wants to try my skin for themselves I'd be happy to share an alpha version**. Or if anyone wants to give feedback/suggestions for the project I can take them into consideration (if they're good lol)

FYI, I'm not skilled enough, nor I really interested in building an entire new skin from the ground-up. So, I've opted to modify and re-use existing assets from PatchWork's existing skin files whenever possible. In other words, it's not going to look insanely different. But I think that's good since most users probably are already familiar with the default skin for their BCA plug-ins, so they shouldn't find this new skin intimidating, if you will. Anyways, here's my first screenshot!:
Screenshot 2024-09-29 022917.png
As you can see, I managed to get per-parameter style customization working (mostly 😅 .. couple bugs still to work out). Additionally, you can see pictured are some other UI changes already made from the default:

- Input meters paired w/ output meters (this makes gain-staging more efficient)
- Chain gain knobs change color based on what they're doing; blue for gain reduction, yellow for gain boost, and white for 0dB. This makes it easier to tell at a glance how you have each knob dialed, rather than always hovering over the knobs and viewing the text readout in the LCD up top.

There are also some less obvious changes that, while maybe appearing insignificant on writing, are really nice to have workflow-wise:

- Toolbar changes (I kind of broke the toolbar which is why it's not pictured here, but I have plans for adding new functionality while retaining the existing features from the default skin)
- Average/Sum button changed to toggle button (rather than a drop-down menu)
- Mouse button 2 (RMB) on a slot with a plug-in in it toggles its window to open/close
- Plug-in windows open at 0,0 by default (top-left of your screen) rather than over the center of the PatchWork window
- Safe installation and easy uninstallation; this skin and its binaries will exist alongside and reference files from PatchWork's default skin, without modifying them. So, if you try this skin out and run into any compatibility problems now, or in the future, you should always be able to switch back to the default skin with no issue. Uninstallation of my skin will be as easy as deleting the skin file and its accompanying binaries folder.

*while PatchWork is my priority now, I am willing to do skin mods for other BCA plug-ins in the future. I don't own all their products yet (probably the most popular one they have I do not own yet is Axiom) but I own many I'd love to make some changes to, such as MB-7 Mixer or Remote Control 3..

**if you're a Mac/U2B user, I cannot promise you'll be able to use skins I create. If it's possible without my own apple machine I'd love to make a version of the skin you can use, but I honestly don't know what is involved. What I do know is buying my own macbook is not in the cards right now 😬
You do not have the required permissions to view the files attached to this post.
Last edited by JTBrownell1998 on Thu Oct 03, 2024 3:07 am, edited 1 time in total.

Post

Is it possible that the patchwork main window doesn't start in die middle of the screen?
I think this is a stupid default place...

Post

rasmusklump wrote: Sun Sep 29, 2024 9:55 am Is it possible that the patchwork main window doesn't start in die middle of the screen?
Do you mean like when you load PatchWork as a plug-in into your DAW? PatchWork opening in the middle of the screen then? If so, I believe that's up to the DAW to decide because the PatchWork window is nested within the DAW's window. Idk, I think if that is your issue you may be sol since even Blue Cat Audio can't change how that works

Post

No, I mean the standalone app.

Post

I think the standalone app's window starting pos. is determined by the operating system; you may be able to change it w/ Windows registry tweaks, but idk how you would do this for only PatchWork without changing the starting pos. for all your other programs also

Post

JTBrownell1998 wrote: Sun Sep 29, 2024 7:12 am PatchWork is already so good, but there's a lot more workflow-friendly features I wish it had. Well it turns out that Blue Cat Audio lets anyone modify their plug-in skin files (or create brand new ones) I've taken the plunge learning this stuff (KUIML, angelscript, basic graphic design, etc) and have been working on my own skins for Blue Cat Audio plug-ins (mostly PatchWork) for some time now.
Nice! Isn't it a bit cumbersome to manually setup the style for each macro param?

Post

rasmusklump wrote: Sun Sep 29, 2024 11:14 am No, I mean the standalone app.
The standalone app indeed does not remember the last used position, like most applications by default, actually.

Post

Do you mean cumbersome to setup in KUIML or cumbersome for the end-user who is using the skin and making a preset? For the latter: quite frankly PatchWork is so powerful and versatile that I use it to host almost every VST I use. And of those VSTs probably ~75% of them I don't ever have to open those plugins' GUI; granted those plug-ins allow the host to automate all its important parameters (most do nowadays), you can map up to 40 controls that you need in PatchWork, re-arrange them and set their min/max values with the handy Params Map Editor, use PatchWork's in/out gain to gain stage, turn on a parallel chain w/ phase flip for instant null testing, etc etc. These features alone already have completely changed the way I work with most VST effects and even instruments.

That said, there's a lot more I think is possible that while I can't guarantee it will be totally backwards compatible with legacy versions of PatchWork, I do think I can get it working as a new skin which can exist alongside the default one.

Now, the reason specifically why I think individually-styled macro parameters are handy (and worth any extra time it takes to setup) is simply because there's all different kinds of parameters from the 3rd party VSTs that you'll want to control. Some might be knobs that you want to go from 0-100%, but some might be a toggle button, some might be a gate button, some might be a symmetrical knob (init value of 50, like the gain knobs in PatchWork itself), etc... nothing stops you right now from mapping those parameters to PatchWork's knobs, but I think having the buttons be buttons, symmetrical-knobs appear symmetrical and so on -- it's a really powerful tool for yours or anyone's workflow.

Right now I'm also looking at giving this skin user options to change the init value of a knob, ie what value the parameter will default to when right-clicked. Also, like the buttons, I want to add more existing BCA assets to the control style options, and some custom ones I designed e.g. LED knobs that show their number value right on the knob itself, knobs that are more fine, or more coarse, for controls where you want the macro to be more/less sensitive, etc

Post

New screenshot! This one is mainly to show my progress on the toolbar. Btw look how compact this skin can get; it'd be even smaller if I hid the meters and custom controls:
Screenshot 2024-10-03 074359.png
As you can see, the toolbar is where I decided to move the in/out gain knobs to; I feel like it's nice to have them close to the bypass and mix knob as this rounds out probably the 4 most crucial controls in any PatchWork patch. It also seems logical to have them sit above the meters for easier gain-staging.

Like with the parallel chain knobs, the In and Out gain knobs turn blue when below 0dB, yellow above, and glow white right at unity. They also, like the mix knob, give you a little text readout so you can see how much gain you're boosting/attenuating at a glance, without having to hover over the knobs each time.

You can't really tell from the pic but the mix knob also has dynamic colors; from 0-99% it gradually turns from blue to yellow, then white right at 100%

Most of the core toolbar buttons are still ready to use -- I removed a couple buttons such as Manual and About, since you can already access the manual or About section from the hamburger menu button (top left, above the columns button); it's also precious de-cluttering for a UI already filled with tons of buttons and other controls. I may remove a couple other toolbar buttons but don't want to go crazy; if I do their functionality will still be available via other means (e.g. a drop-down menu elsewhere)

Now, the biggest change is to PatchWork's LCD, which is now broken up into two LCDs. The first (top) LCD is now solely for the preset name + invisible menu button... and as you can see I'm testing a new feature! Just a simple text field under the preset name where you can click it to type a note about your preset, or whatever you want to write. For example, for effect patches you can write info about how much latency the plug-ins in the patch are adding, or a reminder to yourself to use (or "DO NOT USE!") certain controls. For instrument patches, you could write whether your patch is affected by pitchbend, modwheel, other MIDI CC, you could write your intended key range or keyswitches, etc.

The 2nd (lower) LCD shows info about what control you're hovering over (top line) and, if applicable, the value of the parameter (bottom line). In the default skin this text readout is given only one line on one the LCD, whereas in this case I've dedicated LCD 2 to this; the main reason being so the readout for the parameter value (bottom line of LCD 2) is always in the same place. If you have this readout on only one line, then let's say, for example you're modulating "Ctrl 1: 100%" and "Control 2 (modwheel): 100%" then the values (100%) end up in a different spot on the LCD every time, depending on the lengths of the control names. IMO, having this value in the same space every time is easier on the eyes and makes for a better workflow.

That's basically all I've got for now; some things will end up changing visually but I'm happy with how the toolbar is coming so far.. any suggestions are welcome :tu:
You do not have the required permissions to view the files attached to this post.

Post

I forgot to mention that I am going to add the "Previous Preset" and "Next Preset" arrows back to the LCD/toolbar; like with the opacity knob (just hanging out in the corner rn) I haven't found a spot where I'm satisfied with keeping them (yet)

Post

JTBrownell1998 wrote: Tue Oct 01, 2024 7:44 am Do you mean cumbersome to setup in KUIML or cumbersome for the end-user who is using the skin and making a preset?
Yes, I definitely meant making a preset :-).

It is in the plans to add a few options (at least to specify if it's an on/off button, and also modify the default value), but definitely not as extensively as yours for the moment, which looks great by the way!

Glad that you like using the new macros parameters. It was quite a bit of work to get done and make it work with most plug-ins but I am glad to see that it is used to simplify existing plug-ins, it was definitely the intent! 8)

Post Reply

Return to “Blue Cat Audio”