WebGLRenderingContext: pixelStorei() 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.pixelStorei() của WebGL API chỉ định các chế độ lưu trữ pixel.
Cú pháp
pixelStorei(pname, param)
Thông số
Giá trị trả về
Không có (undefined).
Thông số lưu trữ pixel
Tên thông số (đối với pname) | Mô tả | Loại | Giá trị mặc định | Các giá trị được phép (đối với param) | Được chỉ định in |
|---|---|---|---|---|---|
gl.PACK_ALIGNMENT | Đóng gói dữ liệu pixel vào bộ nhớ | GLint | 4 | 1, 2, 4, 8 | OpenGL ES 2.0 |
gl.UNPACK_ALIGNMENT | Giải nén dữ liệu pixel khỏi bộ nhớ. | GLint | 4 | 1, 2, 4, 8 | OpenGL ES 2.0 |
gl.UNPACK_FLIP_Y_WEBGL | Lật dữ liệu nguồn dọc theo trục tung của nó nếu đúng. | GLboolean | falset | true, false | WebGL |
gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL | Nhân kênh alpha thành các kênh màu khác | GLboolean | false | true, false | WebGL |
gl.UNPACK_COLORSPACE_CONVERSION_WEBGL | Chuyển đổi không gian màu mặc định hoặc không chuyển đổi không gian màu. | GLenum | gl.BROWSER_DEFAULT_WEBGL | gl.BROWSER_DEFAULT_WEBGL, gl.NONE | WebGL |
Khi sử dụng WebGL 2 context, các giá trị sau đây có sẵn bổ sung:
| Không đổi | Mô tả | Loại | Mặc định value | Các giá trị được phép (cho param) | Được chỉ định trong |
|---|---|---|---|---|---|
gl.PACK_ROW_LENGTH | Số pixel trên một hàng. | GLint | 0 | 0 đến Vô cực | OpenGL ES 3.0 |
gl.PACK_SKIP_PIXELS | Số vị trí pixel bị bỏ qua trước khi pixel đầu tiên được ghi vào bộ nhớ. | GLint | 0 | 0 đến Vô cực | OpenGL ES 3.0 |
gl.PACK_SKIP_ROWS | Số lượng các hàng vị trí pixel bị bỏ qua trước khi pixel đầu tiên được ghi vào bộ nhớ Vô cực | OpenGL ES 3.0 | |||
gl.UNPACK_ROW_LENGTH | Số pixel trên một hàng. | GLint | 0 | 0 đến Vô cực | OpenGL ES 3.0 |
gl.UNPACK_IMAGE_HEIGHT | Chiều cao hình ảnh được sử dụng để đọc dữ liệu pixel từ bộ nhớ | GLint | 0 | 0 đến Vô cực | OpenGL ES 3.0 |
gl.UNPACK_SKIP_PIXELS | Số lượng ảnh pixel bị bỏ qua trước khi pixel đầu tiên được đọc từ bộ nhớ | GLint | 0 | 0 đến Vô cực | OpenGL ES 3.0 |
gl.UNPACK_SKIP_ROWS | Số hàng vị trí pixel bị bỏ qua trước khi pixel đầu tiên được đọc từ bộ nhớ | GLint | 0 | 0 tới Vô cực | OpenGL ES 3.0 |
gl.UNPACK_SKIP_IMAGES | Số lượng ảnh pixel bị bỏ qua trước khi pixel đầu tiên được đọc từ bộ nhớ | GLint | 0 | 0 đến Vô cực | OpenGL ES 3.0 |
Ví dụ
Việc thiết lập chế độ lưu trữ pixel sẽ ảnh hưởng đến các hoạt động của WebGLRenderingContext.readPixels(), cũng như việc giải nén các kết cấu bằng các phương pháp WebGLRenderingContext.texImage2D() và WebGLRenderingContext.texSubImage2D().
const tex = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, tex);
gl.pixelStorei(gl.PACK_ALIGNMENT, 4);
Để kiểm tra các giá trị đóng gói và giải nén dữ liệu pixel, bạn có thể truy vấn các tham số lưu trữ pixel tương tự bằng WebGLRenderingContext.getParameter().
gl.getParameter(gl.PACK_ALIGNMENT);
gl.getParameter(gl.UNPACK_ALIGNMENT);
Thông số kỹ thuật
| Specification |
|---|
| WebGL Specification> # 5.14.3> |
| WebGL Specification> # PIXEL_STORAGE_PARAMETERS> |
| WebGL 2.0 Specification> # 3.7.2> |