Google Play Games yêu cầu bạn cập nhật các tính năng đồ hoạ cho trò chơi và tăng cường khả năng hỗ trợ màn hình lớn. Chủ đề này mô tả các yêu cầu đó và đề xuất liên quan.
Sau đây là tóm tắt về các yêu cầu và đề xuất có trên trang này:
- Khi có thể, hãy sử dụng quy trình nén hoạ tiết (nên dùng)
- Không sử dụng phiên bản OpenGL ES cao hơn 3.0 (bắt buộc)
- Nếu sử dụng Vulkan, bạn chỉ nên dùng phiên bản tối đa là 1.1 (bắt buộc)
- Tăng hoặc xoá giới hạn tốc độ khung hình (nên dùng)
- Sử dụng thành phần và hoạ tiết có độ phân giải cao (bắt buộc)
- Điều chỉnh tỷ lệ giao diện người dùng (bắt buộc)
- Hỗ trợ tỷ lệ khung hình bắt buộc (bắt buộc)
- Thực hiện cập nhật màn hình động (bắt buộc)
Nén hoạ tiết
Google Play Games sẽ chuyển sang hoạ tiết nén bất cứ khi nào có thể. Do đó, bạn nên sử dụng DXTC
hoặc BPTC
để khai thác phần cứng máy tính.
Đôi khi, các hoạ tiết này vẫn cần được giải nén để có thể mô phỏng các tính năng OpenGL nhằm đáp ứng khả năng tương thích. Do đó, bạn phải luôn thiết lập hồ sơ cho trò chơi.
Các định dạng như ETC1
và ETC2
được giải nén bằng lớp dịch OpenGL trước khi được gửi đến ngăn xếp đồ hoạ gốc. Các định dạng này sẽ tiếp tục hoạt động nhưng sẽ không đạt hiệu suất bộ nhớ hoặc thời gian chạy như bạn kỳ vọng trên phần cứng của thiết bị di động.
Phiên bản OpenGL ES
Google Play Games hỗ trợ OpenGL ES 3.0. Để duy trì khả năng tương thích với Google Play Games, hãy đảm bảo bạn không chỉ định phiên bản cao hơn OpenGL ES 3.0 trong tệp AndroidManifest.xml
.
Phiên bản Vulkan
Google Play Games hỗ trợ Vulkan 1.1. Để duy trì khả năng tương thích với Google Play Games, hãy đảm bảo trò chơi của bạn không yêu cầu phiên bản cao hơn Vulkan 1.1.
Tăng giới hạn tối đa về tốc độ khung hình
Một số người chơi có thể chạy trò chơi của bạn trên máy tính với tốc độ khung hình cao hơn nhiều so với trên thiết bị di động. Để mang đến trải nghiệm tốt nhất cho người chơi, bạn nên đảm bảo tốc độ khung hình tối thiểu là 60 khung hình/giây hoặc loại bỏ hoàn toàn giới hạn về tốc độ khung hình.
Tối ưu hoá cho màn hình lớn
Đối với màn hình lớn, Google Play Games có những yêu cầu tối ưu hoá sau đây:
Các thành phần và hoạ tiết có độ phân giải cao
Hiệu suất trên máy tính có thể đạt mức tương xứng với một thiết bị chạy Android cao cấp được ra mắt trong vòng 12 tháng qua. Điều này có nghĩa là trò chơi của bạn nên sử dụng tài sản trong trò chơi có độ phân giải cao hơn. Khi có thể, hãy cung cấp những thông tin này trong lần đầu ra mắt trò chơi. Người chơi thường sẽ dễ nhận biết các hoạ tiết và mô hình có độ phân giải thấp hơn trên màn hình lớn của máy tính so với trên điện thoại.
Nếu bạn sử dụng tệp Opaque Binary Blob OBB (còn gọi là tệp mở rộng APK) để phân phối thành phần, thì các thành phần bổ sung ở độ phân giải cao có thể khiến tổng kích thước vượt quá giới hạn của tệp OBB (2 GB bản chính và 2 GB bản vá). Trong trường hợp này, hãy cân nhắc sử dụng Play Asset Delivery để phân phối thành phần.
Với Play Asset Delivery, bạn có thể tự động phân phối các hoạ tiết phù hợp với định dạng nén hoạ tiết được hỗ trợ tốt nhất trên thiết bị mà không cần tăng kích thước trò chơi. Bạn cũng có thể nhắm đến các thiết bị dựa trên mức hiệu suất tương ứng và tự động phân phối hoạ tiết có độ phân giải cao hơn hoặc thấp hơn cho phù hợp.
Play Asset Delivery được hỗ trợ trên Unity 5.6 trở lên thông qua Trình bổ trợ Unity của Play Asset Delivery và trên Unreal Engine 4.25. Đối với các công cụ khác, chúng tôi cung cấp Java và SDK gốc.
Chuyển tỷ lệ giao diện người dùng
Đối với màn hình lớn hơn, bạn có thể cần điều chỉnh giao diện người dùng của trò chơi để đảm bảo tất cả các thành phần đều có kích thước phù hợp. HUD không nên chiếm quá 20% không gian màn hình.
Tỷ lệ khung hình
Google Play Games yêu cầu khả năng hỗ trợ tỷ lệ khung hình 16:9. Để mang đến trải nghiệm lý tưởng cho người chơi, các trò chơi cũng cần hỗ trợ tỷ lệ khung hình 21:9, 16:10 và 3:2.
Chế độ dọc
Trò chơi ở chế độ dọc chỉ cần hỗ trợ tỷ lệ khung hình 9:16. Google Play Games hiển thị các thanh màu đen ở chế độ toàn màn hình nếu trò chơi của bạn không hỗ trợ chế độ ngang.
Hiển thị động
Google Play Games hiển thị trò chơi của bạn theo độ phân giải màn hình cố định. Độ phân giải được xác định khi trò chơi khởi động, duy trì khi cửa sổ trò chơi thay đổi kích thước hoặc chuyển đổi giữa chế độ toàn màn hình và chế độ cửa sổ. Google Play Games không cung cấp lệnh gọi lại nào liên quan đến những thay đổi này. Hình ảnh kết xuất sẽ tự động mở rộng hoặc thu nhỏ cho phù hợp với kích thước cửa sổ trên màn hình, còn tỷ lệ khung hình thì không bao giờ thay đổi. Khi chuyển sang chế độ toàn màn hình có tỷ lệ khung hình khác với mức mà Google Play Games tính toán, trò chơi của bạn sẽ xuất hiện ở chính giữa và kéo giãn cho vừa với khu vực hiển thị có các thanh màu đen lấp đầy không gian trống còn lại nhằm duy trì tỷ lệ khung hình.
Để mang đến cho người chơi trải nghiệm tốt nhất khi thay đổi kích thước màn hình, hãy làm như sau:
- Nếu trò chơi của bạn chạy mượt nhất ở chế độ dọc và người chơi có thể vừa chơi trò đó vừa làm nhiều việc cùng lúc, thì đừng quy định hỗ trợ cho chế độ ngang. Tỷ lệ khung hình dọc chỉ phù hợp nhất nếu người chơi có màn hình dọc.
- Hãy quy định tỷ lệ khung hình tối thiểu và tối đa được hỗ trợ bằng
android:minAspectRatio
vàandroid:maxAspectRatio
nếu trò chơi không hỗ trợ đồng thời các tỷ lệ 21:9, 16:9, 16:10 và 3:2. - Mặc dù Google Play Games báo cáo DPI, nhưng điều này sẽ không thay đổi khi trò chơi của bạn đang hoạt động. Nếu trò chơi của bạn phù hợp để chạy khi người dùng làm nhiều việc cùng lúc, thì bạn nên kiểm thử mức độ dễ đọc của các yếu tố trong trò chơi khi chuyển đổi giữa chế độ cửa sổ và chế độ toàn màn hình.
- Độ phân giải màn hình của trò chơi được xác định theo mức phù hợp nhất giữa tỷ lệ khung hình được hỗ trợ của trò chơi và hình dạng màn hình chính.