ITPub博客

首页 > 移动开发 > ANDROID > 3D开发和OpenGL

3D开发和OpenGL

原创 ANDROID 作者:山有木xi 时间:2020-05-06 15:01:44 0 删除 编辑

在Android开发中,通过Android提供的图形、图形处理API,开发者可以很方便的处理二维的图形和2D游戏的开发,但是,随着时代的进步,用户的需求 不再局限于2D,3D技术早已应用开来

OpenGL

OpenGL的全称是  Open Graphics Library,开放的图形库接口,定义了一个跨编程语言,跨平台的编程接口规范,主要用于三维图像编程,体系简单,具有跨平台的特性,在图形工作站、PC上, OpenGL都有可以良好的工作,但是三维图像计算必须需要处理大量数据,因此在如手机之类的小型设备上使用就有点困难,所以, OpenGL又来个一个子集: OpenGL ES

在Android中简单的使用一下 OpenGL ES :

public void onSurfaceCreated(GL10 gl, EGLConfig config)
 {
  // 设置系统对透视进行修正
  gl.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT
    , GL10.GL_FASTEST);
  gl.glClearColor(0, 0, 0, 0);
   // 关闭抗抖动
  gl.glDisable(GL10.GL_DITHER);
  // 启用深度测试
  gl.glEnable(GL10.GL_DEPTH_TEST);
  // 设置深度测试的类型
  gl.glDepthFunc(GL10.GL_LEQUAL);
   // 设置阴影平滑模式
  gl.glShadeModel(GL10.GL_SMOOTH);
 }

3D开发

未接触之时,感觉3D开发好像很难的样子,很复杂,诚然,3D开发自然是要比2D开发难上许多,因为需要更多的数据,但是,现在的3D简单开发在不考虑性能的情况下并不难

简单的说,我们想要显示一个正方形

运用在中学时期学过的建立坐标轴,以X和Y轴建立坐标即可画出一个2D图形

而我们想显示一个正方体

则需要用到XYZ轴立体坐标轴,以X、Y和Z三轴建立坐标,既可以得到一个3D图形

以此类推其他的图形图像,其实都并不像想象之中的难,而3D开发最难的其实在于: 数学知识,数据结构,物理知识

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69917874/viewspace-2690114/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: Android中的ANR简述
请登录后发表评论 登录
全部评论
Oracle OCA(Java),IBM高级工程师认证,中国软件行业人才(高级c语言),高级Android工程师,对数据库并发与性能调优也有一定了解

注册时间:2019-04-25

  • 博文量
    147
  • 访问量
    390782