multipart/from-data是一种进行表单提交时的消息格式。表单提交数据的时候,默认类型是application/x-www-form-urlencoded,也就是...
multipart/from-data是一种进行表单提交时的消息格式。表单提交数据的时候,默认类型是application/x-www-form-urlencoded,也就是...
在做公司项目的时候,我们经常碰到多个开发环境的问题,比如内网环境,联调环境,外网环境等,这时候根据不同的环境,可能会设置不同的域名,但是每次切换起来比较麻烦。这时候,我们可以...
在上一篇文章iOS开发之msg_Send快速查找[https://www.jianshu.com/p/02bef9165713]中,我们了解了方法的汇编快速查找流程,接下...
在学习之前,我们了解到,OC是一门动态性比较强的语言,这跟C和C++有很大的不同。之前的文章里,我们了解到了iOS开发cache_t(缓存)[https://www.ji...
在上一篇文章里iOS开发之类的本质里,我们详细研究了bits,我们用内存偏移得出的,我们计算了cache_t的大小,然后用lldb打印出了bits里面的内容。今天,我们来...
我们这里讨论类的结构,我们先定义2个类Strudent和Person,Strudent继承自Person,Person继承自NSObject。 我们先用lldb调试,看看...
我们知道平时编写的OC代码,底层都是C和C++代码:Objective-C -> C/C++ -> 汇编语言 -> 机器语言。所以Objective-C对象的底层实现就是...
我们先来看两个结构体: 在 架构下, 占用4个字节, 占用1个字节, 8个字节, 2个字节,那么结构体 和 应该占用的大小是15个字节,即大小为15。但是我们调用函数...
我们先看代码,这些代码输出了什么,代表了什么意思,输出的内容是否相同? 输出内容: 通过输出结果,我们可以知道前两个内容相同,跟后面的 结果不相同,所以我们知道 ...
这篇文章我们继续讲述OpenGL ES案例,更加深入的了解GSLS语言自定义着色器。基础框架的搭建可以参考之前的文章OpenGL ES 案例之马赛克滤镜。然后我们自定义6...
结合实际案例,我们来实现各种滤镜效果,首先看一下效果: 这里的基础功能搭建,和不通着色器的调用,我们不在赘述,跟上一篇案例一模一样。 。接下来我们注重讲述各个滤镜效果...
今天我们用一个自定义着色器,来实现图片分屏效果。具体效果如下: 下方可点击的 ,我们这里所用的方法就是根据点击的不同,调用不同的顶点和片元着色器,然后达到不同的绘制效...
之前我们学习中,不管是使用OpenGL,还是OpenGL ES下的GLKit加载图片的时候,我们使用的着色器都是固定管线下的固定着色器,也就是系统提供的着色器。今天我们先...
索引绘图 如下图。一个立体金字塔有五个面,六个三角形,也就是3x6 = 18个顶点组成。但是在实际的图形当中,我们有很多顶点是公用的,肉眼可见的顶点是5个。而索引绘图就是...
接下来我们用一个案例,来使用GLKit绘制一个旋转的立方体。效果如下: 下面我会讲述一下案例流程,代码部分我只列出重要部分,完整案例可以查看 。 初始化 初始化上下文...
GLKit官方文档里描述了GLKit框架设计的目标:加速OpenGL ES或OpenGL应用程序开发。使用数学库、背景纹理加载、预先创建的着色器效果以及标准视图和视图控制...
我们先看看苹果官方文档对于OpenGL ES的介绍:OpenGL ES 开放式图形库(OpenGL的)⽤于可视化的⼆维和三维数据。它是⼀个多功能开放标准图形库,⽀持2D和...
这个案例是在之前的案例球体旋转Demo的基础上,加以改动做的,主要是给了球体添加纹理,以及做了一个镜面的效果,具体效果如下: 镜面效果其实很简单,就是对镜面上的球体做了翻转重...
在了解纹理相关的API之前,我们需要了解到,png和jpg的图片,在计算机内部,要先将图片解码成位图,然后才能显示到屏幕上。一个图片,在帧缓冲区占用的大小,可以用下面的公...