自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Android---OpenGL ES之添加動作

移動開發(fā) Android
在本文中,你需要使用前面幾篇博文中介紹的示例,給圖形添加旋轉(zhuǎn)動作。OpenGLES提供了一些用于在三維空間中移動和變換被繪制的對象的能力,以及其他的創(chuàng)建良好用戶體驗的獨(dú)特方式。

在屏幕上繪制對象是OpenGL的最基本功能,你可以使用其他的Android圖形框架類,如Canvas和Drawable對象來完成這些功能。OpenGLES提供了一些用于在三維空間中移動和變換被繪制的對象的能力,以及其他的創(chuàng)建良好用戶體驗的獨(dú)特方式。

在本文中,你需要使用前面幾篇博文中介紹的示例,給圖形添加旋轉(zhuǎn)動作。

旋轉(zhuǎn)圖形

使用OpenGL ES 2.0來旋轉(zhuǎn)一個繪制對象是相對簡單的。你要創(chuàng)建另外的變換矩陣(旋轉(zhuǎn)矩陣),然后把它跟投影和攝像機(jī)變換矩陣組合到一起:

  1. privatefloat[]mRotationMatrix =newfloat[16]; 
  2.   public void onDrawFrame(GL10 gl) { 
  3.   ... 
  4.   // Create a rotationtransformation for the triangle 
  5.   long time = SystemClock.uptimeMillis() % 4000L; 
  6.   float angle = 0.090f * ((int) time); 
  7.   Matrix.setRotateM(mRotationMatrix, 0, angle, 00, -1.0f); 
  8.   // Combine the rotationmatrix with the projection and camera view 
  9.   Matrix.multiplyMM(mMVPMatrix, 0, mRotationMatrix, 0, mMVPMatrix, 0); 
  10.   // Draw triangle 
  11.   mTriangle.draw(mMVPMatrix); 
  12.   } 

 做了這些改變之后,如果你的三角形沒有旋轉(zhuǎn),那么就要確認(rèn)你是否完成了GLSurfaceView.RENDERMODE_WHEN_DIRTY設(shè)置。

啟用連續(xù)的渲染

如果你一直跟隨在學(xué)習(xí)本文的示例代碼,那么要確保像下面代碼那樣,注釋掉對渲染模式的設(shè)置,否則OpenGL只會旋轉(zhuǎn)圖形一次,然后等待來自GLSurfaceView容器的requestRender()方法的調(diào)用。

  1.   publicMyGLSurfaceView(Context context){ 
  2.   ... 
  3.   // Render the view onlywhen there is a change in the drawing data 
  4.   //setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY);// comment out for 
  5. auto-rotation 
  6.   } 

除非對象的變化跟任何用戶交互無關(guān),否則設(shè)置一個開關(guān)標(biāo)記是一個好主意。

本文譯自:http://developer.android.com/training/graphics/opengl/motion.html

責(zé)任編輯:閆佳明 來源: bbs.9ria
相關(guān)推薦

2014-04-29 13:58:11

OpenGL ESAndroid響應(yīng)觸屏事件

2014-04-29 14:08:40

OpenGL ESAndroid應(yīng)用投影

2014-04-29 14:16:54

2014-04-29 14:27:59

OpenGL ES 2Android繪制紋理

2014-04-24 13:35:11

OpenGL ES2.iOSAndroid

2014-04-24 11:16:00

OpenGL ES 2入門

2014-04-29 14:49:37

OpenGL ES 2Android應(yīng)用投影

2013-07-05 14:45:05

AndroidOpenGL ES開發(fā)

2017-07-04 12:26:14

ARARKit

2017-07-19 15:25:16

iOS開發(fā)ARKitOpen GL

2014-06-18 10:34:41

Android字體渲染器OpenGL ES

2013-09-26 14:09:31

iOS開發(fā)OpenGL ES教程繪制矩形

2017-07-06 15:02:53

OpenGL ES架構(gòu)GPU

2014-04-24 13:26:24

OpenGL ES2.iOSiPhone

2014-04-24 14:00:35

OpenGL ES 2編程

2014-07-16 15:49:13

AndroidOpenGL 4.4

2013-04-26 10:26:08

2014-08-21 15:40:53

Material De真實(shí)動作

2013-09-02 15:46:06

OpenGLWindows

2011-08-11 18:00:18

Cocos2d動作Action
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號