527 |
return arr; |
return arr; |
528 |
} |
} |
529 |
|
|
530 |
|
JNIEXPORT void JNICALL Java_gzz_gfx_gl_GL_impl_1Texture_1getTexImage |
531 |
|
(JNIEnv *env, jclass, jint id, jint level, jstring jformat, jstring jtype, |
532 |
|
jbyteArray jdata) { |
533 |
|
glBindTexture(GL_TEXTURE_2D, id); |
534 |
|
GLenum format = tokenFromJstring(env, jformat); |
535 |
|
GLenum type = tokenFromJstring(env, jtype); |
536 |
|
jbyte *b = env->GetByteArrayElements(jdata, 0); |
537 |
|
|
538 |
|
glPushClientAttrib(GL_CLIENT_PIXEL_STORE_BIT); |
539 |
|
glPixelStorei(GL_PACK_ROW_LENGTH, 0); |
540 |
|
glPixelStorei(GL_PACK_ALIGNMENT, 1); |
541 |
|
|
542 |
|
glGetTexImage(GL_TEXTURE_2D, level, format, type, b); |
543 |
|
|
544 |
|
glPopClientAttrib(); |
545 |
|
|
546 |
|
env->ReleaseByteArrayElements(jdata, b, 0); |
547 |
|
GLERR |
548 |
|
} |
549 |
|
|
550 |
|
|
551 |
|
|
552 |
JNIEXPORT void JNICALL Java_gzz_gfx_gl_GL_impl_1Texture_1compressedTexImage |
JNIEXPORT void JNICALL Java_gzz_gfx_gl_GL_impl_1Texture_1compressedTexImage |
553 |
(JNIEnv *env, jclass, jint id, jint level, jstring jinternalFormat, jint width, jint height, |
(JNIEnv *env, jclass, jint id, jint level, jstring jinternalFormat, jint width, jint height, |
554 |
jint border, jbyteArray jdata) { |
jint border, jbyteArray jdata) { |