2017-12-14 5 views
0

몇 가지 기본적인 OpenGL 튜토리얼을 통해이 코드를 더 잘 만들 수 있는지 알고 싶습니다.GL_TEXTURE_2D의 각 바인딩에 대한 텍스처 매개 변수를 설정하고 있습니까?

제 질문은 C++이지만 다른 언어로 된 다른 OpenGL 구현으로 이어질 것이라고 저는 믿습니다. 여기

코드입니다 :

glGenTextures(1, &texture1); 
glBindTexture(GL_TEXTURE_2D, texture1); 

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST); 
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); 
//load the data for the texture, apply it, the free the data 

glGenTextures(1, &texture2); 
glBindTexture(GL_TEXTURE_2D, texture2); 
//Now the question. 

texture2 결합 후, 내가 두 이미지에 동일한 효과를 원하는 경우 glTexParameteri 라인을 반복이 켜지지 다음인가?

답변

2

텍스처 매개 변수는 텍스처 개체의 상태의 일부입니다. 텍스처 매개 변수를 설정하면 해당 객체에서 상태를 설정합니다. 그래서 당신의 질문은 "내가 x.v = 5; 일 경우, y.v은 또한 xy이 같은 유형이라면 5입니까?

이 개체 x에 상태를 설정하는 것과 마찬가지로 컨텍스트에 개체를 바인딩 한 다음 해당 바인딩 포인트에서 상태 설정 함수를 호출하면 개체의 상태가 설정됩니다. OpenGL은 단순히이 개념에 대해 특별한 철자법을 사용합니다 (함수가 객체 또는 컨텍스트에 상태를 설정하는 경우이를 찾아 보지 않고서는 알기가 어렵습니다).

그래서 하나의 객체에 상태를 설정해도 해당 바인딩 포인트에 바인딩되는 상태로 다른 상태로 전송되지 않습니다.