openGl ES开发 的native buffer问题

异常:Must use a native order direct Buffer

java.lang.IllegalArgumentException: Must use a native order direct Buffer.



public Buffer intBuffer(int[] data){
IntBuffer intBuffer ;
ByteBuffer bbuffer = ByteBuffer.allocateDirect(data.length * 4); //int和float均占用4字节
bbuffer.order(ByteOrder.nativeOrder());
intBuffer = bbuffer.asIntBuffer();
intBuffer.put(data);
intBuffer.position(0);
return intBuffer ;
}

public Buffer bufferUtilf(float[] data){
FloatBuffer fBuffer ;
ByteBuffer bbuffer= ByteBuffer.allocateDirect(data.length * 4);
bbuffer.order(ByteOrder.nativeOrder());
fBuffer = bbuffer.asFloatBuffer();
fBuffer.put(data);
fBuffer.position(0);
return fBuffer;
}

gl.glVertexPointer(3, GL10.GL_FLOAT, 0, floatBuffer(triangleData));
gl.glColorPointer(4, GL10.GL_FIXED, 0, intBuffer(triangleColor));


参见:http://hi.baidu.com/timestrider/item/b95574723f3603376dc37cee
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值