[Android]Android中运行OpenGL工程出错:java.lang.IllegalArgumentException: Must use a native order direct Buffer
2014-06-06 09:23
543 查看
解决办法:
1. 简单的: <uses-sdk android:minSdkVersion="3" /> Manifest.xml2. http://blog.163.com/li-bonan/blog/static/1355647702011210101821883/
创建一个方法,将Java缓冲数据转换成OpenGL ES中能够识别的缓冲数据
/*
* OpenGL 是一个非常底层的画图接口,它所使用的缓冲区存储结构是和我们的 java 程序中不相同的。
* Java 是大端字节序(BigEdian),而 OpenGL 所需要的数据是小端字节序(LittleEdian)。
* 所以,我们在将 Java 的缓冲区转化为 OpenGL 可用的缓冲区时需要作一些工作。建立buff的方法如下
* */
//public class BufferUtil{
public Buffer bufferUtil(int []arr){ // float型也可用该方法指定
IntBuffer mBuffer ;
// 先初始化buffer,数组的长度*4,因为一个int占4个字节
ByteBuffer byteBuffer = ByteBuffer.allocateDirect(arr.length * 4);
// 数组排列用nativeOrder
byteBuffer.order(ByteOrder.nativeOrder());
mBuffer = byteBuffer.asIntBuffer();
mBuffer.put(arr);
mBuffer.position(0);
return mBuffer;
}
//}
相关文章推荐
- Android中运行OpenGL工程出错:java.lang.IllegalArgumentException: Must use a native order direct Buffer
- 使用android OpenGL时出现的java.lang.IllegalArgumentException: Must use a native order direct Buffer错误问题解决
- Android OpenGL ES "java.lang.IllegalArgumentException: Must use a native order direct Buffe"
- Android OpenGL出错,IllegalArgumentException: Must use a native order direct Buffer
- 安卓异常之java.lang.IllegalArgumentException: Must use a native order direct Buffer
- android opengl es Must use a native order direct Buffer问题
- java.lang.IllegalArgumentException及at android.view.Surface.nativeUnlockCanvasAndPost(Native Method)
- Android报错:Caused by: java.lang.IllegalArgumentException: Service Intent must be explicit: Intent
- 使用Retrofit时出现 java.lang.IllegalArgumentException: URL query string "t={type}&p={page}&size={count}" must not have replace block. For dynamic query parameters use @Query.异常原因
- android L java.lang.IllegalArgumentException: Service Intent must be explicit隐式意图找不到错误解决
- [Android] View.setTag(key,Object) (java.lang.IllegalArgumentException: The key must be an application-specific resource id.)
- Android java.lang.IllegalArgumentException: parameter must be a descendant of this view
- java.lang.IllegalArgumentException: System memory ... must be at least ... Please use a larger heap
- java.lang.IllegalArgumentException: AppIndex: The URI scheme must be 'android-app' and follow the fo
- Android java.lang.IllegalArgumentException: Object returned from onCreateLoader must not be a non-static inn
- Android 错误信息java.lang.IllegalArgumentException: Illegal character in query at index xxx:
- android java.lang.IllegalArgumentException: The observer is null.异常解决【转】
- Bitmap.createBitmap java.lang.IllegalArgumentException: width and height must be > 0 问题解决
- Android Caused by: java.lang.IllegalArgumentException: column '_id' does not exist
- 错误 java.lang.IllegalArgumentException: parameter must be a descendant of this view 的解决方案