`
wonka438
  • 浏览: 33734 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

android 使用opengl画简单的图形

阅读更多

在androi平台上使用opengl画简单图形

 

 

GLRender.java

//单位向量
int one = 0x10000;

//设置图形顶点的坐标
private IntBuffer fourBuffer = IntBuffer.wrap(new int[]{0,one,0,one,0,0,-one,0,0,0,-one,0});

@Override
public void onDrawFrame(GL10 gl) {

	gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
	gl.glLoadIdentity();
        //设置图形的中心点
        gl.glTranslatef(-1.5f, 2.0f,-6.0f);//其中整个android机屏幕的坐标为0,0,0,看附图
        //开启设置顶点坐标
        gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
	gl.glVertexPointer(3, GL10.GL_FIXED, 0, fourBuffer);
        //参数说明:
        //1.类型:使用不同类型画出的效果也不一样
        //GL_POINTS_单独画出顶点;GL_LINES_单独画出直线;GL_LINE_STRIP_连贯地将直线画出来;
        //GL_LINE_LOOP_ 连贯地将直线画出来,自动将最后一个顶点和第一个顶点通过直线连接起来。 
        //GL_TRIANGLES_OpenGL使用三个顶点来组成图形;
       //GL_TRIANGLE_STRIP_最开始的两个顶点出发,遍历每个顶点并使用前2个顶点一起组成一个三角形。
        //2.开始点
        //3.总共顶点数
        gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP, 0, 4);
		
	gl.glLoadIdentity();
	gl.glTranslatef(-1.5f, -2.0f, -4.5f);
	gl.glVertexPointer(3, GL10.GL_FIXED, 0, fourBuffer);
	gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP, 0, 4);
		
		
	gl.glLoadIdentity();
	gl.glTranslatef(1.5f, -2.0f, -3.0f);//z的参数必须为负数,且其绝对值越小越接近屏幕
	gl.glVertexPointer(3, GL10.GL_FIXED, 0, fourBuffer);
	gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP, 0, 4);

        //关闭设置顶点坐标
	gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
	}

 

 

 

附带代码

  • 大小: 28.2 KB
分享到:
评论

相关推荐

    使用opengl画一个简单的茶壶

    这个文件主要是使用opengl代码通过函数在屏幕上画一个简单的茶壶

    c++ 使用OpenGL画pcm文件波形图

    c++ 读取 pcm 16位 双通道 文件,使用OpenGL画出双声道波形图。 c++ 读取 pcm 16位 双通道 文件,使用OpenGL画出双声道波形图。

    Android开发之OpenGL绘制2D图形的方法分析

    本文实例讲述了Android开发之OpenGL绘制2D图形的方法。分享给大家供大家参考,具体如下: Android为OpenGL ES支持提供了GLSurviceView组建,这个组建用于显示3D图形。GLSurviceView本身并不提供绘制3的图形的功能,...

    OpenGL实现示波器绘图的主要实现代码

    OpenGL™ 是行业领域中最为广泛接纳的 2D/3D 图形 API,其自诞生至今已催生了各种计算机平台及设备上的数千优秀应用程序。OpenGL™ 是独立于视窗操作系统或其它操作系统的,亦是网络透明的。在包含CAD、内容创作、...

    android opengl es 飘动的国旗

    3. 计算各定点坐标时是使用三维数组的形式生成的,较简单,但是OpenGL绘制的时候需要的是buffer形式的,生成buffer时需要的是一维数组,java中没有指针,所以需要自己写个方法把三维数组的内容转换到一维数组中,以...

    Android-Game-2D-Puzzle:带有OpenGL动画2D图形的逻辑游戏

    Weed-Crusher-Android-Game 带有OpenGL动画2D图形的逻辑游戏

    Android 三维图形演示代码

    关于Android开发指南一文的三维图形演示应用程序,使用OpenGL ES技术,即Tunnel3D,代码来自网络,修改了若干编译问题。在G1上测试通过。

    用OpenGL练习作图如三角形、四边形、线段等

    用OpenGL练习作图如三角形、四边形、线段等,涉及四边形旋转、光照、动画等效果。

    绘制关于x,y的三维图

    根据所给的x,y两个对应的序列,画出对应于x的y的三维表示,能够更好地观测数据的分布情况。

    android 3d图形绘制

    opengl绘制三维图形的基本知识,函数说明,处理三维图形的动作

    Android入门到精通

    第一篇Android系统结构和SDK使用 第1章 Android的系统介绍 1.1 系统介绍 1.2 软件结构和使用的工具 ...10.1 使用OpenGL图形接口的程序结构 10.2 基本的绘制 10.3 渲染器的实现 10.4 3D动画效果的实现

    Android高薪之路:Android程序员面试宝典 李宁

    12 3 如何使用OpenGL ES绘制图形 12 4 绘制2D图形 12 5 绘制3D图形 12 6 光照效果 第13章 Android系统的资源 13 1 资源的基础问题 13 2 本地化 13 3 字符串资源 13 4 布局资源 13 5 图像资源 13 6 其他资源 第14章 ...

    opengl绘制的三维汽车

    这是用OpenGL绘制的动态汽车.绘制的丑,但代码简单易懂,适合初学者. 这是用OpenGL绘制的动态汽车.绘制的丑,但代码简单易懂,适合初学者.

    android开发揭秘PDF

    第12章 AndroidOpenGL开发 基础 12.1 OpenGL简介 12.2 多边形 12.3 颜色 12.4 旋转 12.5 3D 空间 12.6 纹理映射 12.7 光照和事件 12.8 混合 12.9 小结 第13章 AndroidOpenGL综合 应用 13.1 移动图像 13.2.3D 世界 ...

    精通ANDROID 3(中文版)1/2

    第20章 使用OpenGL进行3D图形编程  20.1 了解OpenGL的历史和背景  20.1.1 OpenGL ES  20.1.2 OpenGL ES与Java ME  20.1.3 M3G:另一种Java ME 3D图形标准  20.2 OpenGL的基本原理  20.2.1 使用OpenGL ...

    Beginning Android Games( Android 游戏开发入门)

    >如何使用Android的图形的API(画布,OpenGL ES的1.0/1.1),音频,和 用户输入,以反映这些基本面 >如何从头开发两个2D游戏的基础上,画布的API和OpenGL ES。 >如何创建一个全功能的3D游戏 >如何发布你的游戏,...

    OpenGL-Build-High-Performance-Graphics:Packt的OpenGL构建高性能图形

    OpenGL –构建高性能图形您将学到什么: 屏幕外渲染和环境映射技术以渲染镜像阴影映射技术,包括方差阴影映射使用着色器实现粒子系统利用着色器中的噪声利用计算着色器进行物理,动画和通用计算使用GLFW创建交互式...

    疯狂Android讲义源码

     7.1 使用简单图片 260  7.1.1 使用Drawable对象 260  7.1.2 Bitmap和BitmapFactory 260  7.2 绘图 263  7.2.1 Android绘图基础:Canvas、  Paint等 263  7.2.2 Path类 267  7.2.3 绘制游戏动画 270  7.3 ...

Global site tag (gtag.js) - Google Analytics