OpenGL
亮亮不想说话
这个作者很懒,什么都没留下…
展开
-
OpenGL入门 -- 案例03:金字塔、六边形、圆环的绘制
本案例主要是对常见的图元连接方式的运用,常见图元连接方式见OpenGL的投影方式、固定着色器分类以及图元连接方式 最终效果:整体流程图如下:主要函数说明:Mian函数:函数入口ChangeSize函数:设置视口和投影方式SetupRC函数:顶点数据及图元连接方式RenderScene函数:图形绘制SpecialKeys函数:注册特殊键位的回调函数KeyPressFunc函数:注册空格键回调DrawWireFrameBatch函数:立体图形绘制以及描边ChangeSize函数原创 2020-07-19 17:41:36 · 782 阅读 · 1 评论 -
OpenGL入门 -- OpenGL的投影方式、固定着色器分类以及图元连接方式
OpenGL的投影方式投影方式使用场景方法说明正投影显示2D图形,都是一样大GLFrustum::SetOrthographic(GLfloat xMin, GLfloat xMax, GLfloat yMin, GLfloat yMax, GLfloat zMin, GLfloat zMax)3D投影显示3D图形,远小近大GLFrustum::SetPerspective(float fFov , float fAspect ,float fNear ,float f原创 2020-07-12 16:13:46 · 432 阅读 · 0 评论 -
OpenGL入门(三) -- OpenGL 渲染架构以及数据传递
OpenGL渲染架构OpenGL渲染架构如图所示:主要分为两个模块:Client(客户端):是指常见的iOS代码和OpenGL API,这部分在CPU中运行Server(服务端):OpenGL底层渲染处理,在GPU中运行客户端通过iOS代码调用OpenGL API方法,将图形渲染的相关数据通过通道传递到服务器中的顶点着色器和片元着色器,交由GPU处理。服务器通过从客户端通道接收到的传递的数据,交给相应的着色器渲染处理,并将最终结果渲染到屏幕上OpenGL数据传递通道从示意图上可以看出,原创 2020-07-12 00:48:25 · 585 阅读 · 0 评论 -
OpenGL入门 -- iOS 离屏渲染解读
离屏渲染问题是在面试中经常会被问到的一个问题,都知道设置layer圆角,会触发离屏渲染,那么只有设置圆角就会触发离屏渲染吗?那么,我们来写一段代码测试一下,是否是所有的圆角都会触发离屏渲染。我们定义几个不同情况的按钮,设置圆角,测试代码如下: //1.按钮存在背景图片 UIButton *btn1 = [UIButton buttonWithType:UIButtonTypeCustom]; btn1.frame = CGRectMake(100, 80, 100, 100)原创 2020-07-11 23:22:45 · 282 阅读 · 0 评论 -
OpenGL入门 -- 屏幕卡顿/撕裂 及 渲染流程解读
屏幕卡顿/撕裂屏幕卡顿/撕裂 是指屏幕在显示图形图像时出现的一些显示异常的现象。撕裂:是图形图片显示错位掉帧:是重复显示同一帧图片数据那么为什么会出现这样的显示问题呢?接下来详细解说一下。在分析之前,先了解一下 CPU和GPU的一些知识,以及 屏幕成像 的演变过程CPU 和 GPUCPU:是整个计算机的运算核心和控制核心,处理复杂的逻辑和数据,依赖非常高,靠时间片切换实现并发GPU:绘图运算工作准用的微处理器,单元计算,高并发,依赖非常低屏幕成像计算机的显示方式是经过最开始的 随原创 2020-07-11 02:21:27 · 2166 阅读 · 0 评论 -
OpenGL入门(二)-- 案例:正方形键位控制
在上一篇已经了解三角形的绘制,本篇了解一下正方形的键位控制,经过上一篇的铺垫,那么正方形的绘制就变的很简单了,首先看一下效果:效果展示如下:具体流程如下:主要实现部分:绘制正方形特殊键移动控制绘制正方形其实正方形绘制,只需在三角形绘制的基础上做少许修改,便可。具体修改如下:定义顶点到中心点的距离,则 边长 = 2 * blockSize//blockSize 边长GLfloat blockSize = 0.1f;修改顶点数组//正方形的4个点坐标GLfloa.原创 2020-07-09 10:48:29 · 330 阅读 · 0 评论 -
OpenGL入门 -- 环境搭建
OpenGL入门 -- 环境搭建准备资源搭建OpenGL环境上一篇介绍一下OpenGL的专业名词的相关知识,本篇来详细的记录一下OpenGL的环境搭建,以及OpenGL中的“Hello Word”。准备资源搭建环境,需要以下准备资源,也可以通过链接下载。CLToolsglewlibGLTools.aOpenGL环境搭建资源:百度网盘链接 ,密码:at14。搭建OpenGL环境打开Xcode新建项目,选择macOS,选择APP添加OpenGL.framework和GLUT原创 2020-07-06 23:10:31 · 352 阅读 · 0 评论 -
OpenGL入门(一)-- 快速了解OpenGL常见的专业名词
OpenGL入门(一)-- 快速了解OpenGL常见的专业名词一. 图形API简介1. OpenGL2. OpenGL ES3. DirectX4. Metal图形`API`的左右二. OpenGL 专业名词解析1. OpenGL 状态机2. OpenGL 上下文 ( context )3. 渲染(Rendering)4. 顶点数组(VertexArray)& 顶点缓存区(VertexBuffer)5. 管线6. 固定管线 和 可编程管线7. 着色器(shader)8. 顶点着色器(VertexSh原创 2020-07-03 00:34:27 · 470 阅读 · 0 评论