从今年春节后开始学习OpenGL ES,发现网上资料很有限,而且良莠不齐,所以整理了一下我学习时用到的资料和一些心得。

1. OpenGL ES1.x参考资料

把NEHE的教程移植到了Android上,当然用的是ES1

  http://insanitydesign.com/wp/projects/nehe-android-ports/

2. OpenGL ES2.x参考资料

有很多Android上ES2应用的文章

  http://tangzm.com/blog/?p=20

特别好的书,网上有英文版pdf,作者是libgdx的开发者,大神

  《OpenGL ES 2 for Android》

《OpenGL ES 2 for Android》作者的网站,必看

  http://www.learnopengles.com/

讲的太详细了,可以当工具书,网上也有pdf

  《OpenGL ES 2.0 Programming Guide》

讲的都是高级特性,想开发高级功能的可以看一下

  《Pro OpenGL ES for Android》

一个Android上简单的demo,可以借鉴

  https://github.com/yulu/GLtext

3.其他相关资料

计算机图形学&OpenGL的资料,可以看看

  http://www.cnblogs.com/liangliangh/p/3764420.html

  http://www.cnblogs.com/liangliangh/p/3765221.html

骨骼动画原理讲解,写的非常不错

  http://blog.csdn.net/n5/article/details/3105872

透视投影详解

  http://www.cnblogs.com/graphics/archive/2012/07/25/2582119.html

大神的网站,很多不错的OpenGL教程,关键是还有直接可以跑的源码。

  http://www.tomdalling.com/

4.个人心得

能用OpenGL ES2.x就别用ES1.x了,那个太老了,功能太受限制。

Android NDK里面的例子很不错,可以学习借鉴。

IOS有专门的网站讲GPU开发需要注意的事项,很赞。(https://developer.apple.com/library/ios/documentation/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/Introduction/Introduction.html)

大多数移动设备对uniform数组的大小限制很严重,也就支持128-256个vec4吧,这个在跨平台移植的时候一定要注意

其实最好还是先学OpenGL再搞ES,在电脑上调试什么的都很方便。

如果要写跨平台(Android,ios)的代码,还是需要用C++写,Android用Java封装的那套实在是挺鸡肋。

OpenGL ES学习资料总结的更多相关文章

  1. OpenGL ES学习笔记(三)——纹理

    首先申明下,本文为笔者学习<OpenGL ES应用开发实践指南(Android卷)>的笔记,涉及的代码均出自原书,如有需要,请到原书指定源码地址下载. <OpenGL ES学习笔记( ...

  2. OpenGL ES 学习笔记 - Overview - 小旋的博客

    移动端图形标准中,目前 OpenGL ES 仍然是比较通用的标准(Vulkan 则是新一代),这里新开一个系列用于记录学习 OpenGL ES 的历程,以便查阅理解. OverView OpenGL ...

  3. OpenGL ES学习笔记(一)——基本用法、绘制流程与着色器编译

    首先声明下,本文为笔者学习<OpenGL ES应用开发实践指南(Android卷)>的笔记,涉及的代码均出自原书,如有需要,请到原书指定源码地址下载. 在Android.iOS等移动平台上 ...

  4. OpenGL ES学习笔记(二)——平滑着色、自适应宽高及三维图像生成

    首先申明下,本文为笔者学习<OpenGL ES应用开发实践指南(Android卷)>的笔记,涉及的代码均出自原书,如有需要,请到原书指定源码地址下载. <Android学习笔记--O ...

  5. OpenGL ES学习001---绘制三角形

    PS:OpenGL ES是什么? OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL三维图形 API 的子集,针对手机.PDA和游戏主机等嵌入式设备而设计 ...

  6. Android OpenGL ES 开发(六): OpenGL ES 添加运动效果

    在屏幕上绘制图形只是OpenGL的相当基础的特点,你也可以用其他的Android图形框架类来实现这些,包括Canvas和Drawable对象.OpenGL ES为在三维空间中移动和变换提供了额外的功能 ...

  7. opengl基础学习专题 (一 )编程环境搭建

    题外话: 第一次在博客园上同大家分享博文.水的的地方,错别字的地方.环境交流.批评.知道了马上改. 以前在百度空间中写技术分享博文,后来百度啥也没说就把整个空间封了.当时感觉 还是有点寒心.只想黑一下 ...

  8. 从零开始学习OpenGL ES之一 – 基本概念

    我曾写过一些文章介绍iPhone OpenGL ES编程,但大部分针对的是已经至少懂得一些3D编程知识的人.作为起点,请下载我的OpenGL Xcode项目模板,而不要使用Apple提供的模板.你可以 ...

  9. 基于Cocos2d-x学习OpenGL ES 2.0之多纹理

    没想到原文出了那么多错别字,实在对不起观众了.介绍opengl es 2.0的不多.相信介绍基于Cocos2d-x学习OpenGL ES 2.0之多纹理的,我是独此一家吧.~~ 子龙山人出了一个系列: ...

随机推荐

  1. [转]MySQL函数大全 及用法示例

    原文地址:http://blog.sina.com.cn/s/blog_4586764e0100h5ct.html 1.字符串函数ascii(str)   返回字符串str的第一个字符的ascii值( ...

  2. [转]JSTL 与 JSP 或者 Java 相互传递变量的代码

    原文地址:http://blog.csdn.net/joyous/article/details/6689861 两种方式 <c:set var="s1" value=&qu ...

  3. Android动画知识汇总

    Interpolator(插值器) Interpolatort通常在动画中使用,主要来改变动画变化率.常用的有下面几种Interpolator,下面图文解说下: AccelerateDecelerat ...

  4. 【C#】使用MySql.Data.dll连接MySQL数据库

    准备工作 在Visual Studio中新建一个C#的控制台应用程序. 确保后台已经启用了MySQL57服务. 在MySQL的安装路径下找到DLL,默认位置是 C:\Program Files (x8 ...

  5. C语言 · 瓷砖铺放

    算法训练 瓷砖铺放   时间限制:1.0s   内存限制:512.0MB        锦囊1 递归或递推.   问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长 ...

  6. 主流HTML5游戏框架的分析和对比

    本文主要选取了Construct2.ImactJS.LimeJS.GameMaker.CreateJS.lycheeJS.Crafty.three.js.melonJS.Turbulenz.Quint ...

  7. Java通过JDBC进行简单的增删改查(以MySQL为例)

    Java通过JDBC进行简单的增删改查(以MySQL为例) 目录: 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JD ...

  8. hbase源码系列(三)Client如何找到正确的Region Server

    客户端在进行put.delete.get等操作的时候,它都需要数据到底存在哪个Region Server上面,这个定位的操作是通过HConnection.locateRegion方法来完成的. loc ...

  9. hbase 学习(十二)非mapreduce生成Hfile,然后导入hbase当中

    最近一个群友的boss让研究hbase,让hbase的入库速度达到5w+/s,这可愁死了,4台个人电脑组成的集群,多线程入库调了好久,速度也才1w左右,都没有达到理想的那种速度,然后就想到了这种方式, ...

  10. openCV—Python(5)—— 图像几何变换

    一.函数简单介绍 1.warpAffine-图像放射变换(平移.旋转.缩放) 函数原型:warpAffine(src, M, dsize, dst=None, flags=None, borderMo ...