Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android OpenGl什么是跨步?_Android_Graphics_Opengl Es - Fatal编程技术网

Android OpenGl什么是跨步?

Android OpenGl什么是跨步?,android,graphics,opengl-es,Android,Graphics,Opengl Es,我正在学习opengl 我使用了一个函数,比如Drawxxxxxx,其中一个参数是stride 我不知道它的用法,也不知道跨步的含义 有人能告诉我吗?Stride允许顶点数组在数组中定期访问其所需的数据。例如,为了仅引用交织数组中的颜色值,以下调用从数组的开头开始(也可以作为&interwined[0]传递),并向前跳转6*sizeof(GLfloat)字节,这是颜色和顶点坐标值的大小。此跳转足以到达下一个顶点数据的开头 GLCOLORPOINT(3,GL_浮点,6*sizeof(GLfloat

我正在学习opengl

我使用了一个函数,比如Drawxxxxxx,其中一个参数是stride

我不知道它的用法,也不知道跨步的含义


有人能告诉我吗?

Stride允许顶点数组在数组中定期访问其所需的数据。例如,为了仅引用交织数组中的颜色值,以下调用从数组的开头开始(也可以作为&interwined[0]传递),并向前跳转6*sizeof(GLfloat)字节,这是颜色和顶点坐标值的大小。此跳转足以到达下一个顶点数据的开头

GLCOLORPOINT(3,GL_浮点,6*sizeof(GLfloat),交织)

您可以点击以下链接----


当您希望向顶点着色器传递更多信息而不仅仅是顶点的位置时,可以使用所谓的交错阵列。例如:

struct Information {
    GLfloat position[3];
    GLfloat color[3];
    GLfloat texture[2];
};
因此,该结构的一个可能实例是:

struct Information vertices[] = { 
   // Positions          // Colors           // Texture Coords
   {{0.5f,  0.5f, 0.0f},   {1.0f, 0.0f, 0.0f},   {1.0f, 1.0f}},
   {{0.5f, -0.5f, 0.0f},   {0.0f, 1.0f, 0.0f},   {1.0f, 0.0f}},
   {{-0.5f, -0.5f, 0.0f},   {0.0f, 0.0f, 1.0f},   {0.0f, 0.0f}},
   {{-0.5f,  0.5f, 0.0f},   {1.0f, 1.0f, 0.0f},   {0.0f, 1.0f}}
};
为了正确地将其传递给着色器属性,您需要准确地通知它如何提取(例如)位置信息。这就是大步前进的地方

Stride是在此数组上启动新索引所需的跳转字节数。在本例中,它是
sizeof(结构信息)
。下面的图片很有帮助


有关更多信息,请参阅教程

我可以给我一些简单解释的例子吗?这个答案比公认的答案更清楚,图片清楚地解释了发生的事情。