随笔分类 - OpenGL和OpenGL ES对比系列文章
通过阅读OpenGL超级宝典(蓝皮书)学习Android的OpenGL ES编程
摘要:http://shaxquan.blog.51cto.com/751410/579948
阅读全文
摘要:1 public class MyRenderer implements Renderer 2 { 3 FloatBuffer verticesBuffer; 4 private final int VERTEX_SIZE = (2 + 2) * 4; 5 private AssetManager asset; 6 private int textureID; 7 8 public MyRenderer(Context context) 9 {10 asset = context.getAssets();11 ...
阅读全文
摘要:public class MyRenderer implements Renderer { FloatBuffer verticesBuffer; private final int VERTEX_SIZE = (2 + 4) * 4; @Override public void onDrawFrame(GL10 gl) { gl.glViewport(0, 0, 320, 480); gl.glClear(GL10.GL_COLOR_BUFFER_BIT); gl.glMatrixMode(GL10.GL_PROJEC...
阅读全文
摘要:1 public class MyRenderer implements Renderer 2 { 3 FloatBuffer verticesBuffer; 4 5 @Override 6 public void onDrawFrame(GL10 gl) 7 { 8 gl.glViewport(0, 0, 320, 480); 9 gl.glClear(GL10.GL_COLOR_BUFFER_BIT);10 gl.glMatrixMode(GL10.GL_PROJECTION);11 g...
阅读全文
摘要:下期预告:Android的OpenGL ES版的碰到边界返回的方块#include <GL/glut.h>// 方块的初始位置和大小GLfloat x1 = 0.0f;GLfloat y1 = 0.0f;GLfloat rsize = 25;// 在x和y方向上的步进大小GLfloat xstep = 1.0f;GLfloat ystep = 1.0f;// 追踪窗口的宽度和高度的变化GLfloat windowWidth;GLfloat windowHeight;void ChangeSize(GLsizei w, GLsizei h){ GLfloat aspectRatio;
阅读全文
摘要:// 利用ChangeSize函数在屏幕形状发生改变时重建viewport并且重新设置坐标系#include <GL/glut.h>#define WINDOW_WIDTH 640#define WINDOW_HEIGHT 480void ChangeSize(GLsizei w, GLsizei h){ GLfloat aspectRatio; // 防止被0除 if(h == 0) { h = 1; } glViewport(0, 0, w, h); // 重置坐标系统 glMatrixMode(GL_PROJECTION);...
阅读全文
摘要:首先我们在屏幕中心显示一个矩形,效果如图:// 代码没有经过优化,为的是容易理解public class OpenGLTestActivity extends Activity { GLSurfaceView glView; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow(...
阅读全文
摘要:// 首先我们看一下用OpenGL绘制一个矩形#include <GL/glut.h>void display(){ // 清除屏幕 glClear(GL_COLOR_BUFFER_BIT); // 指定从glBegin到glEnd描述的基元(primitive),在这里是多边形 glBegin(GL_POLYGON); // 指定多边形的四个顶点 glVertex2f(-0.5, -0.5); glVertex2f(-0.5, 0.5); glVertex2f(0.5, 0.5); glVertex2f(0.5, -0.5); glEnd(); // 强制刷新缓冲,保证绘图命令将
阅读全文
浙公网安备 33010602011771号