Фреймворк-база(грубо говоря от чего плясать при разработке интерфейса). В принципе можно отделаться "лёгкой кровью" и написать библиотеку функций для облегчения при начале разработки, а в дальнейшем развивать эту библиотеку. Интерфейс(графический векторный) = программный код. Начальный уровень(линии, примитивные геометрические фигуры, поддержка польз.шрифта,работа с цветом, заливкой и т.д и т. п имеются ввиду функции для
@GFX) уже сделан разрабами рипера. Вам предстоит вроде бы легкая на первый взгляд(но это совсем не так) задача.Все это оформить в векторную картинку на которой будут buttons, slider, xy_pad, keyboard и тд.,а также поведение этих элементов(поведение и данные разделены). Структур для данных в jsfx нет(данные храним в файлахинклюдах в виде суперфункций(описаны размеры бэкграунда фона, цвет и тд и тп) , методы описывающие поведение возможны(суперфункция/функция/набор функций описывающая, что сделать, когда на кнопку наведен курсор и нажать левый клик например в какую секцию отправить результат) .(как Вы выше в ветке писали в рипере поведение слайдера линейное, хотя это не совсем так-представление слайдера линейное по отношению к другому слайдеру(т. е отсутствует изменение размера/масштабирования слайдера по отношению к другому в связи с этим траблы некрасивые получаются при линке и модуляции параметров, могу и ошибаться), но разрабы оставили возможность в реализации собственного контролла(подглядел в интернете формулировку :контролл- примитивный элемент графического интерфейса, обладающий стандартным поведением(выполняет определённые ст. действия и имеет стандартный вид) . Другой момент как реализовать окно(если плаг не однооконный или менюшку с пунктиками нужно замудрить) статично считать из инклюда готовый темплейт окна при вызове функции или отрисовать с помощью набора функций вызова и отрисовки окна и тд и тп(хотя вроде в jsfx есть нативная функция для меню) . Рано или поздно кто-нибудь задаст вопрос-хочу пилить гуй в другом редакторе и чтобы было по фэншую в WYSIWYG, не знаю возможно ли это(скорее всего да ввиде плагина-утилиты, но на jsfx ресурсозатратно скорее всего, проще на чем-нибудь другом) ,и тогда придётся пилить парсер( грубо говоря считыватель данных о структуре интерфейса из файла разметки элементов(xml, json,txt, toml, придумать свой вариант разметки, etc. ), жалко, что нельзя запускать сторонний процесс для облегчения жизни из jsfx для этих целей(может быть я упустил этот момент из виду), также со временем захочется сделать адаптер для порта в другой формат(uidesc(версия для xml или более новая для json разметки) например для интеграции интерфейса плагина в vst3). Каждый элемент это код, поведение и взаимодействие с пользователем и другой платформой это тоже код.Нюансов очень много, вариантов реализации ещё больше)) .В итоге бошка кипит и нихрена не работает, а если работает,то не так как ожидаешь, а ещё надо оптимизировать и протестировать. Больше всего для разрабов(спорный момент, тк дебаг скромненький по возможностям и скорее для музыкантов-энтузиастов больше) в jsfx бесит встроенный дебагер своим опционалом и информативностью(отсутствие трассировки,замер таймингов,проверки на утечку памяти(вообще не очень ясен момент работы с памятью, т. к инфы ноль, канешна жы губенку я раскатал, но все же капля дёгтя в их сторону, также минус отсутствие типов, хотя язык типизированный) , а вот разделение графики и ДСП очень даже хороший дальновидный шаг со стороны разрабов и отсутствие реализации кроссплатформенности тоже конечно плюс разрабам. Про реализацию самого процессора jsfx ничего не скажу, не знаю, но все равно очень даже ничего, так как в реал тайме возможности скриптов позволяют делать всякие разные выкрутасы со звуком.Где-то может и наврал,где-то фигни сморозил,лучше наверное все же для старта глянуть в код уже готовых инклюдов библиотек(где то видел, точно знаю есть), но все же согласитесь лучше досконально в совершенстве знать свою разработку пусть даже велосипед(сужу по себе по началу такую лапшу и море говнокода кодил), чем пользоваться и недопонимать чужой велосипед(хотя можно и свою разработку через три дня отдыха не признать). В плане концепции реализации: как? процеДурно или в псевдоООПе будем реализовывать код или и то и другое, какие модели(MVC(vst3sdk), или MVVM) .Во я портянку расстянул))) . Вообщем Удачи)))