Ratty: Trình giả lập terminal độc đáo mang đồ họa 3D vào dòng lệnh

Công nghệ11 tháng 5, 2026·4 phút đọc

Một nhà phát triển đã tạo ra Ratty, trình giả lập dòng lệnh có khả năng hiển thị đồ họa 3D và mô hình ngay trong cửa sổ terminal. Sử dụng Rust và engine game Bevy, dự án lấy cảm hứng từ TempleOS nhằm thúc đẩy sự đổi mới trong trải nghiệm dòng lệnh.

Ratty: Trình giả lập terminal độc đáo mang đồ họa 3D vào dòng lệnh

Ratty: Trình giả lập terminal độc đáo mang đồ họa 3D vào dòng lệnh

Một nhà phát triển đã tạo ra Ratty, trình giả lập dòng lệnh có khả năng hiển thị đồ họa 3D và mô hình ngay trong cửa sổ terminal. Sử dụng Rust và engine game Bevy, dự án lấy cảm hứng từ TempleOS nhằm thúc đẩy sự đổi mới trong trải nghiệm dòng lệnh.

Khi nghĩ đến một trình giả lập terminal (terminal emulator), hầu hết chúng ta đều hình dung đến một giao diện dòng lệnh đơn điệu với các ký tự ASCII và con trỏ nhấp nháy. Tuy nhiên, nhà phát triển Orhun Parmaksiz đã tái định nghĩa trải nghiệm này với Ratty - một dự án "điên rồ" nhưng đầy sáng tạo, cho phép hiển thị các đối tượng 3D, hình ảnh và thậm chí là cả một engine game ngay bên trong cửa sổ dòng lệnh.

Đổi mới giao diện dòng lệnh với Rust và Bevy

Được đặt tên là Ratty (chơi chữ với "rat" - chuột) nhờ vào con trỏ chuột hình con chuột xoay 3D đặc trưng, dự án biến cửa sổ terminal thành một canvas 3D thực thụ. Nó hỗ trợ sprites, mô hình 3D, kết xuất bản vẽ 3D theo thời gian thực và sở hữu một giao thức đồ họa riêng biệt gọi là Ratty Graphics Protocol.

Giao diện của Ratty với bản sao Temple RunGiao diện của Ratty với bản sao Temple Run

"Trình giả lập terminal là một phần lớn trong cuộc sống hàng ngày của chúng ta với tư cách là nhà phát triển, nhưng chúng ta chưa thực sự tạo ra nhiều đổi mới trong không gian này," Parmaksiz chia sẻ với The Register. "Với Ratty, tôi hy vọng sẽ truyền cảm hứng cho người khác thử nghiệm với terminal và đẩy mạnh giới hạn của những gì nó có thể làm."

Để hiện thực hóa ý tưởng này, Parmaksiz đã sử dụng thư viện giao diện terminal của riêng mình là Ratatui (viết bằng Rust) kết hợp với Bevy - một engine game cũng được xây dựng bằng Rust. Giao thức đồ họa Ratty được tạo ra để đăng ký tài sản 3D và đặt chúng vào không gian ô của terminal.

Kiến trúc và hiệu suất

Điểm thú vị về mặt kỹ thuật của Ratty là sự tách biệt giữa giả lập terminal và trình bày (presentation). Một bên xử lý đầu vào/ra PTY và phân tích cú pháp terminal, trong khi bên kia chuyển kết quả thành cảnh 2D hoặc 3D được kết xuất qua GPU.

"Ratty tách biệt việc giả lập terminal khỏi việc trình bày: một bên xử lý I/O và phân tích cú pháp, trong khi bên kia biến kết quả thành cảnh 2D hoặc 3D được kết xuất bằng GPU," Parmaksiz giải thích. "Điều này cho phép rất nhiều sự linh hoạt trong cách hiển thị đầu ra của terminal (ví dụ: bạn có thể bóp méo cả cái thứ đó)."

Tuy nhiên, người dùng cần cân nhắc về hiệu suất. Do chạy một engine game bên trong, Ratty tiêu tốn khá nhiều tài nguyên hệ thống.

"Tôi biết, việc hy sinh 300 MB RAM chỉ để chạy một trình giả lập terminal là khá nhiều," Parmaksiz thừa nhận. "Nhưng mọi thứ đều có cái giá của nó, đặc biệt là con trỏ chuột hình chuột xoay này."

Cảm hứng từ TempleOS

Ý tưởng đẩy giới hạn của terminal vượt ra khỏi logic thông thường của Parmaksiz không xuất phát từ hư vô. Ông lấy cảm hứng từ TempleOS - hệ điều hành huyền thoại do Terry Davis phát triển. TempleOS nổi tiếng với giao diện khó sử dụng nhưng lại sở hữu khả năng hiển thị sprites trực tiếp trên dòng lệnh, một tính năng hiếm thấy ở các hệ điều hành khác.

"Tôi bị thổi bay bởi sự sáng tạo và đam mê đằng sau nó," Parmaksiz nói về TempleOS. "Tôi muốn xem việc áp dụng điều đó cho một trình giả lập terminal hiện đại sẽ trông như thế nào."

Dự án hiện vẫn đang trong giai đoạn thử nghiệm và mã nguồn mở. Parmaksiz hy vọng cộng đồng sẽ đóng góp để phát triển các ứng dụng thú vị hơn trên nền tảng này, thậm chí là một phần mềm CAD hoàn chỉnh chạy ngay trên terminal.

"Mục tiêu tối thượng của tôi với Ratty là khám phá các khả năng của một terminal và truyền cảm hứng cho những ý tưởng và dự án mới trong không gian này," ông viết trong bài đăng trên blog. "Tôi tin rằng những thí nghiệm như thế này là nơi creativity ra đời và tôi hy vọng sẽ khơi gợi một số ý tưởng cho tương lai của các terminal."

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗