NDK下 opengles 2.0 显示 yuv
源码在这里http://blog.csdn.net/wangchenggggdn/article/details/8896453
非常奇怪的是顶点坐标和纹理坐标 居然要根据不同机型设置
#if 0
// Galaxy Nexus 4.2.2
static GLfloat squareVertices[] = {
-1.0f, -1.0f,
1.0f, -1.0f,
-1.0f, 1.0f,
1.0f, 1.0f,
};
static GLfloat coordVertices[] = {
0.0f, 1.0f,
1.0f, 1.0f,
0.0f, 0.0f,
1.0f, 0.0f,
};
#else
// HUAWEIG510-0010 4.1.1
static GLfloat squareVertices[] = {
0.0f, 0.0f,
1.0f, 0.0f,
0.0f, 1.0f,
1.0f, 1.0f,
};
static GLfloat coordVertices[] = {
-1.0f, 1.0f,
1.0f, 1.0f,
-1.0f, -1.0f,
1.0f, -1.0f,
};
#endif
但是情况确实是这样的,我手头的手机,小米和中兴,确实需要利用这两套不同坐标,二者坐标如果互换,就会渲染到屏幕的右上角,但是奇怪的是,我如果在java层,用es2.0,来实现一个矩形,并且在上面贴纹理,不管是小米还是中兴手机,都只能使用第一套坐标,如果使用第二套坐标,就会渲染到屏幕的右上角。这真是很诡异啊,难道NDK和java不一样?
java纹理贴图代码可以参考这里
http://obviam.net/index.php/texture-mapping-opengl-android-displaying-images-using-opengl-and-squares/
最后又源码下载的
请各位3D,音视频的高手不吝赐教啊 opengles ndk android es 2.0 纹理坐标 --------------------编程问答-------------------- 一个人也没有 --------------------编程问答-------------------- 顶上去,同问! --------------------编程问答-------------------- 顶一下。 高手指点一下 --------------------编程问答-------------------- 有空我也研究一下这个,这东西研究的人不多。 --------------------编程问答-------------------- yuv是否转成了位图,如果是位图,在老的板子上面会出现这个问题。。。位图大小只能以2N次方显示,要不就白屏
补充:移动开发 , Android