登录
首页 » Java » android open gl 示例代码下载

android open gl 示例代码下载

于 2015-04-06 发布
0 247
下载积分: 1 下载次数: 0

代码说明:

[实例简介]Open GL 入门级示例 [实例截图] [核心代码]package com.china.gltry;import javax.microedition.khronos.egl.EGL10;import javax.microedition.khronos.egl.EGL11;import javax.microedition.khronos.egl.EGLConfig;import javax.microedition.khronos.egl.EGLContext;import javax.microedition.khronos.egl.EGLDisplay;import javax.microedition.khronos.egl.EGLSurface;import javax.microedition.khronos.opengles.GL;import android.view.SurfaceHolder;/** * An EGL helper class. */public class EGLHelper{ public EGLHelper() { } /** * Initialize EGL for a given configuration spec. * @param configSpec */ public void start(int[] configSpec){ /* * Get an EGL instance */ mEgl = (EGL10) EGLContext.getEGL(); /* * Get to the default display. */ mEglDisplay = mEgl.eglGetDisplay(EGL10.EGL_DEFAULT_DISPLAY); /* * We can now initialize EGL for that display */ int[] version = new int[2]; mEgl.eglInitialize(mEglDisplay, version); EGLConfig[] configs = new EGLConfig[1]; int[] num_config = new int[1]; mEgl.eglChooseConfig(mEglDisplay, configSpec, configs, 1, num_config); mEglConfig = configs[0]; /* * Create an OpenGL ES context. This must be done only once, an * OpenGL context is a somewhat heavy object. */ mEglContext = mEgl.eglCreateContext(mEglDisplay, mEglConfig, EGL10.EGL_NO_CONTEXT, null); mEglSurface = null; } /* * Create and return an OpenGL surface */ public GL createSurface(SurfaceHolder holder) { /* * The window size has changed, so we need to create a new * surface. */ if (mEglSurface != null) { /* * Unbind and destroy the old EGL surface, if * there is one. */ mEgl.eglMakeCurrent(mEglDisplay, EGL10.EGL_NO_SURFACE, EGL10.EGL_NO_SURFACE, EGL10.EGL_NO_CONTEXT); mEgl.eglDestroySurface(mEglDisplay, mEglSurface); } /* * Create an EGL surface we can render into. */ mEglSurface = mEgl.eglCreateWindowSurface(mEglDisplay, mEglConfig, holder, null); /* * Before we can issue GL commands, we need to make sure * the context is current and bound to a surface. */ mEgl.eglMakeCurrent(mEglDisplay, mEglSurface, mEglSurface, mEglContext); GL gl = mEglContext.getGL(); return gl; } /** * Display the current render surface. * @return false if the context has been lost. */ public boolean swap() { mEgl.eglSwapBuffers(mEglDisplay, mEglSurface); /* * Always check for EGL_CONTEXT_LOST, which means the context * and all associated data were lost (For instance because * the device went to sleep). We need to sleep until we * get a new surface. */ return mEgl.eglGetError() != EGL11.EGL_CONTEXT_LOST; } public void finish() { if (mEglSurface != null) { mEgl.eglMakeCurrent(mEglDisplay, EGL10.EGL_NO_SURFACE, EGL10.EGL_NO_SURFACE, EGL10.EGL_NO_CONTEXT); mEgl.eglDestroySurface(mEglDisplay, mEglSurface); mEglSurface = null; } if (mEglContext != null) { mEgl.eglDestroyContext(mEglDisplay, mEglContext); mEglContext = null; } if (mEglDisplay != null) { mEgl.eglTerminate(mEglDisplay); mEglDisplay = null; } } EGL10 mEgl; EGLDisplay mEglDisplay; EGLSurface mEglSurface; EGLConfig mEglConfig; EGLContext mEglContext;}

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • android下创建一个sqlite数据库 - android入门视频32
    android下创建一个sqlite数据库 - android入门视频32
    2015-12-03下载
    积分:1
  • Android 二维码 生成和识别 实例源码下载
    Android 二维码 生成和识别 实例源码下载
    2013-10-23下载
    积分:1
  • Android 经典蓝牙(Classic Bluetooth)和低功耗蓝牙(BLE)
    从蓝牙4.0开始包含两个蓝牙芯片模块:传统/经典蓝牙模块(Classic Bluetooth,简称BT)和低功耗蓝牙(Bluetooth Low Energy,简称BLE) 经典蓝牙是在之前的蓝牙1.0,1.2,2.0 EDR,2.1 EDR,3.0 EDR等基础上发展和完善起来的, 而低功耗蓝牙是Nokia的Wibree标准上发展起来的,是完全不同两个标准。1.经典蓝牙模块(BT)泛指蓝牙4.0以下的模块,一般用于数据量比较大的传输,如:语音、音乐、较高数据量传输等。经典蓝牙模块可再细分为:传统蓝牙模块和高速蓝牙模块。传统蓝牙模块在2004年推出,主要代表是支持蓝牙2.1协议的模块,在智能手机爆发的时期得到广泛支持。高速蓝牙模块在2009年推出,速率提高到约24Mbps,是传统蓝牙模块的八倍。 传统蓝牙有3个功率级别,Class1,Class2,Class3,分别支持100m,10m,1m的传输距离2.低功耗蓝牙模块(BLE)泛指蓝牙4.0或更高的模块,蓝牙低功耗技术是低成本、短距离、可互操作的鲁棒性无线技术,工作在免许可的2.4GHz ISM射频频段。因为BLE技术采用非常快速的连接方式,因此平时可以处于“非连接”状态(节省能源),此时链路两端相互间只是知晓对方,只有在必要时才开启链路,然后在尽可能短的时间内关闭链路(每次最多传输20字节)。低功耗蓝牙无功率级别,一般发送功率在7dBm,一般在空旷距离,达到20m应该是没有问题
    2020-12-07下载
    积分:1
  • 计算器 Calculator.
    计算器_Calculator. 计算器_Calculator.v
    2014-04-10下载
    积分:1
  • JavaEE网上书店源码(含数据库脚本)
    包括前台 后台 能够实现用户购买图书,查看购物车,清空购物车,结算,查看订单等功能。 后台管理员可以查看订单,并修改订单状态,可以上架新图书,可以修改图书信息,增加或修改图书分类等。。 运行环境:myeclipse MySQL Tomcat
    2018-06-12下载
    积分:1
  • android 手机小卫士完整源码下载
    手机卫士源码,内涵apk,源码,密钥,关键地方含有注释
    2014-10-20下载
    积分:1
  • Android通讯录
    【实例简介】本APP主要实现联系人信息的本地存取,同时兼具打电话和发短信的功能。 对于想学习Android开发的初学者非常有参考价值!
    2021-08-07 00:30:51下载
    积分:1
  • MySQL Workbench 6.3 CE 汉化文件v0.3
    鉴于之前的汉化文件使用后报错,遂用两个小时写了个自动化脚本来汉化文件,亲测可用。时间仓促,若有不足,请在下方教程链接中提意见MySQL Workbench汉化文件,可根据教程完成汉化教程链接:https://blog.csdn.net/weixin_40423737/article/details/80193680
    2020-05-26下载
    积分:1
  • tab host
    tab host
    2013-06-09下载
    积分:1
  • android上传文件到 java服务器端 例子源码下载
    另类文件上传
    2015-05-09下载
    积分:1
  • 696516资源总数
  • 106648会员总数
  • 8今日下载