gohud

Cài đặt gohud

Hai lối vào. Để tác nhân AI làm hộ, hoặc thả thư mục vào dự án — không còn gì phải cấu hình.

Cách nhanh nhất — để tác nhân AI cài hộ

Một khối văn bản dán vào Claude Code, Codex, Cursor hay Gemini CLI sẽ cài cả skill lẫn add-on, rồi giải thích gohud cho bạn. Đi đường đó thì mọi thứ dưới thẻ này đều không cần.

Mở trang AI SKILL →

Cài đặt

Đặt thư mục add-on vào dự án. Không phải thiết lập gì thêm.

Từ Asset Store hoặc file ZIP bản phát hành

Giải nén vào thư mục gốc của dự án sao cho có res://addons/gohud/. Chỉ vậy thôi. Nếu muốn, hãy bật Project → Project Settings → Plugins → gohud.

Dưới dạng git submodule

git submodule add https://github.com/thruthesky/gohud.git addons/gohud
git submodule update --init
git -C addons/gohud checkout v1.0.0   # tùy chọn: ghim vào một tag hoặc commit

Thư mục gốc của kho lưu trữ chính là thư mục add-on, nên nó nằm đúng chỗ Godot mong đợi. Sửa ngay tại chỗ, commit và push bên trong addons/gohud, rồi commit con trỏ submodule trong game của bạn.

Bắt buộc Godot 4.6 trở lên. gohud dùng các API xuất hiện từ 4.5 (DPITexture, FoldableContainer, các thuộc tính trợ năng), nên trên bản cũ hơn nó lỗi ngay khi phân tích cú pháp. 4.6 là mức thấp nhất được hỗ trợ, ghi trong GoUi.MIN_ENGINE.

Bắt đầu nhanh

Mọi widget đều là .new() rồi add_child() — không file scene, không autoload.

Chọn diện mạo trước khi dựng UI (tùy chọn)

GoUi.use_preset(GoThemePresets.SCIFI_DARK)   # bỏ qua dòng này thì default_dark được dùng

Một hộp thoại xác nhận mà bạn await

var dialogs := GoDialogs.new()
add_child(dialogs)
if await dialogs.confirm("Xóa bản lưu", "Thao tác này không thể hoàn tác."):
    delete_save()

Truyền destructive = true (đối số cuối) thì nút xác nhận được vẽ thành nút nguy hiểm tô đặc.

Bảng trượt dưới với ô tìm kiếm và chân trang cố định

var sheet := GoSheet.new()
add_child(sheet)
sheet.open("Túi đồ")
sheet.toolbar().add_child(GoStyle.line_edit("Tìm kiếm…"))
sheet.toolbar().visible = true
for item in items:
    sheet.body.add_child(GoStyle.list_button(GoIconSet.BOX, item.name, _use.bind(item),
        Color.TRANSPARENT, item.description, false))
sheet.footer().add_child(GoStyle.button("Đóng", sheet.close, GoStyle.Tone.PRIMARY))
sheet.footer().visible = true
Vì sao hàng cố định tách khỏi phần thân cuộn được. Đặt nút xác nhận và hủy vào body thì một danh sách dài sẽ đẩy chúng ra khỏi màn hình. footer() thì luôn nhìn thấy được.

Một góc HUD

var corner := GoHudAnchor.new()
corner.spot = GoHudAnchor.Spot.TOP_LEFT
corner.landscape_spot = GoHudAnchor.Spot.TOP_RIGHT
add_child(corner)

var hp := GoBar.new()
hp.label_text = "HP"
hp.ink = GoUi.color(GoTheme.DANGER_FILL)
corner.add_child(hp)
hp.set_values(320, 500)

Nội dung biết tránh khỏi HUD

form.avoid_hud = true                  # tránh mọi GoHudAnchor đang hiện
joystick_anchor.reserve_space = false  # …trừ những cái chỉ hiện ra dưới ngón tay
notice_anchor.avoid_peers = true       # thông báo nổi nằm xuống dưới HUD cố định thay vì che lên nó

Mỗi hình chữ nhật được né theo hướng tốn ít diện tích nhất — xuống dưới trên điện thoại dọc, sang ngang khi nằm ngang. Cách các mảnh HUD tự né nhau →

Những ví dụ chạy được ngay

Ba cách xem gohud trước khi viết dòng nào — không cách nào cần server hay autoload.

Ví dụCách mởCho thấy gì
Galleryexamples/gallery/gallery.tscn · F6Mọi widget, một danh sách chọn cho từng preset đã cài, và trọn bộ biểu tượng
Trung cổexamples/medieval/medieval.tscn · F6Bảng nhân vật, túi đồ và sổ nhiệm vụ; các nút chuyển giữa sắt và giấy da rồi mở chi tiết món đồ
Ứng dụng democd examples/demo && godotMột màn hình chính mở ra gallery, chuyến tham quan 15 chương, màn hình trưng bày và diện mạo trung cổ, với widget chạy thật và mỗi lớp một tấm thẻ
cd examples/demo && godot                             # màn hình chính; lần chạy đầu sẽ tạo liên kết và import
bash examples/demo/run.sh                               # vẫn ứng dụng đó, chạy từ thư mục gốc của add-on
bash examples/demo/run.sh -- --open=gallery             # bỏ qua màn hình chính
bash examples/demo/run.sh -- --explore=surfaces         # mở thẳng vào một chương của chuyến tham quan
bash examples/demo/run.sh --record /tmp/gohud-demo.avi  # quay chuyến tham quan ở 1080p / 60 fps

Ứng dụng demo không cần thiết lập gì: nếu thiếu liên kết tới add-on hay bộ nhớ đệm import, nó sẽ báo, sửa lại thư mục rồi tự mở lại. Màn hình chính của nó mở từng ví dụ ngay trong cùng một cửa sổ — nhấn 14 hoặc bấm vào một hàng, còn thanh chạy ngang phía trên đưa bạn quay lại.

Trong chuyến tham quan, C bật tắt chế độ Cinema, F11 toàn màn hình, Space tạm dừng (hoặc chạy widget hiện tại khi đang khám phá), các phím mũi tên đổi chương và Escape quay về màn hình đầu.

Đang dùng một AI coding agent? Mở cả ba bằng một lệnh →