主要NSObject中的alloc是与自定义类的alloc的源码流程的区别,以及为什么NSObject中的alloc不走源码工程。 在之前分析了alloc的源码,这篇文章是作...
在分析alloc源码之前,先来看看一下3个变量 内存地址 和 指针地址 区别: 分别输出3个对象的内容、内存地址、指针地址,下图是打印结果 结论:通过上图可以看出,3个对象指...
你这明显一个错误,在你的 内存优化(属性重排)里,你说苹果中采用的第二种,也就是内存从大到小,很明显不是
iOS-底层原理 05:内存对齐原理iOS 底层原理 文章汇总[https://www.jianshu.com/p/412b20d9a0f6] 在探讨内存对齐原理之前,首先介绍下iOS中获取内存大小的三种方式 ...
本文主要介绍下源码探索的三种方法 1、符号断点直接跟流程 2、通过按住control+step into 3、汇编跟流程 下面详细讲下这三种方法是如何查找到函数所在的源码库,...
RGB 和 YUV 都是色彩空间模型,下面来分别介绍下 RGB 颜色编码 RGB颜色编码格式,是指每种颜色都可以用(红,绿,蓝)三种原色来表示,将RGB分别取不同的值,会展示...
Metal简述 Metal着色器语言是用来编写 3D图形渲染逻辑、并行Metal计算核心逻辑 的一门编程语言,当你使用Metal框架来完成APP的实现时则需要使用Metal编...
Metal介绍 Metal是苹果在2018年推出用于取代在苹果端的业务的图形编程接口,在2018年之前使用的是基于OpenGL ES 封装的GLKit,通过Metal相关AP...
本案例的目的在于理解大长腿效果的实现以及图片的保存 操作流程如下 最终的效果图如下 准备工作 准备工作主要有3部分 主控制器UI界面逻辑:主要是一些控件的操作 自定义的GLK...
本案例的目的是理解如何用GLSL实现缩放+灵魂出窍+抖动+闪白+毛刺+幻觉6中动效滤镜 准备工作 准备工作的代码与分屏滤镜博文中一致,只需要修改相应的底部item数组及对应的...
本案例的目的是理解如何用GLSL实现灰度+颠倒+马赛克(共5种)滤镜 整体的效果图如下: 准备工作的代码与分频demo中一致,只需要修改相应的底部item数组及对应的着色器名...
本案例的目的是理解如何用GLSL实现分屏(2/3/4/6/9)滤镜 案例的效果图如下 准备工作 自定义着色器 完成无分屏滤镜的着色器代码 顶点着色器 片元着色器 视图控制器类...
本案例的主要目的是理解GLKit中的索引绘图 案例的效果如图所示 整体案例的流程如下 分为5部分 准备工作:主要是变量的定义及界面设置 viewDidLoad函数:创建图层并...
本案例的主要目的是理解GLSL中如何索引绘图 在介绍本案例之前,首先说说什么是索引绘图一个图形中,有许多顶点,例如本案例中的金字塔,有5个面,由6个三角形组成,一共有18个顶...
在前面的案例中,我们发现加载的图片是倒置的,如下图所示 倒置的原因很简单,主要是由于纹理坐标的原点(0,0)是在左下角,而屏幕的坐标原点(0,0)是在左上角,形成倒置图形的过...
案例的主要目的在于理解GLSL语言自定义着色器以及自定义着色器是如何使用的 案例的效果是利用GLSL自定义的着色去加载一张图片,效果图如下 案例的整体流程图如下 流程中主要分...
本案例是实现一个有纹理的立方体,并根据任意轴旋转,整体效果如下 未加光照image 增加光照效果image 增加光照的主要的思路如下 代码的实现主要分为4部分: 准备工作:这...
OpenGL ES GLSL语言 EGL(Embedded Graphics Library) OpenGL ES 命令需要渲染上下⽂和绘制表面才能完成图形图像的绘制 渲染上...
1. OpenGL ES OpenGL ES是OpenGL的子集 是针对嵌入式设备及移动终端设备的高级3D图形应用程序,例如iOS、Android、Windows等 Open...