我有 6 个纹理,我想在立方体的 6 个不同面上加载。我正在尝试使用GLGE.TextureCube();
. 然后我将所有六个图像加载到应该在立方体上的面孔,就像这样
mapTex = new GLGE.TextureCube();
mapTex.setSrcNegX("models/map/negx.jpg"); // they are all 1024x1024
mapTex.setSrcNegY("models/map/negy.jpg");
mapTex.setSrcNegZ("models/map/negz.jpg");
mapTex.setSrcPosX("models/map/posx.jpg");
mapTex.setSrcPosY("models/map/posy.jpg");
mapTex.setSrcPosZ("models/map/posz.jpg");
然后我将纹理添加到Wavefront
对象。但是,似乎只有 6 个纹理图像中的一个被映射并且它的映射不正确。
我的猜测是,当它从其他 6 个中创建新纹理贴图时,会将它们平铺在一起,因此新纹理贴图的坐标不再对应于我的 obj 文件。
如何正确地将 6 个纹理组合到一张地图以与 GLGE 一起使用?或者有没有办法在网格面上手动加载纹理?