Hỗ trợ trình duyệt 3D

Mô hình 3D mất màu: vì sao ảnh bị chặn?

Cập nhậtBiên tập kiểm tra

Trong mô hình 3D, hình học quyết định hình dạng và chuyển động, còn texture là ảnh được đặt lên bề mặt để tạo màu, hoa văn hoặc chi tiết. Vì vậy, một vật thể vẫn có thể xoay, di chuyển đúng nhưng bề mặt trở nên trắng, xám hoặc trơn khi ảnh texture không được tải hay không được phép dùng trong WebGL.

Ảnh mở được trong tab chưa đủ để kết luận

Ví dụ giả định: một vật thể trong bản trình diễn vẫn chuyển động, nhưng lớp bề mặt bị phẳng màu; cùng lúc đó, đường dẫn ảnh vẫn mở bình thường khi dán vào tab riêng. Hai quan sát này chưa chứng minh ảnh bị thiếu, cũng chưa chứng minh lỗi CORS. Trình duyệt có thể hiển thị ảnh trực tiếp nhưng vẫn từ chối việc đưa ảnh từ nguồn khác vào texture WebGL nếu nguồn ảnh không cấp quyền CORS phù hợp. Chi tiết này được mô tả trong tài liệu MDN về texture trong WebGL.

Phân biệt lỗi tệp ảnh và quyền sử dụng

Mã trạng thái HTTP 200 chỉ cho biết máy chủ đã trả về một phản hồi thành công cho yêu cầu ảnh. Nó không tự trả lời câu hỏi liệu phản hồi đó có cho phép trình duyệt sử dụng ảnh làm texture WebGL hay không. Đây là hai việc cần tách riêng: tệp có tồn tại và tải xuống được; ứng dụng có được phép đọc, xử lý ảnh trong ngữ cảnh WebGL hay không.

Do đó, không nên kết luận chỉ từ việc mở ảnh thành công, cũng không nên gọi mọi bề mặt mất màu là CORS. Cần có thông báo lỗi CORS cụ thể trong bảng điều khiển trình duyệt hoặc thông tin xác nhận từ người bảo trì để xác định nguyên nhân.

Thông tin người dùng nên ghi lại

Người báo lỗi có thể ghi rõ vật thể nào mất màu, ảnh hưởng toàn bộ mô hình hay chỉ một bộ phận, và các vật thể khác có hiển thị texture bình thường không. Kèm theo đó là trình duyệt, phiên bản, thời điểm gặp lỗi và nguyên văn thông báo lỗi nếu có. Những chi tiết này giúp phân biệt lỗi riêng của một tài nguyên với lỗi tải texture nói chung.

Phần kiểm tra dành cho người bảo trì

Người bảo trì cần đối chiếu nguồn thực tế của asset, các tiêu đề phản hồi do máy chủ trả về và đoạn mã chịu trách nhiệm tải ảnh, thay vì suy đoán từ tab xem ảnh. Cách xử lý phải tuân theo quyền truy cập của máy chủ cung cấp tài nguyên. Không nên vô hiệu hóa bảo mật trình duyệt hoặc dùng proxy để né kiểm soát truy cập, vì các cách đó không xác nhận rằng cấu hình triển khai thực tế là hợp lệ.

Lưu ý khi đọc:Bài viết chỉ nhằm cung cấp thông tin, giải thích quy tắc và nhắc nhở rủi ro. Nội dung không cung cấp tài khoản, xử lý thanh toán, dịch vụ cá cược hoặc bảo đảm kết quả. Người trưởng thành cần tuân thủ quy định tại nơi sinh sống.
Telegram