WebGLRenderingContext: stencilFuncSeparate() 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.stencilFuncSeparate() của WebGL API thiết lập chức năng mặt trước và/hoặc mặt sau và giá trị tham chiếu cho việc kiểm tra stencil.
stencilling cho phép và vô hiệu hóa việc vẽ trên cơ sở từng pixel. Nó thường được sử dụng trong kết xuất nhiều lượt để đạt được các hiệu ứng đặc biệt.
Cú pháp
stencilFuncSeparate(face, func, ref, mask)
Thông số
face-
Một
GLenumxác định trạng thái stencil mặt trước và/hoặc mặt sau là được cập nhật. Các giá trị có thể là:gl.FRONTgl.BACKgl.FRONT_AND_BACK
func-
Một
GLenumchỉ định chức năng kiểm tra. Chức năng mặc định làgl.ALWAYS. Các giá trị có thể là:gl.NEVER: Không bao giờ vượt qua.gl.LESS: Đạt nếu(ref & mask) < (stencil & mask).gl.EQUAL: Đạt nếu(ref & mask) = (stencil & mask).gl.LEQUAL: Đạt nếu(ref & mask) <= (stencil & mask).gl.GREATER: Đạt nếu(ref & mask) > (stencil & mask).gl.NOTEQUAL: Đạt nếu(ref & mask) !== (stencil & mask).gl.GEQUAL: Đạt nếu(ref & mask) >= (stencil & mask).gl.ALWAYS: Luôn đậu.
ref-
A
GLintchỉ định giá trị tham chiếu cho thử nghiệm stencil. Cái này giá trị được giới hạn trong phạm vi từ 0 đến 2^n - 1 trong đó n là số mặt phẳng bit trong bộ đệm stencil. Giá trị mặc định là 0. mask-
Một
GLuintchỉ định một mặt nạ bit khôn ngoan được sử dụng để VÀ tham chiếu giá trị và giá trị stencil được lưu trữ khi quá trình kiểm tra được thực hiện. Giá trị mặc định đều là 1.
Giá trị trả về
Không có (undefined).
Ví dụ
Việc kiểm tra stencil bị tắt theo mặc định. Để bật hoặc tắt kiểm tra stencil, hãy sử dụng các phương thức enable() và disable() với đối số gl.STENCIL_TEST.
gl.enable(gl.STENCIL_TEST);
gl.stencilFuncSeparate(gl.FRONT, gl.LESS, 0.2, 1110011);
Để có được hàm stencil hiện tại, giá trị tham chiếu hoặc thông tin stencil khác, hãy truy vấn các hằng số sau bằng getParameter().
gl.getParameter(gl.STENCIL_FUNC);
gl.getParameter(gl.STENCIL_VALUE_MASK);
gl.getParameter(gl.STENCIL_REF);
gl.getParameter(gl.STENCIL_BACK_FUNC);
gl.getParameter(gl.STENCIL_BACK_VALUE_MASK);
gl.getParameter(gl.STENCIL_BACK_REF);
gl.getParameter(gl.STENCIL_BITS);
Thông số kỹ thuật
| Specification |
|---|
| WebGL Specification> # 5.14.3> |