0
OpenGL에서 어떤 텍스처가 어떤 메쉬와 관련되어 있는지 어떻게 알 수 있습니까? 이 예에서는 텍스처 좌표를 사용하는 메쉬에 대해 설명하지만, 둘 이상의 텍스처가있는 경우 텍스처를 말하지 않으며 그릴 곳을 텍스처에 지정하지 않습니다. 어떻게 작동합니까? (나는의 UV의 개념을 알고,하지만 난 질감이 그려집니다 ""의 개념을 모르는) :OpenGL/libgdx에서 텍스처가 그려지는 위치를 알려주는 방법은 무엇입니까?
mesh = new Mesh(true, 4, 6,
new VertexAttribute(VertexAttributes.Usage.Position, 3,"attr_Position"),
new VertexAttribute(Usage.TextureCoordinates, 2, "attr_texCoords"));
texture = new Texture(Gdx.files.internal("data/img.png"));
mesh.setVertices(new float[] {
-1024f, -1024f, 0, 0, 1,
1024f, -1024f, 0, 1, 1,
1024f, 1024f, 0, 1, 0,
-1024f, 1024f, 0, 0, 0
});
@Override
public void render() {
// Texturing ---------------------/
gl.glActiveTexture(GL10.GL_TEXTURE0);
gl.glEnable(GL10.GL_TEXTURE_2D);
texture.bind();
mesh.render(GL10.GL_TRIANGLES);
}
질감이 그려 = = UV 좌표 ... 사용되는 텍스처 =='glActiveTexture()' – Vallentin
@Vallentin 감사합니다. Vallentin, UV는 텍스처 자체를위한 것이지, 세계 어디가 아닙니까? activeTexture에 대해서, 2 메쉬와 두번째 텍스쳐가 어떻게 될지 말해 줄 수 있습니까? – Paul
세계에서, 물론 x, y, z 좌표를 사용하여 객체를 지정할 수 있습니다 ... "Multi Texturing"을 수행하려면 기본적으로 여러 텍스처를 바인딩하고 'glActiveTexture (GL_TEXTURE0);'를 사용하십시오. 그리고 나서'glActiveTexture (GL_TEXTURE1);'등등 ... 그러면 Shader에서 사용할 텍스처와 때를 구별하는 다양한 방법이 있습니다! – Vallentin