WebGLRenderingContext: bindBuffer() 메서드
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
io error: No such file or directory (os error 2) (/home/runner/work/yari/yari/mdn/translated-content/files/ko/web/api/webglrenderingcontext/index.md)
WebGL API의 WebGLRenderingContext.bindBuffer()
메서드는 주어진 WebGLBuffer
target에 바인딩합니다.
구문
bindBuffer(target, buffer)
매개변수
target
-
바인딩 포인트(target)을 지정하는
GLenum
입니다. 가능한 값들은 다음과 같습니다.gl.ARRAY_BUFFER
-
정점 좌표, 텍스처 좌표 데이터 또는 정점 색상 데이터 등의 정점 속성을 포함하는 버퍼입니다.
gl.ELEMENT_ARRAY_BUFFER
-
요소 인덱스를 위한 버퍼입니다.
WebGL 2 context 를 사용하면 추가로 다음의 값들이 가능합니다.
gl.COPY_READ_BUFFER
-
한 버퍼 객체에서 다른 버퍼 객체로 복사하기 위한 버퍼입니다.
gl.COPY_WRITE_BUFFER
-
한 버퍼 객체에서 다른 버퍼 객체로 복사하기 위한 버퍼입니다.
gl.TRANSFORM_FEEDBACK_BUFFER
-
변환 피드백 작업을 위한 버퍼입니다.
gl.UNIFORM_BUFFER
-
유니폼 블록을 저장하기 위한 버퍼입니다.
gl.PIXEL_PACK_BUFFER
-
픽셀 전송 작업을 위한 버퍼입니다.
gl.PIXEL_UNPACK_BUFFER
-
픽셀 전송 작업을 위한 버퍼입니다.
buffer
-
바인딩할
WebGLBuffer
입니다.
반환 값
없음 (undefined
).
예외
주어진 WebGLBuffer
에는 한 target만 바인딩할 수 있습니다. 버퍼를 다른 타겟에 바인딩하려는 시도는 INVALID_OPERATION
오류를 던지고 현재 버퍼 바인딩은 유지됩니다.
deleteBuffer
로 삭제로 표시된 WebGLBuffer
는 (재)바인딩할 수 없습니다. 시도할 경우 INVALID_OPERATION
오류를 발생시키고, 현재 바인딩은 그대로 유지됩니다.
예제
버퍼를 타겟에 바인딩하기
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const buffer = gl.createBuffer();
gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
현재 바인딩 확인하기
현재 버퍼 바인딩을 확인하려면,ARRAY_BUFFER_BINDING
과 ELEMENT_ARRAY_BUFFER_BINDING
상수를 조회하십시오.
gl.getParameter(gl.ARRAY_BUFFER_BINDING);
gl.getParameter(gl.ELEMENT_ARRAY_BUFFER_BINDING);
명세서
Specification |
---|
WebGL Specification # 5.14.5 |
WebGL 2.0 Specification # 3.7.1 |
브라우저 호환성
BCD tables only load in the browser