GLKTextureInfo 创建OpenGL纹理信息
-
name
: OpenGL上下文中纹理名称 -
target
: 纹理绑定的目标 -
height
: 加载的纹理高度 -
width
: 加载纹理的宽度 -
textureOrigin
: 加载纹理中的原点位置 -
alphaState
: 加载纹理中alpha分量状态 -
containsMipmaps
: 加载的纹理是否包含mip贴图
GLKTextureLoader 简化从各种资源文件中加载纹理
-
初始化
- (instancetype)initWithSharegroup:(EAGLSharegroup *)sharegroup;
-
从文件中加载纹理
+ (GLKTextureInfo *)textureWithContentsOfFile:options:error: - (void)textureWithContentsOfFile:options:queue:completionHandler:
options
:-
GLKTextureLoaderApplyPremultiplication
是否非alpha通道乘以相对应的alpha值(alpha * rgb) -
GLKTextureLoaderGenerateMipmaps
是否生成Mip贴图 -
GLKTextureLoaderOriginBottomLeft
是否左下角为原点 -
GLKTextureLoaderGrayscaleAsAlpha
是否加载灰度图片
-
-
从URL加载纹理
+ (GLKTextureInfo *)textureWithContentsOfURL:options:error: - textureWithContentsOfURL:options:queue:completionHandler:
-
从内存中加载纹理
+ (GLKTextureInfo *)textureWithContentsOfData:options:errer: - textureWithContentsOfData:options:queue:completionHandler:
-
从CGImages加载纹理
+ (GLKTextureInfo *)textureWithCGImage:options:error: - textureWithCGImage:options:queue:completionHandler:
-
从URL或文件加载多维纹理(加载一张height = 6 * width 或者 width = 6 * height的图片, 将这张图片分成6部分后折成立方体贴图)
+ (GLKTextureInfo *)cubeMapWithContentsOfURL:options:errer: - cubeMapWithContentsOfURL:options:queue:completionHandler: + (GLKTextureInfo *)cubeMapWithContentsOfFile:options:errer: - cubeMapWithContentsOfFile:options:queue:completionHandler:
-
从多张文件中加载多维纹理
+ (GLKTextureInfo *)cubeMapWithContentsOfFiles:options:errer: - cubeMapWithContentsOfFiles:options:options:queue:completionHandler
GLKView 使用OpenGL ES 绘制内容的视图默认实现
-
初始化视图
- initWithFrame:context:
代理
delegate
-
配置帧缓存区对象
-
drawableColorFormat
颜色缓存区格式 -
drawableDepthFormat
深度缓存区格式 -
drawableStencilFormat
模板缓存区格式 -
drawableMultisample
多重采样格式
-
-
帧缓存区属性
-
drawableHeight
(readonly) 底层缓存区对象的高度(以像素为单位) -
drawableWidth
(readonly) 底层缓存区对象的宽度(以像素为单位)
-
-
绘制视图的内容
-
context
绘制视图内容时使用的OpenGL ES上下文 -
- bindDrawable
将底层FrameBuffer对象绑定到OpenGL ES -
enableSetNeedsDisplay
指定视图是否响应使得视图内容无效的消息 -
display
立即重绘视图内容 -
snapshot
绘制视图内容并将其作为新图像对象返回 -
- deleteDrawable
删除与视图关联的可绘制对象
-
GLKViewDelegate 用于GLKView对象回调方法
-
- glkView:drawInRect:
绘制视图内容(必须实现的代理)
GLKViewController 管理OpenGL ES渲染循环的视图控制器
-
更新
-
- (void)update
更新视图内容 -
- (void)glkViewControllerUpdate:
更新视图内容
-
-
配置帧速率
-
preferredFramesPerSecond
视图控制器调用视图以及更新视图内容的速率 framesPerSecond
-
代理
delegate
-
控制帧更新
-
paused
渲染循环是否已暂停 -
pausedOnWillResignActive
当前程序重新激活动状态时视图控制器是否⾃动暂停渲染循环 -
resumeOnDidBecomeActive
当前程序变为活动状态时视图控制是否自动恢复呈现循环
-
-
获取有关View更新信息
-
frameDisplayed
视图控制器自创建以来发送的帧更新数 -
timeSinceFirstResume
⾃视图控制器第一次恢复发送更新事件以来经过的时间量 -
timeSinceLastResume
自上次视图控制器恢复发送更新事件以来更更新的时间量 -
timeSinceLastUpdate
⾃上次视图控制器调用委托方法glkViewControllerUpdate:
以及经过的时间量 -
timeSinceLastDraw
⾃上次视图控制器调用视图display
方法以来经过的时间量
-
GLKViewControllerDelegate 渲染循环回调方法
-
- glkViewControllerUpdate:
在显示每个帧之前调⽤ -
- glkViewController:willPause:
在渲染循环暂停或恢复之前调⽤
GLKBaseEffect 一种简单光照/着色系统
label
给Effect命名transform
应⽤于顶点数据的模型视图,投影和纹理变换-
lightingType
⽤于计算每个片段的光照策略,GLKLightingType-
GLKLightingTypePerVertex
表示在三角形中每个顶点执行光照计算,然后在三角形进⾏插值 -
GLKLightingTypePerPixel
表示光照计算的输入在三角形内插入,并且在每个片段执⾏光照计算
-
lightModelTwoSided
布尔值,表示为基元的两侧计算光照material
计算渲染图元光照使用的材质属性lightModelAmbientColor
环境颜色,应⽤效果渲染的所有图元.light0
场景中第⼀个光照属性light1
场景中第二个光照属性light2
场景中第三个光照属性texture2d0
第一个纹理属性texture2d1
第⼆个纹理属性textureOrder
纹理应用于渲染图元的顺序fog
应⽤于场景的雾属性colorMaterialEnable
布尔值,表示计算光照与材质交互时是否使用颜⾊顶点属性useConstantColor
布尔值,指示是否使⽤用常量颜色constantColor
不提供每个顶点颜⾊数据时使⽤常量颜⾊- prepareToDraw
准备渲染效果