我的OpenGL学习进阶之旅持续更新关于学习OpenGL的一些资料
Posted 欧阳鹏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的OpenGL学习进阶之旅持续更新关于学习OpenGL的一些资料相关的知识,希望对你有一定的参考价值。
这个月在学习OpenGL方面的知识,这期间看过的一些书籍、一些博客、一些代码,在这里汇总一下。
原文地址为:【我的OpenGL学习进阶之旅】【持续更新】关于学习OpenGL的一些资料 (https://ouyangpeng.blog.csdn.net/article/details/120481319)
-
OpenGL ES(OpenGL for Embedded Systems) 是以手持和嵌入式设备为目标的高级3D图形应用程序编程接口(API)。
-
OpenGL ES是当今智能手机中占据统治地位的图像API,其作用范围已经扩展到桌面。
-
OpenGL ES支持的平台包括iOS,Android,BlackBerry、bada、Linux和Windows,它还是基于浏览器的3D图形Web标准WebGL的基础。
Android 可通过开放图形库 (OpenGL®)(特别是 OpenGL ES API)来支持高性能 2D 和 3D 图形。OpenGL 是一种跨平台的图形 API,用于为 3D 图形处理硬件指定标准的软件接口。OpenGL ES 是 OpenGL 规范的一种形式,适用于嵌入式设备。Android 支持多版 OpenGL ES API:
* OpenGL ES 1.0 和 1.1 - 此 API 规范受 Android 1.0 及更高版本的支持。
* OpenGL ES 2.0 - 此 API 规范受 Android 2.2(API 级别 8)及更高版本的支持。
* OpenGL ES 3.0 - 此 API 规范受 Android 4.3(API 级别 18)及更高版本的支持。
* OpenGL ES 3.1 - 此 API 规范受 Android 5.0(API 级别 21)及更高版本的支持。
- OpenGL ES 3.0向后兼容OpenGL ES 2.0,也就是说,为OpenGL ES 2.0编写的应用程序在OpenGL ES 3.0中可以继续使用。
一、相关书籍
OpenGL 方面
- OpenGL ES 3.0 Programming Guide
【OpenGL ES 3.0 Programming Guide 对应的源代码】
对应的中文版本: 《OpenGL ES 3.0编程指南(原书第2版) 》
C方面
- 《C Primer Plus (Sixth Edition) 》
对应的中文版 《C Primer Plus第6版》
《C Primer Plus第6版中文版》是一本经过仔细测试、精心设计的完整C语言教程,它涵盖了C语言编程中的核心内容。作为计算机科学的经典著作,讲解了包含结构化代码和自顶向下设计在内的程序设计原则。
作者把基础的编程概念与C语言的细节很好地融合在一起,并通过大量短小精悍的示例同时演示一两个概念,通过学以致用的方式鼓励读者掌握新的主题。每章末尾的复习题和编程练习题进一步强化了最重要的信息,有助于读者理解和消化那些难以理解的概念。
此书采用了友好、易于使用的编排方式,不仅适合打算认真学习C语言编程的学生阅读,也适合那些精通其他编程语言,但希望更好地掌握C语言这门核心语言的开发人员阅读。是学习C语言的必备书籍。
- 《C++Primer Plus (Sixth Edition) 》
对应的中文版《C++ Primer Plus第6版中文版》
《C++ Primer Plus第6版中文版》被誉为“开发人员学习C++的必备教程,没有之一”,可以说是一本面向从未学习过C语言甚至是从未学习过编程的人的入门书籍,它的首章从基础内容讲起,先介绍了传统编程的规则,后面才着重讲解有关面向对象——C++的精髓之一——的有关内容。
整个书的结构安排较为合理,难度爬升较慢。如果你是一个从未学过C语言(或者压根没学会C)的读者,那么,我相信这本书更适合你。当然如果有了C语言的基础,那学起来更是如虎添翼,效果更佳。
NDK
二、相关博客
2.0 一些比较官方的链接
2.1 OpenGL着色器语言相关
- 【Shadertoy - 国外着色器(Shader)源码分享网站】
- 【OpenGL着色器(Shader)和GLSL语言的简单介绍】
- 【OpenGL Shading Language】
- 【GLSL 中文手册】
- 【OpenGL日常-着色器】
2.2 【yfan】博主相关的链接
- 【Android OpenGL ES - 开篇】
- 【Android OpenGL ES - 环境搭建与简单三角形的绘制】
- 【Android OpenGL ES - 坐标系】
- 【Android OpenGL ES - GLSL基础篇】
- 【Android OpenGL ES - 纹理】
- 【Android OpenGL ES - GLSL高级篇】
- 【Android OpenGL ES - 反相、曝光、对比度、饱和度、色调滤镜】
- 【Android OpenGL ES - 卷积矩阵】
- 【Android OpenGL ES - EGL源码解析以及C++实现】
- 【Android OpenGL ES - EGL C++实现】
- 【相机/图片滤镜应用-InstagramXFilter来了】
2.3 【湖广午王】博主相关的链接
- 【Android OpenGLES 系列专栏】
- 【Android OpenGLES2.0(一)——了解OpenGLES2.0】
- 【 Android OpenGLES2.0(二)——绘制一个三角形】
- 【Android OpenGLES2.0(三)——等腰直角三角形和彩色的三角形】
- 【Android OpenGLES2.0(四)——正方形和圆形】
- 【Android OpenGLES2.0(五)——绘制立方体】
- 【Android OpenGLES2.0(六)——构建圆锥、圆柱和球体】
- 【Android OpenGLES2.0(七)——着色器语言GLSL】
- 【Android OpenGLES2.0(八)——纹理贴图之显示图片】
- 【Android OpenGLES2.0(九)——利用OpenGL进行图片处理】
- 【Android OpenGLES2.0(十)——OpenGL中的平移、旋转、缩放】
- 【Android OpenGLES2.0(十一)——利用OpenGLES做Camera预览】
- 【Android OpenGLES2.0(十二)——FBO离屏渲染】
- 【Android OpenGLES2.0(十三)——流畅的播放逐帧动画】
- 【Android OpenGLES2.0(十四)——Obj格式3D模型加载】
- 【Android OpenGLES2.0(十五)——利用EGL后台处理图像】
- 【Android OpenGLES2.0(十六)——3D模型贴图及光照处理(obj+mtl)】
- 【Android OpenGLES2.0(十七)——球形天空盒VR效果实现】
- 【Android OpenGLES2.0(十八)——轻松搞定Blend颜色混合】
- 【Android Camera API/Camera2 API 相机预览及滤镜、贴纸等处理】
- 【GLSurfaceView的简单分析及巧妙借用】
微型渲染器,了解OpenGL的工作原理
- https://github.com/ssloy/tinyrenderer
- https://github.com/ssloy/tinyraytracer
- https://github.com/zauonlok/renderer
2.4【zhxmdefj】博主相关的链接
- 【OpenGL入门1.0:环境搭建】
- 【OpenGL入门1.1:窗口】
- 【OpenGL入门1.2:渲染管线简介,画三角形】
- 【OpenGL入门1.3:着色器 GLSL】
- 【OpenGL入门1.4:纹理/贴图Texture】
- 【OpenGL入门1.5:矩阵与变换】
- 【OpenGL入门1.6:坐标系统,3D箱子】
- 【OpenGL入门1.7:摄像机】
- 【OpenGL光照1:颜色和基础光照】
- 【OpenGL光照2:材质和光照贴图】
- 【OpenGL光照3:光源】
2.5 【TwinklingStar】博主相关的链接
- 【OpenGL原理介绍】
- 【OpenGL雾简介】
- 【模板缓冲区】
- 【GLSL与RenderMan、ISL、Cg、HLSL的对比】
- 【OpenGL着色器介绍】
- 【多重纹理和纹理组合器】
- 【累积缓冲区】
- 【像素相关的操作】
- 【顶点数组】
- 【显示列表】
2.6【妈妈说女孩子要自立自强】博主相关的链接
- 【ShaderToy】开篇
- 【ShaderToy】水彩画
- 【ShaderToy】基础篇之再谈抗锯齿(antialiasing,AA)
- 【ShaderToy】跳动的心❤️
- 【ShaderToy】基础篇之谈谈点、线的绘制
2.7 【字节流动】 博主相关的链接
2.7.1 基础篇
2.7.2 应用篇
2.8 【蓬篙人】 博主相关的链接
2.9 其他
三、Github
- 【OpenGL ES 3.0 Programming Guide 对应的源代码】
- 【Canber/OpenGL-ES-for-android】
- 【learnopengles/Learn-OpenGLES-Tutorials】
- 【LearnOpenGL-CN/LearnOpenGL-CN】
- 【湖广午王的 doggycoder/AndroidOpenGLDemo】
- 【markusfisch/ShaderEditor】
- 【wshxbqq/GLSL-Card】
- 【xue5455/VideoAudioDemo】
- 【stevensona/shader-toy】
- 【githubhaohao/NDK_OpenGLES_3_0】
- 【JYangkai/MediaDemo】
- 【andev009/AndroidShaderDemo】Android平台OpenGL SE Camera滤镜实现Demo
以上是关于我的OpenGL学习进阶之旅持续更新关于学习OpenGL的一些资料的主要内容,如果未能解决你的问题,请参考以下文章
我的OpenGL学习进阶之旅解决关于在OpenGL ES开发中GLSurfaceView调用了onPause和onResume方法,然后息屏亮屏之后GLSurfaceView黑屏的问题
我的OpenGL学习进阶之旅解决关于在OpenGL ES开发中GLSurfaceView调用了onPause和onResume方法,然后息屏亮屏之后GLSurfaceView黑屏的问题
我的OpenGL学习进阶之旅学习OpenGL ES 3.0 的实战 Awsome Demo (下)之 图片转场和轮播特效专场
我的OpenGL学习进阶之旅学习OpenGL ES 3.0 的实战 Awsome Demo (下)之 图片转场和轮播特效专场