- 博客(40)
- 资源 (34)
- 收藏
- 关注
原创 OpenGL ES之glTexImage2D函数
名称:glTexImage2D—— 指定一个二维的纹理图片函数原型:void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, G
2012-07-31 13:42:34 35440
原创 CGBitmapContextCreate函数参数详解
函数原型:CGContextRef CGBitmapContextCreate ( void *data, size_t width, size_t height, size_t bitsPerComponent, size_t bytesPerRow, CGColorSpaceRef colorspace, CGBitmapIn
2012-07-31 10:42:11 22643
原创 西蒙OpenGL ES教程第五章的示例代码显示不了纹理
第五章的代码运行后发现是一个黑屏,没有任何东西,纹理并没有渲染到屏幕上边,原因是可能是作者的一个疏忽将图片的后缀名写错了:- (void)loadTexture { CGImageRef textureImage = [UIImage imageNamed:@"tech_texture-200026-xl.jp2"].CGImage;而如上图的资源文件夹下并没有名
2012-07-31 00:13:13 1646
原创 OpenGL ES之glShadeModel函数
名称:glShadeModel—— 选择flat或smooth着色函数原型:void glShadeModel(GLenum mode)函数参数:mode 指明使用哪种着色技术,可以取值GL_FLAT和GL_SMOOTH。默认取值是GL_SMOOTH。描述:原文翻译太复杂,我在这里总结一下:在使用顶点数据绘
2012-07-30 23:25:41 13602
原创 OpenGL ES几何图形的绘制顺序
不知道你在使用glDrawArrays绘制多个几何图形的时候有没有注意到它们的绘制顺序.如你在代码中依次使用glDrawArrays绘制了如下几个几何图形:(1)绘制一个三角形(2)绘制一个四边形(3)绘制一个五角形 那么实际上OpenGL ES在绘制几何图形的时候的顺序和你程序执行的顺序是相反的,即实际的绘制顺序是:(3)绘制一个五角形(2)绘制
2012-07-30 15:45:17 5058
原创 OpenGL ES之glRotatef旋转详解
glRotatef函数的API中文参考文档请看:OpenGL ES之glRotate函数 void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z); 其中,angle为旋转的角度,单位为度.重点是x,y,z表达的是什么意思呢?应该如何取值? 如果说x,y,z表达的是一个坐标(x
2012-07-30 14:25:36 46953
原创 西蒙iPhoneGL ES教程实例代码
西蒙iPhoneGL ES教程实例代码在网上不太好找,原教程网站已经关闭了,找了好久终于找了原教程的所有实例代码,地址在GitHub上;https://github.com/mauriceatron/iPhone-OpenGL-ES-Tutorial-Series
2012-07-27 21:08:01 1436
原创 iTunes下载的ipa文件的目录位置
使用iTunes下载一个iPhone软件或游戏(ipa文件)后,不知道iTunes把文件放在什么地方了?告诉你,它就在:C:\Users\你的电脑名称\Music\iTunes\iTunes Media\Mobile Applications如,我的电脑名称叫Tom,那么iTunes下载的应用程序就放在C:\Users\Tom\Music\iTunes\iTunes Med
2012-07-27 18:17:42 33787
原创 OpenGL ES之glOrtho和glFrustum的区别
glOrtho和glFrustum的参数是一样的,但是glFrustum的near和far参数都必须是整数并且near不能为0,而glOrtho的near和far参数没有这个限制。二者的left, right, bottom, top表达的意思是相同的,都是指某一切面的坐标位置。 glOrtho表达的是正交矩阵,效果是2D的,就像你正对着一个立方体的某一个面看,所以它没有“近大远
2012-07-26 17:12:16 4553
原创 OpenGL ES之glOrtho函数
名称:glOrtho—— 使用一个正交矩阵乘以当前矩阵函数原型:void glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat near, GLfloat far);void glOrthox(GLfixed left, GLfixed right
2012-07-26 16:57:09 3865
原创 OpenGL ES之glFrustum函数
名称:glFrustum—— 使用一个透视矩阵乘以当前矩阵函数原型:void glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat near, GLfloat far);void glFrustumx(GLfixed left, GLfix
2012-07-26 16:41:00 10044
原创 OpenGL ES之glPushMatrix, glPopMatrix函数
名称:glPushMatrix, glPopMatrix—— 压入和弹出矩阵栈函数原型:void glPushMatrix(void); void glPopMatrix(void);函数参数:无描述:对于每一种矩阵模式都有一个矩阵栈。对于GL_MODELVIEW,栈的深度最少为16。对于GL_PROJ
2012-07-25 18:57:56 3096
原创 OpenGL ES之glRotate函数
名称:glRotate—— 使用一个旋转矩阵乘以当前矩阵函数原型:void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z); void glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);函数参数
2012-07-25 18:41:42 16904
原创 OpenGL ES 模型视图之平移操作
对当前模型视图进行平移操作,在OpenGL ES 1.0中可以使用glTranslate*函数,而在2.0中需要自己设置平移矩阵。 如,分别使用tx,ty,tz表示在x,y,z轴上的移动距离,那么在1.0中可以这样平移模型视图:glTranslatef(tx, ty, tz); 在2.0中你需要这么做:float translation[16]
2012-07-25 17:22:24 3283
原创 OpenGL ES之glMatrixMode函数
名称:glMatrixMode—— 指定当前矩阵是哪一个矩阵函数原型:void glMatrixMode(GLenum mode)函数参数:mode 指明将哪一个矩阵栈执行随后的矩阵变换操作。可以接受的值有 GL_MODELVIEW,GL_PROJECTION和GL_TEXTURE。默认值为GL_MODELVIEW。
2012-07-25 17:12:38 3038
原创 OpenGL ES之glScale函数
名称:glScale —— 将新的缩放矩阵乘以当前矩阵函数原型:void glScalef(GLfloat x, GLfloat y, GLfloat z);void glScalex(GLfixed x, GLfixed y, GLfixed z);函数参数:x, y, z 指明x, y, z 轴的缩放因子描
2012-07-25 17:04:44 7898
原创 OpenGL ES 1.0官方在线帮助文档
OpenGL ES 1.1 Reference Pageshttp://www.khronos.org/opengles/sdk/1.1/docs/man/
2012-07-25 16:40:58 2126
原创 OpenGL ES 模型视图之缩放操作
对当前模型视图进行缩放,在OpenGL ES 1.0中可以使用glScale*函数,而在2.0中需要自己设置缩放矩阵。 如,分别使用sx,sy,sz表示在x,y,z轴上的缩放比例,那么在1.0中可以这样缩放模型视图:glScalef(sx, sy, sz); 在2.0中你需要这么做:float scale[16] = {sx, 0, 0, 0,
2012-07-25 16:38:38 4727
原创 OpenGL ES 2.0官方在线帮助文档
OpenGL ES Software Development Kithttp://www.khronos.org/opengles/sdk/docs/man/这个是OpenGL ES 2.0的官方在线帮助文档,非常好用。只不过是英文的,英文不好的哥们下载个词典吧。左边一列为索引栏,因为OpenGL语言函数都是以gl开头的,所以索引字母是指gl后面的那个字母,如glBindFra
2012-07-25 16:05:47 10278
原创 glLoadIdentity和glMultMatrix
glLoadIdentity的作用是将当前模型视图矩阵转换为单位矩阵(行数和列数相同的矩阵,并且矩阵的左上角至右下角的连线上的元素都为1,其它元素都为0),这样可以方便矩阵的乘法运算。 glMultMatrix矩阵的乘法. 如:glLoadIdentity();glMultiMatrix(A);glMultiMatrix(B);glMulti
2012-07-25 15:54:57 8872
转载 3D程序开发数学基础之矩阵
以下内容来自http://www.tongji.edu.cn/~math/xxds/kcja/kcja_a/01.htm,如果对你有帮助可以到其网站上查看其它基础知识。一、矩阵的基本概念矩阵,是由个数组成的一个行列的矩形表格,通常用大写字母表示,组成矩阵的每一个数,均称为矩阵的元素,通常用小写字母其元素表示,其中下标都是正整数,他们表示该元素在矩阵中的位置。比如,或表示一个矩阵,下标表示元
2012-07-25 15:01:12 1840
原创 OpenGL ES着色器语言之着色语言语法(官方文档第九章)
语法是从词法分析的输出获得的。词法分析将返回以下标识:ATTRIBUTE CONST BOOL FLOAT INTBREAK CONTINUE DO ELSE FOR IF DISCARD RETURNBVEC2 BVEC3 BVEC4 IVEC2 IVEC3 IVEC4 VEC2 VEC3 VEC4MAT2 MAT3 MAT4 IN OUT INOUT UNIFORM VAR
2012-07-23 09:30:59 1850
原创 3D程序开发数学基础之向量
1、向量的基本概念http://baike.baidu.com/view/77260.htm2、向量的加法设有两个向量 a=(x1, y1, z1), b=(x2,y2,z2)那么 a+b=(x1+x2, y1+y2, z1+z2),向量a的长度:|a| = ;3、向量的数量积(内积,点积)4、向量的向量积(外积,叉积)5、三个向
2012-07-22 21:36:23 1184
原创 OpenGL ES着色器语言之内建函数(官方文档第八章)
OpenGL ES着色语言为标量和向量操作定义了一套内建便利函数。有些内建函数可以用在多个类型的着色器中,有些是针对固定硬件的,所以这部分只能用在某个特定的着色器上。 内建函数基本上可以分为一下三类:(1)它们使用一些简便的方式提供必要的硬件功能,如材质贴图。这些函数单独通过着色器是无法模拟出来的。(2)它们展示了一些可以常简单的写入的繁琐操作(clamp, mix等),但
2012-07-22 00:33:26 33684
原创 OpenGL ES着色器语言之内建变量(官方文档第七章)
有些OpenGL ES操作在顶点处理器和片元处理器之间有特定的功能,有些在片元处理器之后又特定的功能,着色器通过内建变量同这些固定功能进行通信。 在OpenGL ES中,内建特殊变量部分来自顶点着色器的输出变量,部分来自于片元着色器的输入变量和输出变量。不同于用户定义的varying变量,内建特殊变量不用在顶点语言和片元语言之间保持严格的一对一对应。相反,两个语言各有自己的一套变
2012-07-19 18:11:25 6509
原创 OpenGL ES着色器语言之语句和结构体(官方文档第六章)
OpenGL ES着色器语言的程序块基本构成如下:语句和声明函数定义选择(if-else)迭代(for, while, do-while)跳跃(discard, return, break, continue)6.1函数定义 着色器是由一系列全局声明和函数定义组成的。函数声明规范如下: // prototype
2012-07-19 15:01:50 3383
原创 Android配置cocos2d-x开发环境
Cocos2d-x跨Android&iOS平台开发入门这篇文章是国外的开发者编写的,由泰然论坛子龙山人翻译。对于cocos2d-x的配置已经讲的很详细了,但是根据我自己的配置过程出现的问题在这里也汇总总结一下,希望能对出现相同问题的同志们有点帮助。 (1)原文中:“打开Eclipse,然后他吃软饭File\New\Other,选择Android\Android Pro
2012-07-19 00:39:49 7774
原创 Cocos2d-x Cocos2dxAccelerometer和Cocos2dxGLSurfaceView出错解决方案
最近使用最新版本的eclipse juno配置android开发cocos2dx,按照这篇文章(http://cn.cocos2d-x.org/bbs/forum.php?mod=viewthread&tid=882)进行配置后发现工程报cocos2d-x源文件报错,刚开始以为是cocos2d-x的一个bug,后面经过多方面查找资料测试,发现这并不是cocos2d-x的罪过(阿弥陀佛,cocos2
2012-07-18 23:56:10 4088
原创 OpenGL ES着色器语言之构造器(Constructor)
5.4构造器 构造器使用函数调用语法,函数名是一个基本类型的关键字或者结构体名字,在初始化器或表达式中使用.参数被用来初始化要构造的值.构造器可以将一个数据标量类型转换为另一个标量类型,或者从较小的类型转换为较大的类型,或者从较大的类型转为较小的类型.5.4.1 转换和标量构造器 标量之间转换:int (bool) //将布尔
2012-07-18 19:15:08 2103
原创 OpenGL ES着色器语言之操作数(官方文档第五章)
5.1操作数OpenGL ES着色器语言包含如下操作符.5.2数组下标 数组元素通过数组下标操作符([ ])进行访问.这是操作数组的唯一操作符,举个访问数组元素的例子: diffuseColor += lightIntensity[3] * NdotL;5.3函数调用 如果一个函数有返
2012-07-18 19:13:43 2705
原创 OpenGL ES着色器语言之变量和数据类型(二)(官方文档第四章)
4.5精度和精度修饰符4.5.1范围和精度 用于存储和展示浮点数、整数变量的范围和精度依赖于数值的源(varying,uniform,纹理查找,等等),是不是顶点或者片元着色器,还有其他一些底层实现的细节。最低存储需要通过精度修饰符来声明。典型地,精度操作必须要保留变量包含的精度存储。仅有的例外是需要大量复杂计算的内建函数,如atan(),返回值的精度低于声明的精度。
2012-07-18 15:02:08 15728
原创 OpenGL ES着色器语言之预处理(preprocessing)
着色器的预处理过程是指在着色代码真正开始在内存中执行之前的整个过程。那么预处理过程包含哪些工作呢?-----------------------------------------------------------------------------------------------------------------------------------------------(1
2012-07-16 16:43:50 2640
原创 OpenGL ES着色器语言之静态使用(static use)
在OpenGL ES中有一个术语叫静态使用(static use),什么叫静态使用呢? 在写代码中,对于一个变量可能具有以下三种情况:(1)不声明,不引用(No Reference),呵呵,那就没有这个变量了,如一个空语句: ;(2)声明,但是不使用(Declared, NO used)
2012-07-16 16:34:46 2266
原创 OpenGL ES着色语言之varying,uniform,attribute修饰范围
varying修饰符只能用在float, vec2, vec3, vec4, mat2, mat3, mat4和包含这些类型元素的数组上,不能用于修饰结构体。uniform修饰符可以和任意基本数据类型一起使用,或者包含基本数据类型元素的数组和结构体。attribute修饰符只能修饰float, vec2, vec3, vec4,mat2,mat3,mat4。
2012-07-16 16:21:00 3976
原创 OpenGL ES着色器语言之变量和数据类型(一)(官方文档第四章)
所有变量和函数在使用前必须声明。变量和函数名是标识符。 没有默认类型,所有变量和函数声明必须包含一个声明类型以及可选的修饰符。变量在声明的时候首先要标明类型,后边可以跟多个变量,之间用逗号隔开。很多情况下,变量在声明的时候可以使用等号“=”进行初始化。 用户定义类型可以使用struct,在结构体中所有变量类型都必须是OpenGL ES着色器语言定义的关键字。Op
2012-07-13 22:52:48 11665
原创 OpenGL ES着色器语言之语言基础(官方文档第三章)
3.1字符集 OpenGL ES着色语言的源字符集是ASCII编码的一个子集,包含以下字符: 字符 a-z, A-Z, and下划线 ( _ ). 数字 0-9. 点 (.), 加号(+), 分割线(-), 斜线(/), 星号(*), 百分号(%),大于小于号 (), 方括号 ( [ a
2012-07-13 16:27:00 6508
原创 OpenGL ES着色器语言之着色概览(官方文档第二章)
事实上,OpenGL ES着色语言是两种紧密关联的语言。这些语言用来在OpenGL ES处理管线的可编程处理器创建着色器。 在本文档中,除非另外说明,一个语言功能适用于所有语言,并且通用用法将把他们当做一个语言来看待。特定语言将指出它们的目标处理器:顶点(vertext)或片元(fragment)。任何被着色器使用的OpenGL ES状态值都会自动地被跟踪并且作用于着色器上。这个自动状态跟踪机
2012-07-13 14:12:04 4588
原创 OpenGL ES之glUniform函数
函数名:glUniform功能:为当前程序对象指定Uniform变量的值。(译者注:注意,由于OpenGL ES由C语言编写,但是C语言不支持函数的重载,所以会有很多名字相同后缀不同的函数版本存在。其中函数名中包含数字(1、2、3、4)表示接受这个数字个用于更改uniform变量的值,i表示32位整形,f表示32位浮点型,ub表示8位无符号byte,ui表示32位无符号整形
2012-07-13 09:38:11 57497
原创 OpenGL ES入门详解
1.决定你要支持的OpenGL ES的版本。目前,OpenGL ES包含1.1和2.0两个版本,iPhone 3G+和iPad开始支持OpenGL ES2.0。而且这两个版本之间的差异非常大,不仅仅在编程思想上,API之间的差距也很大。因此,如果你想使用OpenGL ES开发3D程序或游戏,那么首先就要决定使用哪个版本,还是说两个版本都支持。OpenGL ES定义了代表不同版本的宏:
2012-07-12 10:22:14 99535
原创 Objective-C/C++混编编译器设置
当使用Xcode编写C++代码时,难以避免要使用xcode/C++混合编译。 如果你在Xcode中编写的工程中既有Objective-C代码,又有C++代码,在没有任何设置编译器选项的默认情况下,你将会发现一下问题:(1)编译器报错。莫名其妙的错误,如C++的关键字(如virtual, new, delete等)找不到,不能解析啊等问题(2)以*.cpp结尾的纯C++
2012-07-09 15:18:50 26322
AXURE 8+ 动画网页组件库
2016-06-24
HBuilder HTML5+ API帮助文档
2014-08-26
HTNL5+ HBuilder移动应用manifest文件配置指南
2014-08-22
OBJ2OpenGLES 示例代码
2012-08-14
OpenGL ES Obj 3D示例模型
2012-08-14
OpenGL ES for iPhone Games
2012-08-14
supermodel V18——OBJ 3DS查看器
2012-08-13
西蒙iPhone OpenGL ES最完整实例代码
2012-07-27
C&C++中文帮助文档(含STL)
2012-07-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人