GLTutorialThirteen.java :  » Graphics-3D-2D-OpenGL » android-gl » edu » union » Android Open Source

Android Open Source » Graphics 3D 2D OpenGL » android gl 
android gl » edu » union » GLTutorialThirteen.java
package edu.union;

import javax.microedition.khronos.opengles.GL10;

import android.content.Context;
import android.opengl.GLU;

// The font in this tutorial is from:
// http://lumina.sourceforge.net/Tutorials/Hello_World.html
// Thanks!
public class GLTutorialThirteen extends GLTutorialBase {
  float lightAmbient[] = new float[] { 0.2f, 0.2f, 0.2f, 1.0f };
  float lightDiffuse[] = new float[] { 1f, 1f, 1f, 1.0f };
  float[] lightPos = new float[] {0,0,3,1};
  
  float matAmbient[] = new float[] { 1f, 1f, 1f, 1.0f };
  float matDiffuse[] = new float[] { 1f, 1f, 1f, 1.0f };
    
  BitmapFont font;
  
  public GLTutorialThirteen(Context c) {
    super(c, 20);  
  }
  
  protected void init(GL10 gl) {
    gl.glEnable(GL10.GL_LIGHTING);
    gl.glEnable(GL10.GL_LIGHT0);
    gl.glMaterialfv(GL10.GL_FRONT_AND_BACK, GL10.GL_AMBIENT, matAmbient, 0);
    gl.glMaterialfv(GL10.GL_FRONT_AND_BACK, GL10.GL_DIFFUSE, matDiffuse, 0);
    
    gl.glLightfv(GL10.GL_LIGHT0, GL10.GL_AMBIENT, lightAmbient,  0);
    gl.glLightfv(GL10.GL_LIGHT0, GL10.GL_DIFFUSE, lightDiffuse,  0);
    gl.glLightfv(GL10.GL_LIGHT0, GL10.GL_POSITION, lightPos, 0);
    
    gl.glEnable(GL10.GL_DEPTH_TEST);
    gl.glDepthFunc(GL10.GL_LEQUAL);
    
    gl.glEnable(GL10.GL_BLEND);
    gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE);
    
    gl.glEnable(GL10.GL_TEXTURE_2D);
    
    gl.glClearColor(0.0f, 0.0f, 1.0f, 0.0f);
    gl.glClearDepthf(1.0f);
    
    gl.glEnable(GL10.GL_CULL_FACE);
    gl.glShadeModel(GL10.GL_SMOOTH);
    
    font = new BitmapFont(loadTexture(gl, R.drawable.font));
  }
  
  float xrot = 0.0f;
  float yrot = 0.0f;
  
  public void onDrawFrame(GL10 gl) {
    gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
    
    gl.glMatrixMode(GL10.GL_MODELVIEW);
    
    gl.glLoadIdentity();
    GLU.gluLookAt(gl, 0, 0, 3, 0, 0, 0, 0, 1, 0);
    gl.glTranslatef(0, 0, -6);
    
    gl.glRotatef(xrot, 1, 0, 0);
    gl.glRotatef(yrot, 0, 1, 0);
    
    //gl.glMatrixMode(GL10.GL_MODELVIEW);
    
    gl.glActiveTexture(GL10.GL_TEXTURE0); 
    gl.glClientActiveTexture(GL10.GL_TEXTURE0);
    
    font.draw(gl, "Hello");
    yrot += 0.1;
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.