Java와 C ++를 모두 사용하는 Android OpenGL
-
19-09-2019 - |
문제
Java 및 Over OpenGL 호출을 혼합 할 수 있습니까? 예를 들어 onsurfacecreated에서 설정이 발생하지만 Ondraw 호출을 기본 코드 (또는 둘 다)로 사용 하는가? 나는 기본 코드를 렌더링하는 데 어려움이 있지만 이것이 문제가 될 수 있는지 또는 C ++ 예외를 던지는 지 알 수는 없지만 거품을 일으키지 않습니다 ...
private static native void drawFromJni();
public void onDrawFrame(GL10 gl) {
try{
drawFromJni();
//gl.glDrawArrays... also
}
catch (Exception ex){
ex.printStackTrace();
Log.e("sv", ex.getMessage());
}
}
public void onSurfaceChanged(GL10 gl, int width, int height) {
gl.glViewport(0, 0, width, height);
float ratio = (float) width / height;
gl.glMatrixMode(GL10.GL_PROJECTION);
gl.glLoadIdentity();
gl.glFrustumf(-ratio, ratio, -1, 1, 1, 10);
}
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
gl.glDisable(GL10.GL_DITHER);
gl.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT, GL10.GL_FASTEST);
gl.glClearColor(0,0,0,0);
gl.glEnable(GL10.GL_CULL_FACE);
gl.glShadeModel(GL10.GL_SMOOTH);
gl.glEnable(GL10.GL_DEPTH_TEST);
}
해결책
빠른 대답은 그렇습니다.
제휴하지 않습니다 StackOverflow