Go에서 OpenGL 정점 버퍼 문제
Go에서 OpenGL을 사용하여 삼각형을 표시하려고 할 때 사용자가 정점에 문제가 발생했습니다. 버퍼가 모양을 렌더링하지 못했습니다. Go 코드는 튜토리얼에서 파생되었지만 C 코드와는 달리 아무런 출력도 생성하지 않았습니다.
문제 원인
문제의 근본 원인 vertexAttrib.AttribPointer()에 전달된 인수를 배치합니다. 특히 사용자가 배열 버퍼 오프셋으로 (void*)0을 잘못 지정했습니다. 이로 인해 응용 프로그램이 정점 데이터를 찾지 못했습니다.
해결책
문제를 해결하기 위해 사용자는 banthar 바인딩의 작업 분기로 전환하고 다음 조정 사항:
vertexAttrib.AttribPointer(
3, // size
gl.FLOAT, //type
false, // normalized?
0, // stride
nil) // array buffer offset
data := []float32{0, 1, 0, -1, -1, 0, 1, -1, 0}
[...]
gl.BufferData(gl.ARRAY_BUFFER, len(data)*4, data, gl.STATIC_DRAW)
[...]
추가 참고 사항
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3