Daniate

一间杂货铺~
January 30, 2020

GLKit实战 第03话 变换

疑惑 在第02话中,已经绘制出来了一个三角形,那么可能就会有以下的疑问: 为什么三角形中相互垂直的两条边,长度不一致? 如何才能实现三角形中相互垂直的两条边长度一致? 关于这些疑问,均受到顶点位置、模型视图矩阵、投影矩阵、视口的影响,因此,在解决问题之前,会对相关的理论知识进行说明。 注:已将清除色设置为白色,glClearColor(1.0f, 1.0f, 1.0f, 1.0f); ...
January 29, 2020

GLKit实战 第02话 三角形

整体步骤 绘制出一个图形,大体需要以下步骤: 创建上下文,并将其指定为当前的上下文 创建GLKBaseEffect对象,并对其进行相应的配置 创建并绑定VAO(vertex array object,顶点数组对象) 创建并绑定VBO(vertex buffer object,顶点缓冲区对象) 设置顶点数据 启用顶点属性,并告知其如何使用顶点数据 在进行每一帧的绘制时,先同步状态,也即调用G...
January 28, 2020

GLKit实战 第01话 引言

GLKit是什么? 在iOS 5之前,开发OpenGL ES程序,需要编写大量的底层代码,极大影响开发效率。为了加快OpenGL ES应用程序的开发,自iOS 5起,苹果提供了一个名为GLKit的框架。 当创建新的基于着色器的应用程序时,或者对已存在的、且依赖于固定渲染管线(早期版本OpenGL ES所提供的功能)的应用程序进行移植时,GLKit所提供的函数及类,可以大幅减少工作量。 GLK...
August 7, 2019

VSCode集成CMake

VSCode集成CMake 本文首发于Daniate的个人网站,文章链接:https://daniate.com/2019/08/07/157.html 安装CMake 建议通过源码进行安装:https://cmake.org/download/,不赘述。 安装扩展 选中“扩展”标签,搜索并安装以下扩展: C/C++ 扩展,是微软提供的用于支持C、C++文件及其项目的扩展,提供自动完...
February 11, 2019

SDL - 安装

SDL 安装 本文首发于Daniate的个人网站,文章链接:https://daniate.com/2019/02/11/145.html 安装方式有以下几种: 源码 Homebrew Advanced Packaging Tool Yellow dog Updater, Modified 通过源码进行安装 下载相关的源码压缩包,解压,在终端中切换到源码目录,执行以下命令: ./co...
February 10, 2019

SDL - 初识

SDL 初识 本文首发于Daniate的个人网站,文章链接:https://daniate.com/2019/02/10/142.html SDL的全称是Simple Directmedia Layer,它是一个跨平台的开发库,通过OpenGL及Direct3D,可以提供针对音频、键盘、鼠标、游戏杆及图形硬件的低级访问,在开发视频播放软件、模拟器及游戏时,都可以使用它。 官方支持以下平...
August 26, 2018

某月的天数

本文首发于Daniate的个人网站,文章链接:https://daniate.com/2018/08/26/139.html 计算某年某月份中的天数,对于多数人来说,都是很简单的事情。但能否把程序写得足够简洁,就是另外一回事了。 先给出最终的代码: #include <stdbool.h> #include <assert.h> _Bool isLeapYear...
June 23, 2018

UIImage与CVPixelBuffer互转

UIImage与CVPixelBuffer互转 本文首发于Daniate的个人网站,文章链接:https://daniate.com/2018/06/23/123.html UIImage转CVPixelBuffer 有两种方式可供选择: CoreGraphics中的相关函数 CoreImage中的相关方法 CoreGraphics 步骤: 创建一个CVPixelBuffer(pi...
June 23, 2018

YUV

YUV 本文首发于Daniate的个人网站,文章链接:https://daniate.com/2018/06/23/117.html YUV是电视广播视频信号的原生格式,其亮度信息(Y)与色度信息(U和V或Cb和Cr)是分离的。 之所以会存在YUV,是因为早期的黑白电视只能传输亮度信息(也就是说,当只有Y分量时,图像就会显示为黑白的)。为了与现有的视频接收设备兼容,专门增加了一个新的色差...
June 22, 2018

Four Character Code

Four Character Code 本文首发于Daniate的个人网站,文章链接:https://daniate.com/2018/06/22/119.html Four Character Code简称FourCC,是由4个单字节字符构成的代码。 常被用于定义一些音频格式、图像或像素格式。 Apple 平台 在MacTypes.h头文件中,有以下typedef: #if __LP6...