WebGLRenderingContext: bindFramebuffer() method
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.
Note: This feature is available in Web Workers.
Phương thức WebGLRenderingContext.bindFramebuffer() của WebGL API liên kết với mục tiêu đã chỉ định là WebGLFramebuffer được cung cấp, hoặc, nếu đối số framebuffer là null, thì WebGLFramebuffer mặc định, được liên kết với bối cảnh kết xuất canvas.
Cú pháp
bindFramebuffer(target, framebuffer)
Thông số
target-
A
GLenumchỉ định điểm liên kết (đích). Các giá trị có thể:gl.FRAMEBUFFER-
Bộ sưu tập bộ đệm lưu trữ dữ liệu màu, alpha, bộ đệm độ sâu và stencil được sử dụng làm đích cho bản vẽ và làm nguồn để đọc (xem bên dưới).
Khi sử dụng WebGL 2 context, các giá trị sau đây có sẵn bổ sung:
- gl.DRAW_FRAMEBUFFER
- : Được sử dụng làm đích cho các thao tác vẽ như gl.draw*, gl.clear* và gl.blitFramebuffer.
- gl.READ_FRAMEBUFFER
- : Được sử dụng làm nguồn cho các hoạt động đọc như gl.readPixels và gl.blitFramebuffer.
framebuffer-
Một đối tượng
WebGLFramebufferđể liên kết, hoặcnullđể liên kết đối tượngHTMLCanvasElementhoặcOffscreenCanvasđược liên kết với bối cảnh kết xuất.
Giá trị trả về
Không có (undefined).
Ngoại lệ
Một lỗi gl.INVALID_ENUM được đưa ra nếu target không phải là gl.FRAMEBUFFER, gl.DRAW_FRAMEBUFFER, hoặc gl.READ_FRAMEBUFFER.
Ví dụ
>Liên kết bộ đệm khung
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const framebuffer = gl.createFramebuffer();
gl.bindFramebuffer(gl.FRAMEBUFFER, framebuffer);
Nhận các ràng buộc hiện tại
Để kiểm tra liên kết bộ đệm khung hiện tại, hãy truy vấn hằng số FRAMEBUFFER_BINDING.
gl.getParameter(gl.FRAMEBUFFER_BINDING);
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| WebGL Specification> # 5.14.6> |
| WebGL 2.0 Specification> # 3.7.1> |