Apple Silicon, macOS Big Sur, and Rhino for Mac

TL;DR: Apple Macs are transitioning away from Intel chips to their own Apple Silicon. The next version of macOS - “Big Sur” - will support these new processors. Developers will have to make changes to their code to support these new Macs. The scope of work for Rhino for Mac is currently being investigated.


Yesterday, during the WWDC Keynote, Apple announced they are beginning the transition away from Intel processors to their own “Apple Silicon” SoCs, which are ARM processors, like those found in iPhones and iPads. Apple plans for a “two year transition” and outlined the tools and technologies for developers:

The upcoming version of Xcode (12) will also contain the SDKs and tools necessary to help developers transition to the new processors. Apple claims that this effort takes “about a week or two of engineering effort.” They have also created prototype hardware with the new processors for developers, which they plan to ship shortly.

After the Keynote, more details were revealed in the Platform State of the Union. One of the key technologies for this transition is called “Rosetta 2,” which is an emulation layer built into macOS Big Sur that allows applications targeting Intel processors to run on the upcoming Apple Silicon Macs. (Rosetta was used during the transition between PowerPC and Intel, back in the day). Apple is claiming great performance running under Rosetta, but it is meant as a transitional technology, not a long-term solution. During this presentation, they also talked about upcoming patches to key open-source projects - like Mono - to help the transition along.

Ok, what does all this mean for Rhino for Mac?

The short answer is: we do not know yet and there is a lot of investigation to do before we understand the scope of work. At this juncture, we have more questions than answers.

One aspect of all this that we are very curious about is the fate of OpenGL on the Mac platform. Two years ago, Apple deprecated OpenGL in favor of Metal. Rhino for Mac has yet to make the transition to Metal (this is a significant project). We will be curious to see how this move to Apple Silicon impacts our efforts on the Metal front. During the Platform State of the Union, Apple stated that they have a patch to the open-source Blender project ready to help support Apple Silicon. As Blender is also an OpenGL application, this is interesting news for us.

In the past decade, we’ve made major efforts to write Rhino as a cross-platform application. We’ve invested in tools and processes that enable us to deliver Rhino on both Windows and Mac, as well as support a cross-platform plugin architecture. This adds complication as all our tools and processes must take this new target architecture into account.

Rhino reads and writes many different file formats and we rely on many third-party libraries to support this. These libraries are not under our direct control and will have different constraints to transitioning than we do. These libraries often target older versions of macOS and sometimes require effort on our part to support.

What next?

We have access to the Big Sur beta and are currently testing and investigating. We have applied for prototype hardware, but are awaiting a response to see if we are selected (we presume the number of developer-preview Macs is limited).

As usual, we plan to be as open and transparent about this as we can as we all get a better understanding of the issues. It would be irresponsible of us to make promises we cannot keep. Despite Apple’s evident and considerable efforts to make this easy on developers as possible, we are deeply skeptical that this will require only “a few weeks of engineering effort” on our part. This is a huge transition for Apple and it asks a lot of developers. In the coming weeks and months we’ll be getting a better technical understanding of the effort and we’ll share our progress here.

Yes, but this one goes to eleven

One last random detail: macOS Big Sur’s version number is 11…so for those of you who still consider macOS to be “OS X”, well, you’re out-of-luck. Let’s all hope the transition to version 11 isn’t as painful as a spinal tap.

20 Likes

I always suspected the Rhino for Mac as a reason for a buggy Rhino 6! We have never seen before so many SR’s and counting! I see the same in other software that I’m using - BricsCAD. They also started developing for Mac and Linux with minimal success.

That has nothing to do with Mac development…

3 Likes

sorry for this : Fk!

but this explain so good why you shouldn’t buy a Mac.

I don’t know how big is the Mac market but from my point of view McNeel shout leave it now and finally concentrate on win.

@Max3 we discussed why not use a Mac: this is the final score!

2 Likes

Can you please stop saying this, it really annoys me. If you don’t like Mac don’t use it, but let others use what they want. Nobody forced McNeel to develop Rhino for Mac, and I know it’s not been easy, and that’s the main reason I upgraded to V6 for Mac, to support them, because from the performance point of view it is almost unusable for me. We are already suffering all those issues and I don’t think it is ok to come here and ask McNeel to stop developing for Mac, you’ve done it at least two times…

9 Likes

Why do you continue to support apple? They don’t care about their customers or developers.

2 Likes

hmm, it would be a big issue if Mac version stopped at this point, as most of my students work on Macs. So hopefully apple is somewhat right with their ‘two weeks of development’. But it is doubtful that applies to a complicated product like Rhino

3 Likes

This should be enough for most apple users to switch. You’re welcome I just saved you thousands on under speced and overpriced hardware.

Thanks for sharing your thoughts, @dan!

I really doubt that! This might rather have to do with a whole suite of new features that were integrated (maybe a little early in some cases). Somehow I doubt that you’re a Mac user, but consider this: there already was a Rhino 5 for macOS, which by the way also ran smoother, but again could also do less than version 6!
I don’t know about BricsCAD, but there are a whole lot of cross-platform CG and CAD programs that work as well on macOS as on Windows.

Does it? Who really knows what is going to happen in 2 years? Maybe this will be great, maybe it won’t? Why do you care? At least Apple cares to deliver a carefree all-around experience. I mean Windows is developed by the Office division nowadays, which might show how much Microsoft still cares about this product. It’s all about the cloud for them, because that’s where the money’s at.
Furthermore, it’s not the macOS users fault, if you’re not satisfied with your Rhino experience. I use it daily and I must say it works fine for me, and if there is a bug, it’s usually quickly fixed.

Obviously there is a market! I’d say they care as much about their customers as Microsoft or any other company really. Do you develop for macOS or how do you know that they don’t care about their developers? So changing something about your hardware, translates to you not caring about your developers? How much do you even understand about ARM vs. Intel vs. AMD to come to such conclusions?

It’s not like they’re going to drop Intel support in the next decade or so. It was even mentioned that they’ll be releasing another generation of Intel macs.

Really?

When I look at this thread, it seems to me that many people are saucy, because they can’t afford a mac? Am I right? :smiley:

6 Likes

Sure thing, But I was referring to if McNeel stopped developing Mac version of Rhino. In that case the market for MacRhino would die out sooner or later and then it makes no sense to teach Rhino anymore at the academy I work for. Can’t force students to all switch to win. 80% or more work on Macs.

1 Like

I’m sure McNeel won’t drop us macOS users like that! I recon the licenses that would be lost to other softwares are motivation enough. It’s not like there aren’t any even free alternatives (FreeCAD, Blender, etc.).

1 Like

Wouldn’t they just run bootcamp? Or did apple stop supporting that as well?

You obviously don’t know what you’re talking about!

1 Like

most of them run pretty old hardware, so that’s not an option. Also I don’t want to have the hassle to teach them that. Teaching Rhino is more than enough

Deep breaths…breath in, breath out; in, out…

Where’s @marlin when we need him… :wink:

3 Likes

Probably sailing. I’m admit that I’m jealous.

2 Likes

Funny…that was my guess. Really!

1 Like

I think that, as an user, one is totally free to advise McNeel on any subject one sees pertinent, whether it annoys you or not.

Along those lines, let others say what they want.

I will do just that, if McNeel would stop wasting resources on Rhino Mac, Rhino for Windows would be so much better. Now, more has to be wasted due to this transition. Bad news.

Now I have Macs & PCs and I develop on both system. It’s not very different because I don’t use Xcode at all (I use VS & handmade CMake on both platforms). I believe the issue is about reusing code. Middle-sized software companys suffer from it mostly, as they will judge whether it’s worthwhile to maintain two code bases. It also has an impact on out-of-maintenance 3rd-party libraries as you may imagine Rhino on ARM would have less support for various formats.

Btw it seems the Metal on Apple Silicon has some different APIs from the previous version, probably due to the new graphics architecture.

Commercially, adopting a new chip is, sort of, to control the supply chain better and unify platforms, escalating the productivity of iPad. I can imagine running Rhino ARM on my phone and I am excited about it…

1 Like