Javascript 圆柱体的WebGL纹理坐标

Javascript 圆柱体的WebGL纹理坐标,javascript,webgl,texture-mapping,Javascript,Webgl,Texture Mapping,我在计算原始webgl中圆柱体的纹理空间坐标时遇到问题(没有使用框架)。我能够创建圆柱体的多边形列表和法向量,但不知怎的,我正在努力处理u,v纹理。我打算做的是: tex_step_x = 1 / divisions; for(var u = 0; u < divisions; u++) { // Top plate textureCoordData.push(0.5); textureCoordData.push(0.5); textureCoordDat

我在计算原始webgl中圆柱体的纹理空间坐标时遇到问题(没有使用框架)。我能够创建圆柱体的多边形列表和法向量,但不知怎的,我正在努力处理u,v纹理。我打算做的是:

tex_step_x = 1 / divisions;

for(var u = 0; u < divisions; u++)
{   
    // Top plate
    textureCoordData.push(0.5); textureCoordData.push(0.5);
    textureCoordData.push(1); textureCoordData.push(0.5);
    textureCoordData.push(1); textureCoordData.push(0);

    // The walls
    textureCoordData.push(tex_step_x*u); textureCoordData.push(1);
    textureCoordData.push(tex_step_x*u+tex_step_x); textureCoordData.push(1);
    textureCoordData.push(tex_step_x*u); textureCoordData.push(0);

    textureCoordData.push(tex_step_x*u); textureCoordData.push(0);
    textureCoordData.push(tex_step_x*u+tex_step_x); textureCoordData.push(0);
    textureCoordData.push(tex_step_x*u+tex_step_x); textureCoordData.push(1);

    // Code for the bottom circle
    textureCoordData.push(0); textureCoordData.push(1);
    textureCoordData.push(1); textureCoordData.push(0);
    textureCoordData.push(1); textureCoordData.push(1);
}
tex\u step\u x=1/分;
对于(变量u=0;u

圆柱体由底板和顶板的“蛋糕片”(具有不同高度)和每段墙的两个三角形组成。关于如何计算正确的u,v坐标有什么想法吗?

你能展示一下你用来生成圆柱体位置和法线的代码吗?我已经解决了,但忘了写答案。我认为这是某种缓存问题,即使我多次清除它。用不同的浏览器(firefox)打开它,纹理显示正确,然后我用safari重新打开它,它工作了。。我相信其他浏览器中也有类似的选项。例如您需要在Safari->Preferences->Advanced中打开“开发”菜单