sdatkinson / NeuralAmpModelerPlugin

Plugin for Neural Amp Modeler

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[FEATURE] UI Reskin

yakolokol opened this issue · comments

all-3

Hi! I really appreciate your work, but have an idea how to improve the UI and create some skins or more vibe. I described it in more detail on reddit →. And here I will add pictures to attract your attention and arouse your interest.

MODERN

TWEED

VOX

I will be glad to work together, I still have a lot of ideas about skins and visual in general. Thanks!

Thanks for getting in touch. These are really cool!

Are you able to help with the implementation? While this looks incredibly cool, it's probably not a priority for me at the moment--it's more important for me to squash some bugs and get a few more features in place.

If you're handy with the code and are familiar with what sorts of artifacts are needed, then I'd be happy to work with you to take a PR for this.

Thanks for getting in touch. These are really cool!

Are you able to help with the implementation? While this looks incredibly cool, it's probably not a priority for me at the moment--it's more important for me to squash some bugs and get a few more features in place.

If you're handy with the code and are familiar with what sorts of artifacts are needed, then I'd be happy to work with you to take a PR for this.

Thank you! Glad to hear it :)
Actually, i'm only a 3d designer/artist, so I can't code. But my friend is a coder, so he would like to have a try. But we need some kinda readmy or guide, because now he doesn't know where to look, where to start

@yakolokol, very slick looking skins! Is your idea to embed them in the NAM plugin and allow toggling between a few skins/themes or to add a functionality for loading themes?

@azzzy yeah, that's idea. Finding way to implement :)

Perhaps it would be useful if you provide a link to a folder of the assets, and then others can help with everything else.

@yakolokol I would like to help, so far I have found assets folder and place where they are loaded in code. Also there is a guide how to load additional resources.

If you can provide files as in assets folder you can change appearance of the plugin. I can write function which will change links to the assets when different theme is chosen.

@a-karah probably we'll need to redo layout of UI, not only change links

Yes you are right!

Right now I try to figure out the way to change themes because default theme is loaded on startup and I don't know if it is possible to change it later after initialization.

It all depends on IPlug2 library, so I started researching plugins developed with IPlug2 and so far don't be able to find any example of plugin which have ability to change themes.

@a-karah

I started researching plugins developed with IPlug2 and so far don't be able to find any example of plugin which have ability to change themes.

I'm not sure how it's usually done (I have minimal UI experience) but there is a Hide() method that can be used by controls as well as some higher-order functions that can have sets of controls do things (like how the EQ knobs toggle their disabled state), and actually the "Hide" example I shared demonstrates something similar as well.

Might give you some ideas?

@sdatkinson thank you for suggestion, I will have to try to implement it.

@yakolokol can you provide assets as in here, and knobs should be like this (it's an animation)

@a-karah well, as I said I thin it's not possible to change some assets, but I gonna render materials and you will see

@yakolokol I proposed an improvement earlier, and I might be able to implement the change. @a-karah If you're already working on it, I can also help you if you need :D

@HuoDx that would be nice, lately I got caught up on work and didn't had time to finish implementation.

Here's my simple todo list:

  • Chop up assets into smaller ones to bind controls
  • Create an interface (abstract class) for theme definition (that would be handy later)
  • Derive from that interface and create theme class for each theme variation where we need to bind all the controls and assets
  • Add switch statement in NAM constructor for switching themes

Although it seems simple I got caught on details when tried to implement interface and class definition for current default theme and got problems when tried to decouple code (IPNG's don't have default ctor, lambda functions passing references which is bind to NAM instance etc.).

As a hint on how to implement theme selection I wrote IPlug2 developer and he responded with this simple implementation.

Currently I hadn't submitted commits in my forked version, because I hadn't had time to get it to work.

It is up to you how to implement it, maybe there is other way around, fill free to contact me if you have any questions.

Hey, guys! Sorry, I'm a little busy right now to render all the necessary details. I will be able to comeback within the next few weeks. If you find any more details that can help, I will be grateful.

Hey, guys! Sorry, I'm a little busy right now to render all the necessary details. I will be able to comeback within the next few weeks. If you find any more details that can help, I will be grateful.

https://ml-sound-lab.com/products/amped-stevie-t-free

if you need an easy debugging ui, i suggest using the above as inspiration. your skjns look great but complex and maybe it'd be easier to design someyhing like thr linked so it's easoer to change on the go.

also how modular are these ui reskins or sre they monolithic?

related #385

@sdatkinson can you make a ui tag for issues?

@sdatkinson can you make a ui tag for issues?

Done & tagged

@sdatkinson can you make a ui tag for issues?

Done & tagged

tag #385 too

edit: theres plenty of ui ones actually

can there be some ui element that shows if it's a lite nam model or not? how much relevent matadata is stored in nam models anyways?

i know this is far-fetched but whatever. is there any chance we can set up a sort of bounty hunt / payment system where people pay money to the ui designers to have an amp model of choosing designed and added to this repo. we could make it so that thr .nam files carry metadata for what an amp is and if that model has been designed it will load into it. again, far-fetched. food for thought.

I hope its okay but I've started working on the redesign as I am not sure anyone else is right now. Working on getting a simple general layout and skin loading. Still very new to Iplug so Im trying to understand how its graphics backend works.
image

@sdatkinson do you see the amps ever needing more knobs before the reskin happens? once tonestacking occurs? or will we go with an amplitube 5 type thing

I think, as the tone is primarily baked into the NAM file, there won't be anymore tone controls but I can imagine there being more QOL controls. E.g. transpose, stereo input/output toggle, metronome as well as some very specific controls down the road as NAM is a very unique product that is very much not just a 'guitar amp sim'

image
this is how i envision it'll look like, longrun.

i know this is far-fetched but whatever. is there any chance we can set up a sort of bounty hunt / payment system where people pay money to the ui designers to have an amp model of choosing designed and added to this repo. we could make it so that thr .nam files carry metadata for what an amp is and if that model has been designed it will load into it. again, far-fetched. food for thought.

especially with this, hell i can imagine the companies themselves paying for them for free product placement

I think, as the tone is primarily baked into the NAM file, there won't be anymore tone controls but I can imagine there being more QOL controls. E.g. transpose, stereo input/output toggle, metronome as well as some very specific controls down the road as NAM is a very unique product that is very much not just a 'guitar amp sim'

@sdatkinson thoughts?

i think the longterm key here is to design modular gui, in case something happens. maybe even have nam files specify what knobs (parameters) they want e.g. eq knobs, overdrive, reverb. another way is to make many guis to fit as many knob combinations.

image this is how i envision it'll look like, longrun.

I'm not aiming to have this plugin ever look like that, no. That's something quite different.

That's way more work than I can take on, for something that I don't think is valuable for me to do. This is much more where I imagine company-backed products like those mentioned on my webpage take the torch. I've already closed other feature requests for 2 models, parallel models, etc etc.

I expect the scope of this plugin will stick with the features that I've already got in it. The only other one off the top of my head that I'm entertaining is stereo (#108).

I hope its okay but I've started working on the redesign as I am not sure anyone else is right now. Working on getting a simple general layout and skin loading. Still very new to Iplug so Im trying to understand how its graphics backend works. image

Happy to see you getting into it :)

I'd recommend that you aim for what's in the OP if possible. I don't have any particularly good graphics sense, but I do think that the OP looks quite good and I don't want to have you go down some path and be disappointed at the end of it if I don't accept your PR. I'd suggest reaching out to @yakolokol for artifacts etc and start by getting things laid out in the way that they did.

I think, as the tone is primarily baked into the NAM file, there won't be anymore tone controls but I can imagine there being more QOL controls. E.g. transpose, stereo input/output toggle, metronome as well as some very specific controls down the road as NAM is a very unique product that is very much not just a 'guitar amp sim'

The only one of those I anticipate is a stereo switch.

The other thing I'd strongly encourage is that as you get into it please aim to not just change the existing code but think about how it can be better abstracted so that future changes and customization is possible. See for example the tone stack abstraction I shipped a while back (#444). There's a parallel here in that even though I am not necessarily looking to change things up, I want others to be able to do so more easily.

yeah having a modular design allows for future changes with more ease i agree

The only other one off the top of my head that I'm entertaining is stereo (#108).

will you be able to pan it or? could you make left pan have different eq than right pan?

can name work with midi foot pedals in standalone? maybe ensuring that in gui would be neat

I'd recommend that you aim for what's in the OP if possible. I don't have any particularly good graphics sense, but I do think that the OP looks quite good and I don't want to have you go down some path and be disappointed at the end of it if I don't accept your PR. I'd suggest reaching out to @yakolokol for artifacts etc and start by getting things laid out in the way that they did.

Great thanks, I'll see if I can get the assets from @yakolokol. But, if not, I'll come up with my own designs as I do have a background in graphic design. I can submit them here once I have something ready but right now just working on understanding and abstracting the graphics.

Hi, guys! Probably, I will come back with assets this or next week.
And I didn't understand what is "OP"

Hi, guys! Probably, I will come back with assets this or next week. And I didn't understand what is "OP"

OP means 'Original Poster", I believe

hey, just seeing this now...
happy to help with what i've learned implementing Evan's skin.

hey, if this project is expanded id like to know if these amp sim models are creative commons and can be used in other plugins