Metal
文章平均质量分 96
Metal渲染是由苹果公司为iOS8以及更新版本开发的全新的底层渲染API。它侧重于减少GPU驱动的工作量,从而当Metal调用时,CPU的消耗将降至最低。这样一来,游戏就可以利用节省下来的CPU做出更多酷炫的效果。
╰つ栺尖篴夢ゞ
本人毕业于计算机技术专业,从事iOS高级开发,专注于iOS/MacOS内核/汇编/源码/架构/算法等相关技术的开发学习,同时热爱人工智能、OpenGL/ES、云原生等技术,CSDN博客专家与原力计划作者,华为云云享专家与特约博主,阿里云专家博主,荣获CSDN iOS领域优质创作者、2022年度博客之星移动领域TOP 3、2022年度博客之星TOP 16、AI创想秀邂逅“华为云ModelArts”征文大赛一等奖、CSDN第一届猿创征文优质博文奖,以及多项优秀TOP博文、CSDN开源挑战赛优秀奖等。
展开
-
Metal之加载TGA与PNG/JPEG纹理图片
TGA纹理PNG/JPEG纹理原创 2021-05-10 02:27:18 · 379 阅读 · 1 评论 -
Metal之实现视频采集与实时渲染
视频渲染的实现思路通过AVFoundation进行视频数据的采集,并将采集到的原始数据存储到CMSampleBufferRef中,即视频帧数据(视频帧其实本质也是一张图片)。通过CoreVideo将CMSampleBufferRef中存储的图像数据,转换为Metal可以直接使用的纹理。将Metal纹理进行渲染,并即刻显示到屏幕上。...原创 2021-03-13 16:08:42 · 902 阅读 · 1 评论 -
Metal之探究理解视频渲染RGB与YUV颜色编码
颜色编码一、RGB 颜色编码RGB 三个字母分别代表了 红、绿、蓝,这三种颜色作为三个基底颜色,将它们以不同的比例相加,可以产生多种多样的颜色。RGB 图像中,每个像素点都有红、绿、蓝三个基底颜色,其中每种原色都占用 8 bit,也就是一个字节(0-255),那么一个像素点也就占用 24 bit,也就是三个字节。在图像显示中,一张 1280 * 720 大小的图片,就代表着它有 1280 * 720 个像素点。其中每一个像素点的颜色显示都采用 RGB 编码方法,将 RGB 分别取不同的值,就原创 2020-08-29 22:44:53 · 783 阅读 · 1 评论 -
Metal之渲染绘制三角形
效果展示原创 2020-08-26 12:36:56 · 445 阅读 · 1 评论 -
Metal之MTLBuffer批量加载顶点数量较多的图形渲染
效果展示原创 2020-08-28 13:26:16 · 694 阅读 · 1 评论 -
Metal之简单渲染动态切换屏幕颜色
渲染循环一、功能管理metal的初始化以及metal中的视图委托initWithMetalKitView函数:初始化,需要传入MTKView对象view获取GPU的使用权限等makeFancyColor函数:设置颜色,即随着帧率变化的颜色MTKViewDelegate协议drawableSizeWillChange代理方法:view大小发生变化时回调drawInMTKView代理方法:view需要渲染时回调二、实现① initWithMetalKitView函数渲染循环类对外的初始原创 2020-08-25 15:43:06 · 1024 阅读 · 1 评论 -
Metal之Shading Language Specification(着色语言规范)
Metal简述Metal着色器语言是用来编写 3D图形渲染逻辑、并行Metal计算核心逻辑 的一门编程语言,当你使用Metal框架来完成APP的实现时则需要使用Metal编程语言。Metal语言使用Clang 和LLVM进行编译处理,编译器对于在GPU上的代码执行效率有更好的控制。Metal基于C++ 11.0语言设计的,在C++基础上多了一些扩展和限制,主要用来编写在GPU上执行的图像渲染逻辑代码以及通用并行计算逻辑代码。Metal 像素坐标系统:Metal中纹理 或者 帧缓存区attachme原创 2020-08-24 12:34:11 · 863 阅读 · 1 评论 -
Metal之基本简介及常用组件说明
效果展示原创 2020-08-24 11:40:52 · 1314 阅读 · 1 评论