For some time now I have been compiling all of my plugins for Mac as “Universal Binary” for both Intel-Mac and native M1/ARM with no complaints from users.
Today, however, a user reported that when two or more of my plugins are open at the same time, running under Rosetta 2, that the UI (graphics) become scrambled on both plugins. He sent me multiple screenshots of my plugins showing his screen a complete mess. He said all versions (VST2, VST3 and AU) do this.
I asked if he could try a few other things and he replied that when run as native M1/ARM the plugins work properly.
So this seems like a problem in Rosetta 2 - at least for this particular user - but I want to make sure it’s not something in my plugins. As said above, it works here and no one else has complained. Anyone else come across this “scrambled UI” issue when multiple plugin instances are opened?
My plugins are using OpenGL2 and NanoVG. The reporting user is running an M1 with OS Monterey, 12.5.1.
User has further indicated that the issue occurs when the plugins are resized (via corner drag). They display properly if opened and left at 1:1 size.
So, apparently, there is a “redraw” problem in Rosetta 2 - possibly unique to this user - if multiple plugin instances are open and any one of them is resized.
Anyone else come across this issue?
I did a brief test and couldn’t reproduce the issue. Nevertheless I’ve seen nasty UI glitches with OpenGL on macOS at times and wouldn’t be surprised if it doesn’t work well under Rosetta. OpenGL is deprecated by Apple after all
Thank you for the reply.
Yes, I know. Deprecated for new development but - so far - still supported, even on M1. I did build some plugins with Metal graphics awhile back but immediately received complaints from some users that they didn’t work on their older Macs - so I switched back to OpenGL which, for the most part, has been working everywhere.
Thank you for checking. I can’t reproduce it either and this is the first report I have received of any such issue.
OK, so do you recommend only using “Metal” graphics for Mac builds or something else?
The safest option, especially if you don’t need high FPS or if your plugin ui is quite small is to use SKIA in cpu mode, but you may need to build skia yourself to support old operating systems
Thank you for the suggestion. I have tried SKIA with CPU but found the graphics to look blurry/out of focus compared to the same plugin running NanoVG and OpenGL2 - especially with bitmap images when the plugin is resized >1. The older SKIA interface had a control for interpolation smoothing but I don’t see that option in the current version.
Supporting Macs, overall, has been quite frustrating. The overwhelming majority of complaints I receive are from Mac users. So many constantly changing systems with incompatible OSs and hardware - and now with Rosetta and ARM in the mix to boot. I don’t have these issues (and almost none overall) on Windows.
How are the rest of you dealing with Macs? Do you offer multiple versions of your plugins or is there some “one size fits all” best compromise (like using CPU graphics)?