Menu tròn là một lớp phủ trên màn hình diễn tả các hành động trong trò chơi, hiển thị dưới dạng vòng và dùng tay cầm để chọn. Chúng rất giống
Menu cảm ứng, nhưng thay vì chọn một vị trí chỉ định trên bề mặt cảm ứng, người chơi phải dùng con trỏ ảo chỉ đến tùy chọn mình muốn, rồi chọn để kích hoạt hành động.
Bạn có thể dùng chúng để chuyển vũ khí trong trò chơi bắn súng góc nhìn thứ nhất, bật tắt phím nóng trong chiến thuật thời gian thực hay MMO, hoặc theo bất kỳ kiểu nào mình có thể nghĩ ra. Menu tròn có thể được thiết lập theo nhiều cách, từ hành vi cho đến kiểu dáng, và có thể được gắn thêm các nhãn và biểu tượng riêng (cung cấp bởi Valve, nhà phát triển, hoặc người chơi).
Sau đây là ví dụ về menu tròn để chọn nhanh phép trong
Defender's Quest: Valley of the Forgotten:
Menu tròn tại trung tâm màn hình
không phải là một phần code của
Defender's Quest. Nó hoàn toàn được tạo bởi lớp phủ Steam và thiết lập Steam Input. Còn với ứng dụng
Defender's Quest, nó chỉ đơn giản nhận tín hiệu các hành động từ API Steam Input.
Menu tròn có cả trong chế độ native lẫn legacy, nhưng chỉ có thể được điều khiển bởi
Nguồn đầu vào:
Nguồn đầu vào | Hỗ trợ Menu tròn |
---|
Bàn rê | ✓ |
DPad | ✓ |
Bảng nút | ✓ |
Cần trỏ | ✓ |
Gyro | |
Công tắc (Switch) | |
Cò | |
Để tạo menu tròn, chỉ cần chọn nguồn đầu vào tương thích với thiết lập của trò chơi (như cần trỏ hay bàn rê), và chọn "Menu tròn" làm kiểu tương tác.
Màn hình thiết lập menu tròn sẽ trông như thế này:
Tùy chọn cơ bản
Cách kích hoạt menu
Quyết định cách menu tròn hoạt động -- liệu hành động có nên thực thi khi bạn chỉ vào nó rồi thả, hay phải nhấp cái gì dó trước, hay nên liên tục thực hiện miễn còn được chỉ đến?
Các tùy chọn là:
Cách kích hoạt menu | Mô tả | Nhấn nút | Hành động được chọn sẽ thực thi khi bạn ấn tương tác |
Thả nút | Hành động được chọn sẽ thực thi chỉ khi bạn ấn rồi thả tương tác |
Ngừng chạm/Kết thúc chuyển chế độ | Hành động được chọn sẽ thực thi khi ngừng tương tác (như thả nút hoặc nhấc tay lên khỏi bàn rê/cần trỏ) hoặc, nếu menu tròn đang ở kiểu chuyển chế độ, thì làm khi chuyển chế độ kết thúc. |
Luôn luôn | Thực thi hành động miễn là nó được chọn |
Tùy chọn khác
Tùy chọn | Mô tả | Vị trí trên màn hình theo trục tung / hoành | Menu tròn nên hiện ở đâu trên màn hình? Giá trị từ 0.0-1.0, với số không đại diện cho rìa trái/trên cùng màn hình, và một đại diện cho rìa phải/dưới cùng. |
Độ mờ menu | Menu tròn có nền đen và bạn có thể kiểm soát độ trong suốt của nó. Tuy thế, bản thân biểu tượng của hành động sẽ luôn luôn hiện với độ mờ 100%. |
Kích cỡ menu | Menu lớn cỡ nào? Chỉ số từ 0.0-1.0, từ nhỏ nhất đến lớn nhất. |
Hiển thị nhãn lệnh trên nút | Nút menu tròn có thể hiển thị một nhãn chữ xác định hành động tương tác nào được gán cho nút. Nếu sử dụng biểu tượng, nhãn sẽ hiện ở góc trái phía trên. Khi tắt chức năng hiện nhãn, biểu tượng hoặc nút trống sẽ được dùng. |
Hành động nhấp | Đây là hành động không gán với bất kỳ đầu vào cụ thể nào, mà thay vào đó là chính menu tròn. Cách này hữu dụng khi kết hợp cùng với kiểu kích hoạt menu tròn "Luôn bật". Một ví dụ điển hình là gán nó với chức năng "tạm dừng," để mỗi khi bật menu tròn lên, trò chơi sẽ tạm dừng để bạn có thời gian chọn lựa. |
Nút menu
Mỗi tùy chọn "Nút menu X" có thể gán một hành động (và/hoặc gán phím kiểu legacy) lên nó. Màn hình thiết lập cơ bản có năm nút menu, nhưng bạn có thể gán lên đến hai mươi (chọn "Thiết lập bổ sung" để gán nút menu 6-20).
Nút ở tâm/chưa chọn
Cũng có tùy chọn nút "trung tâm" để căn giữa vị trí menu tròn, có thể gán được như bất kỳ nút menu tròn nào khác. Lưu ý rằng nút này sẽ gia tăng kích thước theo số lượng nút menu bạn thêm vào.
MẸO: Để lệnh hủy ở trung tâm
Tùy vào trò chơi, bạn có thể muốn người chơi dễ dàng lui ra khỏi menu tròn mà không vô tình kích hoạt cái gì. Nếu bạn đang dùng kiểu kích hoạt "Ngừng chạm/Kết thúc chuyển chế độ", nó có thể hơi rối rắm vì hành động chọn sau cùng sẽ lập tức thi triển khi đóng menu tròn.
Một trong những cách hay là tạo một hành động hoàn toàn không dùng tới trong trò chơi (hãy gọi nó là "đừng bận tâm" hoặc gì cũng được), và gán nó vào nút trung tâm. Hoặc, nếu bạn là người chơi và nhà phát triển chưa thêm hành động đó vào (hoặc bạn ở trong chế độ legacy), gán nút trung tâm vào phím legacy nào đó mà trò chơi không dùng tới. Rồi, chọn một chữ "X" đẹp đẹp cho nút menu này.
Thế là xong! Giờ khi bạn muốn hủy menu tròn mà không thực hiện hành động nào, chỉ cần quay về vị trí trung tâm và thả tương tác ra.Biểu tượng nút menu
Với mỗi nút menu, bạn có thể gán một biểu tượng. Chọn ô bên cạnh chữ "biểu tượng" và gán:
Khi chọn một biểu tượng, bạn cũng có thể đổi màu cho nó:
Mặc định, biểu tượng sẽ do Valve cung cấp từ chính phần mềm Steam. Bạn có thể tìm thấy nó tại
<SteamInstallDirectory>\Steam\tenfoot\resource\images\library\controller\binding_icons (và nếu bạn tự thêm biểu tượng của mình vào đây, nó sẽ hiện trong menu này, tuy nhiên chỉ dành cho máy của bạn mà thôi). Nhà phát triển có thể tự cung cấp biểu tượng riêng để dùng trong menu tròn (và menu cảm ứng) bằng cách đặt file *.png tại thư mục tên
/TouchMenuIcons, tương quan theo thư mục gốc của trò chơi.
Sau đây là ví dụ về một nhà phát triển tự tạo biểu tượng riêng cho trò chơi của họ:
Vài điều thú vị
Có thể dùng ảnh động GIF làm biểu tượng menu tùy biến!Menu tròn lồng nhau
Bạn có thể dùng
Lớp bộ hành động để tạo các menu tròn lồng vào nhau. Sau đây là một ví dụ với trò
Slime Rancher.
Sau đây là liên kết tới thiết lập chúng tôi chuẩn bị phát triển:
steam://controllerconfig/433340/1360133345
Và đây là
file IGA đã hoàn thành cho thiết lập mà chúng tôi sẽ tạo:
slime_rancher_nested_radial_menus.vdfVà đây là cách nó hoạt động trong thực tế:
Menu tròn này được gán vào bàn rê trái, và cho phép bạn chọn nhiều tùy chọn trong trò chơi như "Open the Slimepedia", "Toggle radar", "Open the map", v.v. Nhưng nó cũng có một tùy chọn đặc biệt để mở menu tròn được lồng vào bên trong, "System Options":
Chọn mục này sẽ kích hoạt lớp bộ hành động "System Options" do người chơi định nghĩa. Và lần tới khi mở menu tròn, thay vào đó chúng ta sẽ thấy như thế này:
Giờ chúng ta sẽ có các tùy chọn như "Take screenshot", "Show keyboard", và điều chỉnh âm lượng. Ngoài ra cũng có tùy chọn như "Return", để tắt lớp bộ hành động "System Options" và làm các tùy chọn bình thường hiện lại trong lần mở menu tròn tiếp theo:
Sau đây là cách thiết lập. Đầu tiên, chúng ta tạo một lớp bộ hành động tùy biến. Ta nhấp vào "thêm lớp hành động".
Chúng ta sẽ gọi nó là "System Options".
Sau khi làm xong, ta trở về thiết lập cơ bản và lớp bộ hành động "game controls", rồi chọn bàn rê trái và thiết lập menu tròn cơ bản:
Mọi thứ đều bình thường ngoại trừ nút menu 5, nó sẽ kích hoạt lớp bộ hành động. Ta làm điều này bằng cách chọn nút đặc biệt "bộ hành động" trong màn hình gán phím và chọn "Áp dụng lớp hành động --> System Options" từ menu hiện lên:
Lưu ý rằng nút đặc biệt "bộ hành động" này sẽ không hiện trong menu gán phím nếu chưa định nghĩa bộ hành động tùy biến nào. Tức bạn phải tạo một lớp bộ hành động tùy biến
trước khi thử thiết lập chức năng bật tắt cho nó. Xem bài viết
Lớp bộ hành động để biết thêm thông tin về việc tạo lớp bộ hành động.
Sau khi thiết lập xong menu tròn cơ bản, ta cũng cần thiết lập menu tròn cho lớp bộ hành động được đè lên trên. Ta quay lại màn hình thiết lập căn bản và chọn lớp bộ hành động tùy biến "System Options":
Rồi ta chọn bàn rê trái trong đó menu tròn được gán vào lớp bộ hành động nằm bên dưới:
Để ý rằng ta thấy các hành động được gán ở lớp bên dưới có màu xám. Ta có thể ghi đè chúng ở đây để tạo một menu tròn lồng vào nhau. Bất kỳ hành động nào mà ta không đổi sẽ "hiện xuyên" trong lớp menu tròn thứ hai. Ta sẽ ghi đè toàn bộ chúng ở đây với các phím gán cho tùy chọn hệ thống (ngoại trừ hành động trung tâm "đừng bận tâm"). Lưu ý đặc biệt rằng ta gán một lệnh lớp bộ hành động vào nút menu thứ năm, dùng để tắt lớp bộ hành động:
Và thế là bạn đã làm được! Menu tròn hai lớp.
Xin nhắc lại, đây là liên kết đến thiết lập:
steam://controllerconfig/433340/1360133345
Và file IGA:
slime_rancher_nested_radial_menus.vdfTìm hiểu thêm