Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.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
Java 使用OpenGL和LWJGL对圆柱体进行无缝纹理处理_Java_Opengl_Textures_Lwjgl - Fatal编程技术网

Java 使用OpenGL和LWJGL对圆柱体进行无缝纹理处理

Java 使用OpenGL和LWJGL对圆柱体进行无缝纹理处理,java,opengl,textures,lwjgl,Java,Opengl,Textures,Lwjgl,我正在创建一个程序化的城市,包括随机生成的建筑和纹理。我正在正确地生成圆柱状建筑,并为窗口生成程序纹理图案,但当我将纹理映射到圆柱上时,它并没有显示出我认为应该显示的效果 图中显示了我的三个问题。 首先,我的圆柱体代码将随机跳过90度,以从圆柱体上创建看起来不错的切片,当其中两个发生时,第二个具有您在这里看到的拉伸纹理。第一片看起来很好。这是图像上的第二个数字 第二个问题(编号为1)是,出于某种原因,它似乎将纹理的很大一部分映射到圆柱体末端的一个小切片上,每次都会发生这种情况 第三个问题稍难注

我正在创建一个程序化的城市,包括随机生成的建筑和纹理。我正在正确地生成圆柱状建筑,并为窗口生成程序纹理图案,但当我将纹理映射到圆柱上时,它并没有显示出我认为应该显示的效果

图中显示了我的三个问题。 首先,我的圆柱体代码将随机跳过90度,以从圆柱体上创建看起来不错的切片,当其中两个发生时,第二个具有您在这里看到的拉伸纹理。第一片看起来很好。这是图像上的第二个数字

第二个问题(编号为1)是,出于某种原因,它似乎将纹理的很大一部分映射到圆柱体末端的一个小切片上,每次都会发生这种情况

第三个问题稍难注意,虽然它最容易在1号上看到,但如果你看顶部,纹理比底部宽得多,我不知道为什么

以下是我创建圆柱体并对其进行纹理处理的源代码:

以下是生成纹理的代码以及存储和渲染实际顶点的代码:

结果证明#1的问题在这里:

 if(i < v2UVA.length-1)
if(i
换成

 if(i < v2UVA.length)
if(i
这个问题就消失了。不知道为什么会拉伸,但我只是将最大剪切限制为1,效果很好