欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > Metal之旅启航

Metal之旅启航

2025/2/25 15:03:23 来源:https://blog.csdn.net/HHL110120/article/details/142220285  浏览:    关键词:Metal之旅启航

背景

    使用画圆的方法,将大小不同的圆叠加起来形成一条笔迹,一条笔迹大概有成百上千个圆组成,一个白板上能显示上千条的笔迹,要求把这么多的笔迹在最短的时间内绘制出来,通过调研CAShapeLayer。CGContext的绘制方式都满足不了这样的性能要求,主要是算法太差劲了,另外同时绘制的笔迹太多,出现的了严重的性能问题。但当时其他端用了这个算法,也有性能问题,但由于各端底层绘制的差异,其他端性能问题表现并没有IOS端这么明显

调研

    经过调研发现高性能的绘制图形的框架在IOS中,有openGL,metal两种底层框架可以很好的实现,并且通过demo测试发现性能都不错

什么是openGL

    OpenGL是由硅谷图形公司(‌Silicon Graphics Inc.,‌简称SGI)‌发布,‌并由OpenGL架构审查委员会(‌OpenGL ARB)‌负责维护和扩充的‌。‌OpenGL最初是SGI公司为其图形工作站开发的一种三维图形机制,‌后发展成为跨平台的开放标准。‌随着OpenGL的发展,‌其控制权于2006年7月被交给了Khronos Group

什么是metal

    Metal是Apple为iOS平台推出的高性能图形渲染框架,‌旨在最大化地挖掘苹果移动设备的GPU能力。‌它于2014年首次发布,‌并在后续版本中不断优化和扩展。‌Metal通过减少GPU驱动的工作量,‌显著降低CPU消耗,‌同时提供高效的GPU访问和多线程支持,‌使得游戏和图形应用的性能得到显著提升。

openGL VS metal

1,openGL严格只是一套协议,经过打印发现底层还是用metal来实现的,经过打印发现苹果封装了这样的一个类AppleMetalGLRenderer

2,openGL在一些早期的iPad上各种缓存的支持度有限,但是我们公司的应用主体设备很多就是早期的ipad

3,openGL的API已经被标记为废弃状态了,后续只能用Metal了

Metal的应用场景都有哪些

1,视频内容渲染

2,游戏开发

3,图形绘制

4,文字绘制

5,高性能的计算

6,图像编辑,美化等等

知识点

Metal Shading Language

library

顶点

索引

渲染队列

渲染管线

纹理

drawable

NDC坐标

UV坐标

MTLBuffer

MTLCommdBuffer

MTLRenderEncoder

MTLComputeEncoder

parallRenderEncoder

parallComputerEncoder

Sampler 采样器

融合 blend

抗锯齿

多重采样(‌MSAA)‌和超采样(‌SSAA)

深度检测

透明度检测

光栅化

顶点着色器

片源着色器

CAMetalLayer

MTKView

视频渲染流程

。。。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词