VnReview
Hà Nội

Epic chia sẻ nỗi khổ khi phát hành game Fornite cho Android

Các nhà phát triển game Fortnite rất đau đầu với tình trạng phân mảnh của Android hiện nay.

Epic chia sẻ nỗi khổ khi phát hành game Fornite cho Android

Theo trang công nghệ;Android Authority, một trong những game lớn nhất phát hành mùa hè năm nay là Fortnite. Trò chơi, hiện đã có sẵn trên các nền tảng khác, cuối cùng cũng cập bến Android với chương trình beta được Epic ra mắt vào ngày 9/8.

Ban đầu, trò chơi chỉ có sẵn cho các thiết bị Samsung nhưng không lâu sau Epic đã gửi lời mời chơi thử phiên bản beta cho nhiều chủ sở hữu thiết bị Android khác. Dù chỉ mới hỗ trợ một số lượng thiết bị Android hạn chế nhưng Epic cho biết đã có 15 triệu người chơi cài đặt game này sau 21 ngày ra mắt.

Nhưng tại sao việc phát hành lại chậm? Tại sao chỉ một số thiết bị được hỗ trợ? Tại sao không ra mắt Fornite cho tất cả mọi người? Câu trả lời chính thức là Fortnite là một trò chơi yêu cầu cao chỉ những thiết bị được phát hành trong vòng hai năm qua mới có khả năng chơi được. Tuy nhiên, đó không phải là toàn bộ câu chuyện.

Epic vừa đăng tải một bài viết trên blog của công ty để nói về cuộc chiến chống phân mảnh Android và cách họ vượt qua những khác biệt lớn về phần cứng và phần mềm để mở rộng hỗ trợ cho người dùng các thiết bị hàng đầu của Samsung kể từ Samsung Galaxy S7; tất cả điện thoại thông minh Pixel của Google; một số thiết bị từ Huawei, bao gồm Honor 10, Mate 10 và P20; LG G5 trở lên, cũng như LG V20 và mới hơn; Nokia 8; OnePlus 5, 5T và 6 cùng một số thiết bị phổ biến từ Xiaomi, Asus và ZTE.

Fortnite sử dụng Unreal Engine, một hệ sinh thái phát triển trò chơi 3D hỗ trợ rộng rãi nhiều nền tảng. Theo cách này, Fortnite có thể hoạt động trên Android mà không cần viết lại toàn bộ trò chơi nhưng vấn đề khó khăn hơn chính là việc tối ưu hóa hiệu suất, sự ổn định và mức sử dụng bộ nhớ.

Phân mảnh phần cứng

Cái đẹp của hệ sinh thái Android là sự đa dạng. Người tiêu dùng có quá nhiều thiết bị để lựa chọn ở các mức giá khác nhau. Nhưng sự đa dạng này có thể là một cơn ác mộng đối với các nhà phát triển ứng dụng và trò chơi.

Epic chia sẻ nỗi khổ khi phát hành game Fornite cho Android

Ví dụ, có rất nhiều bộ vi xử lý khác nhau được tìm thấy trong các thiết bị Android. Nhiều thiết bị sử dụng bộ vi xử lý Snapdragon từ Qualcomm tích hợp GPU Adreno. Nhưng cũng có nhiều thiết bị khác sử dụng bộ xử lý từ Samsung (Exynos), MediaTek (MTxxxx) hoặc Huawei (Kirin). Những bộ xử lý này sử dụng GPU Mali từ ARM.

Một số GPU chỉ hỗ trợ OpenGL 3.x, trong khi một số khác hỗ trợ OpenGL 3.x và Vulkan. Ngoài ra, hầu hết các nhà sản xuất đều tùy chỉnh tính năng quản lý và lập lịch biểu trên thiết bị của họ. Epic cũng thấy rằng các thiết bị có cùng GPU nhưng lại dùng các trình điều khiển đồ họa khác nhau. Điều này có nghĩa là hai thiết bị chia sẻ cùng một phần cứng cơ bản có thể có các đặc tính hiệu suất rất khác nhau.

Để có được kết quả tốt nhất trên các thiết bị của Samsung, Epic đã làm việc chặt chẽ với các kỹ sư của Samsung và thậm chí đã đóng góp các thay đổi phần mềm cho trình kết xuất Vulkan. Google cũng có vai trò và các kỹ sư của họ đã giúp Epic xác định các lĩnh vực chính cần tối ưu hóa. Ngoài ra, ARM, Qualcomm và nhiều công ty khác cũng tham gia hỗ trợ Epic phát triển game Fornite cho Android.

Phân mảnh phần mềm

Việc cập nhật chậm các phiên bản Android mới nhất thường được coi là yếu tố lớn trong phân mảnh Android. Tuy nhiên, Epic nhận thấy 92% người dùng Fortnite đang chạy Android 8.0 Oreo hoặc mới hơn.

Epic chia sẻ nỗi khổ khi phát hành game Fornite cho Android

Vấn đề lớn hơn là những thay đổi mà các nhà sản xuất điện thoại thực hiện đối với các phiên bản Android. Chẳng hạn, mỗi thiết bị được gán một dung lượng bộ nhớ khác nhau và các thiết lập khác nhau khi cần ngừng ứng dụng khi bộ nhớ đầy. Epic đã thử phân bổ bộ nhớ trên Galaxy S8 (sử dụng GPU Mali) và thấy rằng điện thoại này có thể phân bổ 3GB trong tổng số 4GB bộ nhớ RAM, trong khi đó Google Pixel 2 chỉ có thể phân bổ 1,8 GB trên tổng dung lượng 3,6 GB bộ nhớ của máy.

Nói cách khác, cả hai thiết bị đều có RAM 4GB nhưng mức phân bố bộ nhớ tối đa cho một ứng dụng lại khác nhau.

Quá nhiều GPU

Để hỗ trợ một loạt thiết bị với bộ nhớ và đặc tính hiệu suất khác nhau, Epic sử dụng cách tiếp cận "cổ điển" được tìm thấy trên nhiều trò chơi PC, đó là các tùy chọn hiệu suất: Thấp, Trung bình, Cao và Epic. Các cấp này điều chỉnh cài đặt trong trò chơi để tăng hiệu suất nhưng có thể làm giảm chất lượng hình ảnh.

Epic chia sẻ nỗi khổ khi phát hành game Fornite cho Android

Ví dụ: Low (mức hiệu suất thấp) sẽ kéo gần khoảng cách nhìn và vô hiệu tất cả các tính năng đồ họa tùy chọn. Nhưng mức độ Epic sẽ bật tất cả mọi thứ bao gồm hiệu ứng đổ bóng cộng với tầm nhìn xa nhất. Ngoài ra, còn có nhiều loại GPU khác nhau, ví dụ Adreno 54x, Adreno 630 và Mali G72. Mỗi loại GPU chọn cấu hình hiệu suất phù hợp nhất với khả năng của phần cứng.

Cuối cùng, Epic phải tạo các bộ dữ liệu (profile) khác nhau dành cho các thiết bị khác nhau, ví dụ Samsung Galaxy Note 9 Adreno và Google Pixel 2 XL. Điều này cho phép trò chơi thực hiện các giải pháp bổ sung hoặc tối ưu hóa khi cần.

Epic chia sẻ nỗi khổ khi phát hành game Fornite cho Android

Nhìn chung, nhà phát triển game Epic phải tùy biến rất nhiều phần mềm để phiên bản game Fornite cho Android hoạt động tốt với nhiều thiết bị phần cứng khác nhau. Epic muốn sử dụng Vulkan (chứ không phải OpenGL ES) trên nhiều thiết bị và đang tiếp tục cải thiện hỗ trợ Vulkan bằng cách làm việc với các nhà sản xuất thiết bị để tối ưu hóa. Về lâu dài, cải thiện hỗ trợ Vulkan sẽ giúp Fortnite mang lại hiệu suất tốt hơn cho người chơi, và nó cũng sẽ mang lại lợi ích cho tất cả các game dựa trên Unreal Engine 4 được phát hành trên Android.

Bạch Đằng

Chủ đề khác