Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e9321e3a authored by Android (Google) Code Review's avatar Android (Google) Code Review
Browse files

Merge change I8018f091 into eclair

* changes:
  Add very simple input path. Fix end-of-line issues.
parents 4af88305 e5810d1f
Loading
Loading
Loading
Loading
+61 −55
Original line number Diff line number Diff line
@@ -3,13 +3,16 @@
#include <nativehelper/jni.h>
#define LOG_TAG "GLJNI gl_code.cpp"
#include <utils/Log.h>

#include <GLES/gl.h>

#include <stdio.h>

#include <stdlib.h>
#include <math.h>

GLuint texture;
GLfloat background;

#define FIXED_ONE 0x10000

@@ -83,10 +86,10 @@ void init_scene(int width, int height)
    printGLString("Vendor", GL_VENDOR);
    printGLString("Renderer", GL_RENDERER);
    printGLString("Extensions", GL_EXTENSIONS);

    glDisable(GL_DITHER);
    glEnable(GL_CULL_FACE);


    float ratio = width / height;
    glViewport(0, 0, width, height);

@@ -94,8 +97,8 @@ void init_scene(int width, int height)
    glLoadIdentity();
    glFrustumf(-ratio, ratio, -1, 1, 1, 10);


    glMatrixMode(GL_MODELVIEW);

    glLoadIdentity();
    gluLookAt(
            0, 0, 3,  // eye
@@ -122,6 +125,7 @@ void create_texture()
            on, off, on, off, on, off, on, off,
            off, on, off, on, off, on, off, on,
    };

    glGenTextures(1, &texture);
    glBindTexture(GL_TEXTURE_2D, texture);
    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 8, 8, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels);
@@ -133,9 +137,9 @@ void create_texture()
extern "C" {
    JNIEXPORT void JNICALL Java_com_android_gljni_GLJNILib_init(JNIEnv * env, jobject obj,  jint width, jint height);
    JNIEXPORT void JNICALL Java_com_android_gljni_GLJNILib_step(JNIEnv * env, jobject obj);
    JNIEXPORT void JNICALL Java_com_android_gljni_GLJNILib_changeBackground(JNIEnv * env, jobject obj);
};


JNIEXPORT void JNICALL Java_com_android_gljni_GLJNILib_init(JNIEnv * env, jobject obj,  jint width, jint height)
{
    init_scene(width, height);
@@ -159,19 +163,21 @@ JNIEXPORT void JNICALL Java_com_android_gljni_GLJNILib_step(JNIEnv * env, jobjec
    };

    const GLushort quadIndices[] = { 0, 1, 2,  0, 2, 3 };

    glVertexPointer(3, GL_FLOAT, 0, vertices);
    glTexCoordPointer(2, GL_FIXED, 0, texCoords);


    int nelem = sizeof(quadIndices)/sizeof(quadIndices[0]);
    static float grey;
    grey += 0.01f;
    if (grey > 1.0f) {
        grey = 0.0f;
    }
    glClearColor(grey, grey, grey, 1.0f);
    glClearColor(background, grey, grey, 1.0f);
    glClear(GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT);
    glDrawElements(GL_TRIANGLES, nelem, GL_UNSIGNED_SHORT, quadIndices);
}

JNIEXPORT void JNICALL Java_com_android_gljni_GLJNILib_changeBackground(JNIEnv * env, jobject obj)
{
    background = 1.0f - background;
}
 No newline at end of file
+8 −9
Original line number Diff line number Diff line
@@ -18,28 +18,27 @@ package com.android.gljni;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.WindowManager;

import java.io.File;


public class GLJNIActivity extends Activity {

    GLJNIView mView;

    @Override protected void onCreate(Bundle icicle) {
    @Override
    protected void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        mView = new GLJNIView(getApplication());
	    mView.setFocusableInTouchMode(true);
	    setContentView(mView);
    }

    @Override protected void onPause() {
    @Override
    protected void onPause() {
        super.onPause();
        mView.onPause();
    }

    @Override protected void onResume() {
    @Override
    protected void onResume() {
        super.onResume();
        mView.onResume();
    }
+1 −0
Original line number Diff line number Diff line
@@ -30,4 +30,5 @@ public class GLJNILib {
     */
     public static native void init(int width, int height);
     public static native void step();
     public static native void changeBackground();
}
+6 −0
Original line number Diff line number Diff line
@@ -80,5 +80,11 @@ class GLJNIView extends GLSurfaceView {
            // Do nothing.
        }
    }
    
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        GLJNILib.changeBackground();
        return true;
    }
}