Sử dụng độ chính xác trung bình trong WebGL khi có thể

Ilmari Heikkinen

Thông báo với bạn bè của chúng tôi tại Opera, những người đã thử nghiệm WebGL trên phần cứng OpenGL ES 2.0 thực tế: nhiều bản minh hoạ và ứng dụng sử dụng độ chính xác cao trong trình đổ bóng mảnh khi tính năng này không thực sự được đảm bảo.

Việc tăng cường hiệu ứng bóng đổ trong mảnh là một phần không bắt buộc trong thông số kỹ thuật OpenGL ES 2.0, vì vậy không phải tất cả phần cứng đều hỗ trợ tính năng này (và ngay cả khi có, hiệu suất cũng có thể bị ảnh hưởng). Việc sử dụng mediump thường là đủ tốt và giúp đảm bảo rằng các ứng dụng của bạn cũng sẽ hoạt động trên thiết bị di động.

Trong thực tế, nếu trước đây chương trình đổ bóng mảnh của bạn bắt đầu bằng

precision highp float;

Việc thay đổi thành như sau sẽ có hiệu quả:

precision mediump float; // or lowp