Skip to content

Ixeris Mod cho Minecraft 1.21.1, 1.16.5

Input mentah yang di-buffer dan polling event berulir

lượt tải
31 lượt tải
lượt xem
150 lượt xem
Đã cập nhật
Đã cập nhật 19.10.2026

Ixeris

Tổng quan

Ixeris là một mod tối ưu hóa việc thăm dò sự kiện để cải thiện hiệu năng của client.

Bạn có thể đã nhận thấy FPS giảm rõ rệt khi di chuyển chuột. Một phần nguyên nhân khiến FPS giảm là do game có thêm các tác vụ phải làm khi bạn xoay camera, chẳng hạn như tính toán khả năng hiển thị của các chunk. Tuy nhiên, do sự kém hiệu quả trong mã gốc dùng để thăm dò sự kiện và chi phí gọi ngược JNI, một phần thời gian CPU lẽ ra có thể dùng cho việc render lại bị tiêu tốn không cần thiết vào việc thăm dò sự kiện. Điều này dễ nhận thấy nhất trên Windows, đặc biệt khi chuột của bạn có tần số thăm dò cao.

Ixeris giải quyết vấn đề này chủ yếu thông qua hai biện pháp:

  • Thăm dò sự kiện theo luồng. Thay vì thực hiện render và thăm dò sự kiện trên cùng một luồng, Ixeris thực hiện thăm dò sự kiện trên luồng chính và đẩy việc render sang một luồng render riêng.
  • Đầu vào thô được đệm (chỉ trên Windows). Chuyển phương thức dùng để thăm dò đầu vào từ GetRawInputData kém hiệu quả (một lần gọi cho mỗi sự kiện đầu vào) sang GetRawInputBuffer, cho phép đọc các thông điệp đầu vào thô theo lô (một lần gọi cho tất cả sự kiện). Ngoài ra, việc thực hiện công việc này bằng mã Java đã cho phép chúng tôi loại bỏ chi phí gọi ngược JNI.

Đo điểm chuẩn

Các bài kiểm tra này được thực hiện sau khi thế giới đã tải xong hoàn toàn và tốc độ khung hình đã ổn định.

Bài kiểm tra 1: Trong game

Bài kiểm tra này so sánh hiệu năng khi chuột được giữ, tức là con trỏ không hiển thị. Bài kiểm tra này được thực hiện trong một thế giới siêu phẳng không có thực thể.

Bài kiểm tra này được thực hiện trên Windows, nơi Ixeris mặc định dùng đầu vào thô được đệm để cải thiện hiệu năng. Cột "Ixeris, Non-buffered" hiển thị FPS khi tùy chọn đó bị tắt.

Tần số thăm dò - Không có Ixeris - Ixeris, Non-buffered - Ixeris, Buffered

8000 Hz - 12 FPS - 83 FPS (6.9x) - 121 FPS (10.1x) 2000 Hz - 76 FPS - 114 FPS (1.50x) - 135 FPS (1.78x) 500 Hz - 134 FPS - 145 FPS (1.08x) - 151 FPS (1.13x)

Bài kiểm tra 2: Trong menu

Bài kiểm tra này so sánh hiệu năng khi chuột không được giữ, tức là con trỏ hiển thị, như trong màn hình tạm dừng F3+Esc. Trong trường hợp này, đầu vào thô không bao giờ được dùng vì game cần biết vị trí thực tế của con trỏ, chứ không phải chuyển động tương đối thô. Tần số thăm dò là 1000Hz.

Cột "Idle FPS" hiển thị FPS khi không di chuyển chuột, và hai cột tiếp theo hiển thị FPS khi di chuyển chuột nhanh qua cửa sổ game, lần lượt không có Ixeris và có Ixeris. Lưu ý rằng bài kiểm tra này được thực hiện ở bản phát hành đầu tiên của Ixeris, và nhiều cải tiến đã được thực hiện kể từ đó.

Idle FPS - Không có Ixeris - Có Ixeris

Windows - 233 FPS - 133 FPS - 165 FPS (1.24x) Linux (X11) - 358 FPS - 320 FPS - 355 FPS (1.11x) Linux (Wayland) - 364 FPS - 289 FPS - 298 FPS (1.03x)

Chi tiết kỹ thuật

An toàn luồng

Ở trạng thái hiện tại, Ixeris không nên phá vỡ tính an toàn luồng. Các callback được đăng ký với glfwSetCallback được thực thi trên luồng render. Các lệnh gọi đến các hàm GLFW bắt buộc phải được gọi trên luồng chính, nếu được thực hiện trên các luồng khác, sẽ được chuyển đến luồng chính. Những lệnh gọi này có thể trả về ngay lập tức nếu chúng có thể được trì hoãn một cách an toàn, hoặc nếu không thì có thể chặn bên gọi cho đến khi lệnh gọi hoàn tất.

Kể từ phiên bản 3.1.0, các yêu cầu về an toàn luồng trong tài liệu GLFW được tuân thủ nghiêm ngặt.

Bộ nhớ đệm trạng thái GLFW

Hầu hết các hàm GLFW đều bắt buộc phải được gọi từ luồng chính. Tuy nhiên, nhiều mod có thể gọi chúng từ luồng render. Để tránh sự suy giảm hiệu năng do giao tiếp giữa các luồng gây ra, Ixeris lưu đệm các trạng thái GLFW thường dùng để truy cập nhanh từ bất kỳ luồng nào, mà không cần định tuyến lệnh gọi đến luồng chính. Các bộ nhớ đệm này an toàn và không gây thêm độ trễ.

Giới hạn FPS nâng cao

Giới hạn FPS của vanilla (trước 26.1) có khiếm khuyết, dùng glfwWaitEventsTimeout để ngủ. Tuy nhiên, hàm này không thể được gọi từ luồng render và do đó không hoạt động tối ưu với Ixeris.

Ixeris viết lại giới hạn FPS theo cách kết hợp, ngủ chính xác và bắt đầu chờ quay khi thời gian chờ rất thấp.

Thuật ngữ

  • Luồng chính là luồng mà game được khởi động trên đó. Hầu hết các hàm GLFW đều bắt buộc phải được gọi trên luồng này, và nó chịu trách nhiệm thăm dò sự kiện.
  • Luồng render làm mọi thứ mà game thường làm, ngoại trừ việc thăm dò sự kiện.

Hai thuật ngữ này đồng nghĩa trong Minecraft vanilla.

Cách cài đặt Ixeris

With Millida Launcher

  1. Install Millida Launcher

    The launcher is free: download it at millida.net/launcher and sign in with any nickname.

  2. Click “Install” on this page

    The launcher opens and installs the mod for Minecraft 1.16.5–26.3 on Fabric, Forge, NeoForge or Quilt automatically.

  3. Launch the game

    A profile with it appears in the launcher: click “Play”.

Manually

  1. Install Fabric, Forge, NeoForge or Quilt

    The loader must match the game version of the mod file, for example Minecraft 26.3. After installing it, a separate profile appears in your launcher.

  2. Download the file for your version

    In the version list above, pick the file Ixeris-4.6.10+26.3-neoforge.jar (677 KB) for your game version and loader.

  3. Put it in the mods folder

    The folder is inside .minecraft (Windows: %appdata%\.minecraft\mods). If it does not exist, create it.

  4. Launch the loader profile

    Open “Mods” in the main menu: Ixeris should be in the list.

Ixeris works on the player’s side only: there is no need to install it on a server.

Phiên bản

Kèm phụ thuộc

MinecraftLoaderTệpNgàyHành động
26.3NeoForge26.3677 KB
26.3Fabric, Quilt26.3751 KB 6
26.2NeoForge26.2680 KB
26.2Fabric, Quilt26.2754 KB 5
26.1.2NeoForge26.1.2679 KB
26.1.2Fabric, Quilt26.1.2753 KB
1.21.11Forge1.21.111.5 MB 2
1.21.11NeoForge1.21.11680 KB

Đánh giá

Hãy là người đầu tiên đánh giá Ixeris

Bình luận 0

Đăng nhập để bình luậnĐăng nhập

Mod tương tự

Tất cả mod

Thêm về điều này

Tác giả: decce6Giấy phép: LGPL-3.0-onlyMã nguồn

Bạn là tác giả? Liên hệ với chúng tôi — chúng tôi sẽ gỡ xuống trong vòng 48 giờ.