Hiệu ứng mờ thời gian thực


7

Trong khi hiển thị cảnh của tôi bằng OpenGL, đôi khi tôi thêm một lớp phủ có chứa thông tin, cài đặt và một vài mục có thể kéo. Hiện tại, lớp phủ có nền hơi trong suốt để văn bản dễ đọc hơn trong khi vẫn cho phép cảnh chiếu xuyên qua và cho phép người dùng nhìn thấy cảnh phía sau / qua lớp phủ.

Tôi muốn thay thế nền trong suốt bằng một nền mờ, mà (theo như tôi biết) đòi hỏi hình ảnh rõ ràng của cảnh phải bị mờ nhiều *. Và đặc biệt trên các thiết bị di động (ví dụ iPad) có độ phân giải cao và khả năng xử lý hạn chế, rất nhiều tra cứu kết cấu và kết xuất thời gian thực không hoạt động tốt với nhau.

Có cách nào để làm cho khả năng mờ trong thời gian thực trên các thiết bị di động như iPad không? Hoặc có cách nào để tránh sự cần thiết phải làm mờ cảnh trong mỗi khung hình?

Biên tập:

Như được đề xuất trong các bình luận, đây là một hình ảnh tôi vừa tìm thấy trong Wikipedia mô tả sự khác biệt giữa độ trong suốt (cột bên phải) và độ trong mờ (cột giữa).

Độ mờ, mờ và trong suốt

(Nguồn hình ảnh: Wikipedia )


* Tôi biết có mờ hai chiều (mờ đầu tiên theo một và sau đó theo hướng khác) để giảm tra cứu kết cấu. Nhưng đối với độ trong mờ, điều này vẫn đòi hỏi khá nhiều tra cứu kết cấu.


Tôi không chắc là tôi hiểu bạn. Hơi trong suốt == mờ. Vì vậy, bạn đã sử dụng mờ. Bạn có thể làm rõ những gì bạn đang cố gắng làm? Hoàn toàn minh bạch nền? (Aka, rõ ràng / vô hình) Hoặc nền mờ? (Aka, bạn có thể thấy một số nội dung đằng sau nó, nhưng được phủ bằng màu nền)
RichieSams

@RichieSams Hiện tại tôi sử dụng nền đen đơn giản với độ trong suốt alpha được áp dụng. Vì vậy, cảnh có thể được nhìn thấy, nhưng vẫn sắc nét, làm mất tập trung của khả năng đọc của văn bản. Vì vậy, tôi muốn thay đổi độ trong suốt alpha đơn giản thành mờ. Một ví dụ trong thế giới thực có lẽ là sự khác biệt giữa nhìn qua kính màu tương ứng.
Nero

@Nero Trong đồ họa, "mờ" thường không bao hàm "mờ" hay "băng", vì vậy tôi khuyên bạn nên làm cho những gì bạn tìm kiếm rõ ràng hơn trong câu hỏi của bạn, vì tôi cũng khá bối rối vì nó.
yuriks

@yuriks translucent: (of a substance) allowing light, but not detailed shapes, to pass through. Dịch thường có nghĩa được sử dụng trong câu hỏi, vì vậy điều này có vẻ rõ ràng.
trichoplax

Câu trả lời:


6

Tôi nghĩ rằng bạn có thể muốn có một cái nhìn khác về giao diện người dùng iOS nếu bạn cho rằng việc làm mờ thời gian thực nằm ngoài phạm vi của phần cứng di động:

Trung tâm điều khiển iOS Trung tâm thông báo iOS

Blurs hoàn toàn nằm trong phạm vi của phần cứng di động. Có, bạn cần một số lượng mẫu kết cấu khá lớn để làm mờ với một hạt nhân lớn, nhưng các mẫu kết cấu cũng được lưu trữ rất tốt và bạn có thể sử dụng độ mờ có thể tách rời , điều đó có nghĩa là hiệu ứng làm mờ MxN yêu cầu các mẫu M + N, không phải mẫu M * N. Bạn cũng có thể tận dụng lấy mẫu song tuyến phần cứng để giảm số lượng mẫu mà độ mờ của bạn yêu cầu.


1
Tôi biết về Trung tâm thông báo và Trung tâm kiểm soát. Nhưng tôi nghi ngờ rằng những mờ này được tính theo thời gian thực khi ứng dụng đang hoạt động bị đóng băng trong khi một trong số chúng được hiển thị (hoặc ít nhất là nó không cập nhật giao diện người dùng nữa). Nhưng các liên kết trông đầy hứa hẹn. Cảm ơn!
Nero

1
@Nero Tôi nghi ngờ đó chủ yếu là vì lý do quyền lực. Khi bạn vuốt xuống từ Springboard để đến Spotlight, bạn sẽ có một vệt mờ có chiều rộng thay đổi tùy thuộc vào khoảng cách bạn đã kéo xuống và đó chắc chắn là thời gian thực.
John Calsbeek

4

Không có cách nào xung quanh nó. Nếu bạn muốn khu vực phía sau các hộp văn bản xuất hiện mờ ... bạn sẽ phải làm mờ nó.

Một cách để giảm thiểu chi phí hiệu năng là đảm bảo sử dụng độ mờ có thể tách rời 2 lần.

Một biện pháp khác có thể sẽ giúp ích (tùy thuộc vào bao nhiêu màn hình của hộp văn bản của bạn) là sử dụng cắt kéo hoặc kiểm tra stprint để chỉ tính toán độ mờ trong các khu vực của màn hình mà sau đó sẽ được bao phủ bởi các hộp văn bản. Nếu bạn làm điều này, hãy chắc chắn để lại một phần đệm dọc thêm ít nhất một nửa chiều rộng của hạt nhân mờ của bạn, nếu không, đường mờ thứ hai sẽ cố gắng lấy mẫu các texels không được tính toán trong kết cấu trung gian, dẫn đến hiện tượng mờ hoặc làm mờ mờ gần các cạnh của khu vực hộp văn bản. (Đây không phải là vấn đề đối với lần đầu tiên vì bạn sẽ lấy mẫu từ kết cấu không được che giấu ban đầu ở đó.)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.