OpenGL ES学习资料总结
从今年春节后开始学习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学习资料总结的更多相关文章
- OpenGL ES学习笔记(三)——纹理
首先申明下,本文为笔者学习<OpenGL ES应用开发实践指南(Android卷)>的笔记,涉及的代码均出自原书,如有需要,请到原书指定源码地址下载. <OpenGL ES学习笔记( ...
- OpenGL ES 学习笔记 - Overview - 小旋的博客
移动端图形标准中,目前 OpenGL ES 仍然是比较通用的标准(Vulkan 则是新一代),这里新开一个系列用于记录学习 OpenGL ES 的历程,以便查阅理解. OverView OpenGL ...
- OpenGL ES学习笔记(一)——基本用法、绘制流程与着色器编译
首先声明下,本文为笔者学习<OpenGL ES应用开发实践指南(Android卷)>的笔记,涉及的代码均出自原书,如有需要,请到原书指定源码地址下载. 在Android.iOS等移动平台上 ...
- OpenGL ES学习笔记(二)——平滑着色、自适应宽高及三维图像生成
首先申明下,本文为笔者学习<OpenGL ES应用开发实践指南(Android卷)>的笔记,涉及的代码均出自原书,如有需要,请到原书指定源码地址下载. <Android学习笔记--O ...
- OpenGL ES学习001---绘制三角形
PS:OpenGL ES是什么? OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL三维图形 API 的子集,针对手机.PDA和游戏主机等嵌入式设备而设计 ...
- Android OpenGL ES 开发(六): OpenGL ES 添加运动效果
在屏幕上绘制图形只是OpenGL的相当基础的特点,你也可以用其他的Android图形框架类来实现这些,包括Canvas和Drawable对象.OpenGL ES为在三维空间中移动和变换提供了额外的功能 ...
- opengl基础学习专题 (一 )编程环境搭建
题外话: 第一次在博客园上同大家分享博文.水的的地方,错别字的地方.环境交流.批评.知道了马上改. 以前在百度空间中写技术分享博文,后来百度啥也没说就把整个空间封了.当时感觉 还是有点寒心.只想黑一下 ...
- 从零开始学习OpenGL ES之一 – 基本概念
我曾写过一些文章介绍iPhone OpenGL ES编程,但大部分针对的是已经至少懂得一些3D编程知识的人.作为起点,请下载我的OpenGL Xcode项目模板,而不要使用Apple提供的模板.你可以 ...
- 基于Cocos2d-x学习OpenGL ES 2.0之多纹理
没想到原文出了那么多错别字,实在对不起观众了.介绍opengl es 2.0的不多.相信介绍基于Cocos2d-x学习OpenGL ES 2.0之多纹理的,我是独此一家吧.~~ 子龙山人出了一个系列: ...
随机推荐
- ParseUrl
#!/usr/bin/python # coding:utf-8 import re import urlparse # 解析url def ParseUrl(url): if not re.sear ...
- Orcale分析函数OVER(PARTITION BY... ORDER BY...)的讲解
顾名思义,PARTITION 中文是分割的意思,ORDER 是排序的意思,所以翻译一下就是先把一组数据按照制定的字段进行分割成各种组,然后组内按照某个字段排序. 以实际案例来说明这个函数的使用, 首先 ...
- 大数据 Hive 简介
第一部分:Hive简介 什么是Hive •Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能. •本质是将SQL转换为MapReduce程序 ...
- canconfig 配置命令
canconfig 配置命令 canconfig can0 restart-ms 1000 bitrate 1000000 ctrlmode triple-sampling on canconfig ...
- 让jQuery的ajaxFileUpload插件支持onchange事件
ajaxFileUpload插件只能上传一次的BUG发现还不少人遇到,很不幸我也遇到的,使用后发现里面的坑还不少,在createUploadForm方法中有句 var newElement = jQu ...
- MFC使用自定义资源加载PNG
app.h #define RES_PNG _T("PNG")#define RES_JPEG _T("JPEG")#define RES_JIF _T(&qu ...
- .net类中静态方法的继承
父类中的静态方法,继承的子类能不能调用?一直在这里有疑惑,即使在下面的测试之后,也只是得到了结论,不明原理. class ClsParent { public static void ShowSth( ...
- IDEA使用教程-踩得坑
最近来公司才换的IDEA,而且是mac版本的,踩了好多坑,所以想记录下来. 1. 创建Web聚合项目(Maven多模块项目) 参考多模块项目创建 2. IDEA热部署(jetty插件启动maven项目 ...
- Spring面试问题集锦
Q. 对于依赖倒置原则(Dependency Inversion Principle,DIP),依赖注入(Dependency Injection,DI)和控制反转(Inversion of Cont ...
- 使用 pv 命令监控 linux 命令的执行进度
如果你是一个 linux 系统管理员,那么毫无疑问你必须花费大量的工作时间在命令行上:安装和卸载软件,监视系统状态,复制.移动.删除文件,查错,等等.很多时候都是你输入一个命令,然后等待很长时间直到执 ...