我试图使用LWJGL的slick-util扩展加载到Java的四维四维世界上预先生成的PNG文件中的纹理坐标。纹理映射的奇怪问题
纹理文件是192x96像素,并且格式正确。它由6x3 32x32的瓷砖组成。
三维四边形宽1.5f宽。他们正确分开。
我有问题得到正确的纹理坐标。当我把0.0f到0.333333f作为y坐标时,我得到的显示比顶部瓷砖的高度略高。然而,如果我把0.0f-0.25f,我得到正好1/3的高度,这是我的瓷砖的高度。我还没有找到X坐标的幻数,但也许有人可以向我解释为什么根据纹理坐标,96的1/4是24,还是我做错了什么?我怀疑它可能是我的四倍大小和纹理之间的冲突。
Screenshot http://i52.tinypic.com/2qbafqp.jpg
立方体的顶部使用纹理坐标(0.0,0.0F),(0.0,0.333333f),(0.166666f,0.333333f),(0.166666f,0.0F),其应用从左上角逆时针移动到右上角。再一次,主要的纹理文件是32x32的瓷砖排列成192x96(96是高度)。
注意我在其中一块瓷砖的顶部放置了一条白线,以查看其边框,黑色线条位于其底部,然后是白色线条位于其下方的顶部。纹理'流血'太远了。正如你所看到的,其他纹理有他们自己甚至陌生的坐标。
安排纹理坐标,假设图像的顶部是1.0而不是底部,会产生奇怪的正方形,并在四边形的中心应该有一个矩形孔。
我正在使用TEX_ENV GL_MODULATE。
这是正确的,谢谢。 – Sean