看苹果Metal支持c++开发

今年五月份开始,苹果的Metal图形接口悄悄开始支持C++开发.

笔者对此表示高度赞誉,类似于macBook pro回归支持了HDMI,非常务实的做法。

当然metal 支持c++开发的影响非常深远。

笔者前天看到这个消息,昨天晚上熬夜也将之前写的一些Metal代码,花了两个小时,快速改

成了C++版本。效果非常好。

苹果2014年开始推Metal,17年开始不更新OpenGL,然后给OpenGL开发者还造成了一定的恐慌,其实结果来看,8年时间,Metal推不动,苹果系统依然保留了OpenGL framework。

图形开发接口的重度用户,首先是游戏引擎厂商,但游戏引擎厂就那么两家。然后就是视频剪辑厂,但掰着手指头也能数得过来。所以对于普通开发者来说,学习Metal,似乎没什么大用。只能作为一种爱好。但爱好跟吃饭的技能相比,学习优先级就靠后了。

行业对Metal采用比较低,有很多原因,大致有以下几点。

1 OpenGL历史沉淀,接口友好。跨平台。

2 大量第三方库比如GLM/GLEW/ASSIMP等。

3 Metal没有比OpenGL快到30%~50%的程度。

4 mac电脑用户基数也就8%左右徘徊。

5 图形学本身还有一定难度,大部分同学OpenGL都没搞明白。

6 跨平台抽象层涌现,比如谷歌的Angle项目,MoltenVK,Qt的QRHI等。

7 苹果特立独行,主推swift,这个语言喜欢变,今年写的代码,可能过几年不能用了,

   到时候要推倒重来。相反c++虽然很多人不喜欢,但c++天然跨平台,写的代码有积淀。

   过几年出现一个新的比如VR平台,c++代码依然可以移植过去跑起来。所以这些原因,

   C++依然是客户端软件开发的首选。

虽然以上各种各样的问题,但图形接口对音视频,视频剪辑,AR/VR开发的同学来说,

就非常重要了。苹果平台电脑设计,芯片领先,iOS庞大的用户基数,也不得不让很多

同学开始接触Metal。尤其是Metal开始支持c++开发的时候。

学习Metal,最开始都用Swift或者OC做开发,

Swift是一门非常魔性的语言,简洁高效合理。但你不敢大量用,因为你害怕着魔,

使用久了别的语言不会写了。OC跟Swift比起来,OC代码就太难看了,又乱又多。

幸好苹果终于推了c++版本的Metal。苹果终于回归了常识,跟行业大部队走了。

苹果强大的芯片设计能力,加上开发框架越来越友好,不再偏执。

那么行业大量的重量级软件,很快都会陆续支持原生Metal。

比如Blender, CAD软件,视频剪辑软件,游戏等。

小广告。

学习音视频,图像处理开发的同学。所有平台都有。

《音视频图像处理》

《音视频网络通讯》

两大主题。

猜你喜欢

转载自blog.csdn.net/chenchao_shenzhen/article/details/121863957
今日推荐