Metal on Mac: where does development of Blender for the Mac go from here?

Is there any 3d app that is not available on macos ? Which one is available on linux and which are not ?

If you can answer these questions you can answer whether Apple cares about the desktop or not . Of course the fact that MacOS is considered the most highly regarded OS out there, by far, should have been enough of an answer.

For the average user, something being open source and cross platform has little meaning to him. He or She cares mostly about user experience and developers care foremost of making users happy to put food on their table.

And since Apple excels at making its own users happy, judging from their obvious success, I would not wait if I were you for 3d companies to port to Linux just yet.

Its funny to think that there are people in this thread that consider the possibility that a mac / ios user is far more likely to say “Hey Apple why you dont use opengl anymore” instead of “wow ios/macos graphics/games have really improved! way to go Apple !”.

It’s actually was Microsoft that had to catch up on developments, OpenGL usually got features first - in the form of extensions. It’s the standardization that took longer (these days). That low API overhead everyone is talking about? A lot of it is already possible today with OpenGL, not D3D. The difference is that these extensions tend to be vendor-specific, and developers are very conservative when it comes to new features, especially because those tend to be unstable. In general, it is (driver) stability that D3D has going for it, not features.

For D3D12, in order to not be left behind with hardware developments, Microsoft has created so many forward-looking feature levels for D3D12 that no actual hardware supports it fully. At that point you have so many exceptions that you might as well have vendor-specific extensions. Chances are, anything that isn’t supported by console hardware won’t see much use anyway.

In-fact their response to DX, Vulkan isn’t even out yet. What is Apple supposed to do, stick with an aging api, bogged down by committee? DX can move so quickly because they aren’t bogged down by a committee.

How about at least getting support of that “aging API” up to where it was on other platforms years ago? D3D12 isn’t really ahead of Vulkan and when it finally releases, only those who upgrade to Windows 10 will be able to use it. So why the hurry? Apple could’ve easily waited a few more months for Vulkan, but that was not their plan all along. Instead, they let their OpenGL/OpenCL drivers rot to the point where people are desperate for an alternative.

edit:

Most highly regarded by whom? Mac OS users? What does that have to do with anything? To answer your question: 3DSMax, Inventor, Solid Works, Pro/Engineer, Revit (and the late Softimage) are all high-profile applications that aren’t on Mac OS, so clearly it’s a platform you can do without.

However, you should probably be more worried about getting support from smaller applications, for which the cost of supporting an extra graphics API could outweigh the benefit of adding another 10% to their target audience. (by the way, here’s a little reality check on what it means to be in the Top 10 by sales on the Mac App Store)

I might get it all wrong but to me the new mac pro cans look shit compared to the real mac pro’s of the last generation. Apple might get it right with metal but it might not. It might make vulkan available it might not. But GPU’s are still evolving at a pretty fast rate and this newest generation of API’s to me looks pretty similar in intent, scope and actual usage pattern.
Vendors really do not want to invest in porting things to new and fancy stuff if they don’t have to. CAD like apps are notorious for still using OpenGL 1.x style API’s.

As for professional software that does not run on OS X, Revit, Solidworks, Tekla Structures, numerous organizations have in-house desktop software that only runs on linux or windows. But that is not the point.

I think it is bad for apple and everyone if we get to much fragmentation at the 3d API level

The MacPro I use right now looks nice but is big. The new MacPros are very compact and hardly use any space. So that they look like shit I cannot follow.

It is quite funny how you guys here always talk about Linux. SolidWorks Revit and such are only Windows. There is hardly anything CAD like for Linux. Go to the Autodesk website. It is either Windows or OS X.

Just forget I ever said the word linux in any context at all. I own multiple macs and really think this is not about mac vs windows but about metal, mantle, vulkan dx12.

They all try to make complex computing hardware we call GPU’s accessible to developers and users. And having a per platform solution sux for blender and not only for blender but for anyone trying to make any kind of cross platform solution.

I realize not that I suck at discussing this as we seem to be going of topic

Vulkan may try and solve some of he same issues as Metal, but it isn’t out yet. The existence of Vulkan is an admission of the many deficiencies of OpenGL.

Apple might add Vulkan later when it is ready, but for now Metal looks like a far better API than OpenGL/OpenCL or even DX.

As for the panic about the future of Vulkan on OS X:
Guess who is on the Vulkan working group? Apple. None of the Linux companies or Microsoft are. :slight_smile:

It good yes but when features are missing from a new API I wouldn’t consider it far better. As far as I can see geometry shaders and Hull/Domain shaders aren’t supported. It also doesn’t support DX compression formats but then again neither does OpenGL ES but I would be surprised if Vulkan didn’t as OpenGL does. Then again ASTC might catch on now that it’s supported by many chip makers and platforms. Even Direct3D will have ASTC LDR support.

Metal was designed with mobile in mind and it shows. No geometry or tessellation as options shows it’s not ready for full desktop gaming. It seems to me that it’s more for GUI rendering and easier portability between their platforms than OSX not getting Vulkan.

Metal is out on iOS on a limited number of devices (5s and above I think?) and OSX 10.11 isn’t out for consumers until fall while DX12 will be in consumers hands next month. The latest I’ve heard is a release of the Vulkan spec in August probably with drivers(This guys has contact to the LunarG people so it may be legit).

But I don’t quite get what you mean with no Linux companies? AMD, intel and Nvidia are the ones who will write drivers so I don’t see why you point that out when Apple are the ones writing drivers for OSX?

ah well time will tell. Fusion Win also does not use openGL which is one of Autodesks new CAD app.

What hurry? While DX12 and OGL were announcing a low level api to be released Apple was already shipping one on their mobile platform, it was inevitable that it would migrate to OSX. Yes this was Apple’s plan all along but Apple had already been working on the api and had it in developers hands when MS and the Kronos Group were still announcing their intentions with the Kronos Group still being late to the party with nothing to show for it yet.

Windows 10 is free, anyone with Windows 8 Home won’t have a choice in the upgrade. Right off the bat that’s a huge swathe of people that will have access to DX12. DCC app makers don’t have any incentive to use Vulcan since the api is focused on game performance for the most part and OpenGL performs good enough for their purposes. OpenGL doesn’t perform as well on OS X and Apple has no interest to make it better so if these DCC app makers want to do business on the platform and want the performance advantage they will be using Metal.

Other than cross-platform support I don’t see any real benefit to Vulkan over DX12, or Metal. In DX12’s case vendors won’t give Vulcan an advantage over DX12, in Metal’s case Apple has the leg room to do whatever they feel they need to with the api to get features they need as opposed to being tied down to OGL or committee. That may irk some who value cross platform or OSS software but at the end of the day for developers like Adobe, Autodesk, etc. it doesn’t really that matter that much.

Even if Vulkan were supported on OS X, this still leaves Blender where? Nowhere near any kind of modern level of support. Vulkan on OS X is not the answer, at least not for Blender.

As for concern about smaller apps, smaller developers (especially those on the Mac App Store) are the most likely to use Apple’s api’s and core technologies over the bigger app makers. The minute Apple releases some interesting new api you have developers like Pixelmator jumping at the chance to support it. Also at least on OS X, the Mac App Store isn’t the goldmine that the one on iOS is. There are too many places to get the app outside of the app store and on top of that you don’t have to give Apple a 30% of your cut. Obviously it’s profitable to develop for OS X or no one would bother but that is not the case is it.

Guess who is also on the working group of OpenCL and OpenGL? Apple. Now guess who also hasn’t properly updated their driver support for these technologies, for years. Indeed, maybe we shouldn’t all jump to the conclusion that Apple basically deprecated these technologies for their platform. I definitely wouldn’t gamble on their continued support, however.

It wasn’t inevitable, at all. Mobile chips are totally different hardware, it’s still unclear how the Desktop version of Metal is going to pan out. Vulkan on the other hand has already been battle-tested in the form of Mantle.

Windows 10 is free, anyone with Windows 8 Home won’t have a choice in the upgrade. Right off the bat that’s a huge swathe of people that will have access to DX12.

Driver updates are also free, right off the bat everyone with a D3D12-level GPU would also be able to use Vulkan, no matter their choice of Windows. Most Windows users are still on 7, so you’d need 100% of them to upgrade to reach a comparable user base.

OpenGL doesn’t perform as well on OS X and Apple has no interest to make it better so if these DCC app makers want to do business on the platform and want the performance advantage they will be using Metal.

The problem is not performance, it’s reliability. Apple basically just made a proposition to switch the API with the promise of better stability, or risk spending lots of effort in working around driver problems. Both of these options are potentially huge costs. To those who have other things to do than just support Mac OS, this is basically a middle finger.

That may irk some who value cross platform or OSS software but at the end of the day for developers like Adobe, Autodesk, etc. it doesn’t really that matter that much.

Every company can spend only so many resources on Mac OS. Porting stuff to Metal means giving up improvements in other areas.

Even if Vulkan were supported on OS X, this still leaves Blender where? Nowhere near any kind of modern level of support. Vulkan on OS X is not the answer, at least not for Blender.

Blender developers have to plan now what they’re going to do in the future. Forget about Vulkan for a second, there is still the open question of OpenGL support. The main motivator to support the OpenGL Core Profile is Mac OS. If OpenGL now is basically deprecated, that doesn’t seem quite so motivating anymore. I would really love to hear psy-fi or jwilkins weigh in on this.

As for concern about smaller apps, smaller developers (especially those on the Mac App Store) are the most likely to use Apple’s api’s and core technologies over the bigger app makers. The minute Apple releases some interesting new api you have developers like Pixelmator jumping at the chance to support it.

Apps like Pixelmator are exclusive to Mac OS, so of course they can just go 100% Apple API. If you’re crossplatform, it’s a completely different story. You might as well delay or omit a Mac OS port altogether.

Obviously it’s profitable to develop for OS X or no one would bother but that is not the case is it.

That is so naive, it makes me smile. Here’s the reality: Most business fail, many of them are never profitable, yet plenty of people still bother. They hope for profit, just like a gambler hopes to win, even though he knows he can only lose in the long run.

This discussion feels a bit like the threads that talk of moving Blender to some other language… or porting everything to the GPU.
A lot of projects are technically possible, but currently we have almost no active devs using & supporting OSX (there are trivial bugs in the tracker for OSX remaining unfixed).

Of course situation changes, devs come and go - changes discussed here are not impossible, just seem highly unlikely at the moment.

I have very little knowledge of MacOSX and its libraries but maybe I can give a hand at least with some MacOS bugs. I have no problem learning new stuff. Will give it a try and see where it goes.

Well at least from my side since I have been very active in these threads you already know I make no demands and I expect nothing from Blender developers cause I know you guys are already stretched thin.

Its also a nice opportunity for me to learn Swift and MacOS native libraries since I don’t see myself abandoning MacOS for at least the next decade.

@kilon, yet you presume the eventual outcome,

How can guys here take each other seriously if they make statements like this with little knowledge of what they talk of? (to be clear, some, not all people talking here).

At the current level of (most of) this discussion, we might as well talk of eventual move to haskell, memristors, or quantum computing.

“The Future of the Blender Game Engine on a Memristor-Equipped Quantum Computer: A Haskell Case Study” sounds like a great topic for a dissertation. Just throwing it out there.

I am afraid you are the one that takes seriously an assumption not me.

I already stated that none can predict the future. I also never understood the obsession of people to moderate opinions that they happen to not agree with.

Frankly I don’t mind being wrong at all, so far Blender covers my needs and I am happy with it. As I already said I have zero issues abandoning Blender for a commercial app that fits my needs better. I rather spend my money on an open source project but if it does not meet my needs no problem investing my money on closed source one as long as it gets the job done and give me the best value for my money.

I made an assumption that Apple will support Metal a lot more than OpenGL and OpenCL and that at some point Blender will have to move to Metal because of being the only good choice. I may be wrong, thats the nature of an assumption. If I am , I will definetly not lose sleep over it :wink:

If you are looking for an apology for mere stating my opinion, I am afraid I will have to pass.

Doubtful. While Apple may be less than 10% of the PC market they are still very profitable especially for DCC apps. Do you think Adobe and Autodesk support OSX out of the kindness of their hearts? The Macs are where the money is at, especially for content creators, because they are more likely to pay for the software they use. According to someone who worked at Adobe Creative Cloud Suite sales are 50/50 on both platforms. Think about it for a second a platform that is supposedly on 90% of machines and Adobe sells just as many licenses on a platform with less than 10% market share. Adobe or anyone else would be crazy to give up half of their sales because of an api change. Adobe didn’t stop supporting Apple after the Carbon bomb a few years back (arguably more devastating to them) and they are not going to stop supporting Apple now. Neither is Autodesk, The Foundry, etc. A lot of professionals rely and expect their software to work on Macs and expect developers to take advantage of the latest core technologies Apple offers. At most maybe game developers will balk but again they are leaving money on the table, especially for an audience that is more willing to pay a premium to get the content vs the overly saturated PC gaming market. Even then the major engine developers have already thrown their weight behind Metal. DCC apps aren’t going anywhere on OSX.

10% is also the share Mac OS has on Blender downloads. Adobe is not a good company to pick for estimating this, nobody takes their 3D stuff seriously. Historically Macs have a had a strong hold on photography/illustrators, but not 3D. Autodesk has applications both with and without Mac ports, so they know the numbers. Apparently those numbers are not good enough to convince them to port over 3DSMax, no matter how much people ask for it.

I am curious about one situation.

As far as I know high end GPUs are not that much better than gaming cards but what sets them apart is the driver.
Does NVIDIA with the webdriver on OS X only support just pure hardware driver or also openGL stuff.

Because if Metal is only OS X Apple will mainly focus only on hardware they will build into the Macs and I am curious
how this will play out for people who run custom 3d cards in MacPros?

So I had some free time this morning to look at (and hopefully fix) these trivial issues. So I updated to the latest codebase, grabbed the latest darwin libraries, and fired up XCode…

Yeah, so there is only one OSX bug that’s reproducible (not just for the BF developers, I tried to reproduce myself too). That bug happens to be a UI issue that Ton is weighing in on (with a little snark thrown in for good measure). Not touching that with a ten-foot pole, sorry.

4 bugs in total ? Wow I did not know things were so bad on MacOS :smiley:

The Irony here is that there zero bugs concerning OpenGL (most likely OpenCL too) and the first one that cannot be confirmed is related to Cuda which is not developed by Apple.

And here I was believing all the hype of how crappy Apple is, thinking I was the only user that had no issues with Blender on macos. Apparently I am not.