GPUValidationError

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Note: This feature is available in Web Workers.

Giao diện GPUValidationError của WebGPU API mô tả một lỗi ứng dụng cho biết một thao tác không vượt qua được các ràng buộc xác thực của WebGPU API.

Nó đại diện cho một trong các loại lỗi được hiển thị bởi GPUDevice.popErrorScope và sự kiện uncapturederror.

Lỗi xác thực xảy ra khi các đầu vào không hợp lệ được đưa vào một lệnh gọi WebGPU. Những lỗi này nhất quán, có thể dự đoán được, và không nên xảy ra nếu ứng dụng của bạn được xây dựng đúng đắn. Chúng sẽ xảy ra theo cùng một cách trên mọi thiết bị mà mã của bạn chạy, vì vậy một khi bạn đã sửa các lỗi xuất hiện trong quá trình phát triển, bạn thường không cần quan sát chúng trực tiếp. Ngoại lệ là nếu bạn đang sử dụng các tài nguyên do người dùng cung cấp, shader, v.v., trong trường hợp đó việc theo dõi lỗi xác thực khi tải có thể hữu ích.

Note: Chúng tôi đã cố gắng cung cấp thông tin hữu ích để giúp bạn hiểu tại sao lỗi xác thực xảy ra trong mã WebGPU của bạn trong các phần "Validation" khi thích hợp, liệt kê các tiêu chí cần đáp ứng để tránh lỗi xác thực. Xem ví dụ phần Validation của GPUDevice.createBindGroup().

GPUError GPUValidationError

Hàm khởi tạo

GPUValidationError()

Tạo một đối tượng GPUValidationError mới.

Thuộc tính phiên bản

Thuộc tính message được kế thừa từ lớp cha, GPUError:

message Experimental Read only

Một chuỗi cung cấp thông báo dễ đọc giải thích lý do tại sao lỗi xảy ra.

Ví dụ

Ví dụ sau sử dụng phạm vi lỗi để bắt lỗi xác thực được nghi ngờ và ghi nó vào bảng điều khiển.

js
device.pushErrorScope("validation");

let sampler = device.createSampler({
  maxAnisotropy: 0, // Không hợp lệ, maxAnisotropy phải ít nhất là 1.
});

device.popErrorScope().then((error) => {
  if (error) {
    // error là một đối tượng GPUValidationError
    sampler = null;
    console.error(`An error occurred while creating sampler: ${error.message}`);
  }
});

Thông số kỹ thuật

Specification
WebGPU
# gpuvalidationerror

Tương thích trình duyệt

Xem thêm