Any tips for building GUIs?

This forum is for developers of Rack Extensions to discuss the RE SDK, share code, and offer tips to other developers.
Post Reply
sschoener
Posts: 11
Joined: 25 Dec 2020

25 Dec 2020

Hello there!
I'm new to the Rack Extension game, and in fact was quite pleasantly surprised when I saw that the SDK had finally become available to everyone. Contrary to all I usually expect about tech, it's all been smooth sailing: especially thanks to the awesome cmake setup by a forum local here!
Almost all of the annoying parts of the process are covered well... except for the GUI part. Are people actually manually editing the LUA files to setup their GUIs? Or am I missing some tool? The SDK's documentation does mention a rack extension designer in some places, but that doesn't seem to exist anymore. Similarly, it hints at some tool called Gorilla Engine but then again that's from 2014 and their signup page tells me they are still in beta.
I expect the answer for my tooling question to be a firm and disappointing "No", but maybe someone here has a workflow that they like for building GUIs?
Thanks for any pointers :)
Last edited by sschoener on 26 Dec 2020, edited 1 time in total.

User avatar
fieldframe
RE Developer
Posts: 1037
Joined: 19 Apr 2016

26 Dec 2020

Rack Extension Designer was... poorly named, among other things. It was a simple preview renderer that kind of felt not so much like beta software, but more like an internal proof-of-concept a co-worker might have whipped up to test something out. You'd feed it a set of manually-edited scenegraph files that make the current manually-edited LUA workflow look easy in comparison, and it would render all the referenced Collada files together. Something would invariably look wrong, and so you'd dive back into the scenegraphs to try and find the problem on your own.

Anyway, it's a shame Reason Studios never took the concept any further. The old 3D workflow could have been stellar with a (vastly) better developer experience, but I guess they decided it was unsalvageable and went all in on the 2D LUA workflow. The 2D workflow itself could be stellar with an improved developer experience (and an actual designer app), but I get the sense the Rack Extension ecosystem is in something of a limbo state right now.

User avatar
Billy+
Posts: 4157
Joined: 09 Dec 2016

31 Dec 2020

So umpf was built using ujam gorilla engine, there's not much real information but you can signup here

:- https://www.ujam.com/engine/

It's a bit strange as it looks like you are free to use it but license fees are on the final design depending on sales?
IMG_2355.PNG
IMG_2355.PNG (271.52 KiB) Viewed 1893 times
Would be curious to know if free RE's would have to pay a fee?

I'm sure uJam hangs in the forum from time to time would be nice to find a bit more information directly from them. Anyone got a point of contact that could give them a nudge to make comment?

User avatar
selig
RE Developer
Posts: 11685
Joined: 15 Jan 2015
Location: The NorthWoods, CT, USA

31 Dec 2020

My approach with the 2D workflow is to create my panel layouts in a vector based app (Graphic for Mac) and use my knob/button filmstrips (cropped) as the placeholders. This allows the grid positions to match so all I have to do to lay out the panel is type in the X/Y values from the panel into the .lua file.
Wish there was a wysiwyg interface, but this isn't so bad. Worst issue is the error you get when there is a widget overlap, which is basically non-descriptive and looks fatal. Took me a bit of time to realize it was a simple overlap issue - had to dig through the build report in Terminal to find it, and now things go a little smoother…
So though I don't follow this rule strictly, I'd say it's good advice to finalize your layout/design as much as possible before beginning the built process. Like with many things, it's easier to change your mind BEFORE you start building than after…
Selig Audio, LLC

User avatar
aeox
Competition Winner
Posts: 3222
Joined: 23 Feb 2017
Location: Oregon

31 Dec 2020

Billy wrote:
31 Dec 2020
So umpf was built using ujam gorilla engine, there's not much real information but you can signup here

:- https://www.ujam.com/engine/

It's a bit strange as it looks like you are free to use it but license fees are on the final design depending on sales?

IMG_2355.PNG

Would be curious to know if free RE's would have to pay a fee?

I'm sure uJam hangs in the forum from time to time would be nice to find a bit more information directly from them. Anyone got a point of contact that could give them a nudge to make comment?
The last time I tried to sign up (Jan 10th 2020) I was told that since I don't have a background in virtual instrument development, I don't qualify for access.

User avatar
Billy+
Posts: 4157
Joined: 09 Dec 2016

31 Dec 2020

aeox wrote:
31 Dec 2020
The last time I tried to sign up (Jan 10th 2020) I was told that since I don't have a background in virtual instrument development, I don't qualify for access.
That's going to be a barrier for beginners then. Shame really.

User avatar
joeyluck
Moderator
Posts: 11029
Joined: 15 Jan 2015

31 Dec 2020

Billy wrote:
31 Dec 2020
aeox wrote:
31 Dec 2020
The last time I tried to sign up (Jan 10th 2020) I was told that since I don't have a background in virtual instrument development, I don't qualify for access.
That's going to be a barrier for beginners then. Shame really.
I believe that is for access to Gorilla Engine specifically for building VST/AU, etc. and not Gorilla Engine that is included with building REs. At least I don't think RE devs have to apply separately?

sschoener
Posts: 11
Joined: 25 Dec 2020

31 Dec 2020

selig wrote:
31 Dec 2020
So though I don't follow this rule strictly, I'd say it's good advice to finalize your layout/design as much as possible before beginning the built process. Like with many things, it's easier to change your mind BEFORE you start building than after…
Yeah, that's great advice! I ended up using the same approach: I have a mock-up png for every control, then compose it in an image editor and manually write it out. I've basically spent the last week building a few player devices and for the first 4 it was just plain painful. It got so much simpler once I (a) had a collection of controls built and (b) started doing the design first. The last few I built now were much less tedious and troublesome :)

User avatar
aeox
Competition Winner
Posts: 3222
Joined: 23 Feb 2017
Location: Oregon

31 Dec 2020

joeyluck wrote:
31 Dec 2020
Billy wrote:
31 Dec 2020


That's going to be a barrier for beginners then. Shame really.
I believe that is for access to Gorilla Engine specifically for building VST/AU, etc. and not Gorilla Engine that is included with building REs. At least I don't think RE devs have to apply separately?
Correct :D

sschoener
Posts: 11
Joined: 25 Dec 2020

31 Dec 2020

"RE devs" here meaning people who have a registered company with Reason Studios? Or are there any additional steps required? If so, where do I find them?

User avatar
ekss
RE Developer
Posts: 506
Joined: 09 Nov 2015
Location: Stockholm
Contact:

31 Dec 2020

Gorilla Engine 2.02 is available via the old dev page at: https://www.reasonstudios.com/developer/ there is also a link to the RE forum where you can search info and ask questions. If you're not registered and accepted as a developer by RS you will not have access to those pages.

For GUI creation I use Photoshop for panels and for measuring the placement of knobs etc.
For filmstrips I use Cinema4D to model and render knobs (sometimes also panels or parts for the panel), then stitch together as knob strips with TexturePacker.

User avatar
Billy+
Posts: 4157
Joined: 09 Dec 2016

31 Dec 2020

sschoener wrote:
31 Dec 2020
"RE devs" here meaning people who have a registered company with Reason Studios? Or are there any additional steps required? If so, where do I find them?
Actually it's fairly simple to get accepted as a developer, you just need to register.

User avatar
Billy+
Posts: 4157
Joined: 09 Dec 2016

31 Dec 2020

ekss wrote:
31 Dec 2020
Gorilla Engine 2.02 is available via the old dev page at: https://www.reasonstudios.com/developer/ there is also a link to the RE forum where you can search info and ask questions. If you're not registered and accepted as a developer by RS you will not have access to those pages.

For GUI creation I use Photoshop for panels and for measuring the placement of knobs etc.
For filmstrips I use Cinema4D to model and render knobs (sometimes also panels or parts for the panel), then stitch together as knob strips with TexturePacker.
Sounds like you could be the right person to provide the OP / thread with a few tutorials ;)

sschoener
Posts: 11
Joined: 25 Dec 2020

31 Dec 2020

Thanks a bunch for the help so far - turns out I just assumed there were more steps, but once I clicked 'save' on the developer account info page I got access :)

Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 1 guest