2016-07-25 3 views
0

어떻게 QOpenGLShaderProgram을 사용하여 부울 값을 내 조각 쉐이더로 전달할 수 있습니까? 사용 true의 값을 전달하기 위해Qt (QOpenGLShaderProgram) - 일정한 부울 값을 설정 하시겠습니까?

self._program.setUniformValue('myVar', 1) 

을 한 다음 내 프래그먼트 쉐이더에서 사용 : 내 프로그램이 _program를 호출하면 (파이썬)

, 난 그냥이 같은 것을 사용할 수

uniform bool myVar; 

괜찮습니까? 아니면 다른 방법으로 사용해야합니까? 감사합니다.

답변

1

괜찮습니다. glUniform documentation 메시지 :

상기 I, F 변이체 또는 UI가 어느 타입 BOOL, bvec2, bvec3, bvec4, 또는 이들의 배열의 균일 한 변수에 대한 값을 제공하는데 사용될 수있다. 입력 된 값이 0 또는 0.0f이면 uniform 변수는 false로 설정되고, 그렇지 않으면 true로 설정됩니다.