Coding4Food LogoCoding4Food
Trang chủChuyên mụcArcadeĐã lưu
en
Trang chủChuyên mụcArcadeĐã lưu
Coding4Food LogoCoding4Food
Trang chủChuyên mụcArcadeĐã lưu
Bảo mật|Điều khoản

© 2026 Coding4Food. Viết bởi dev, cho dev.

Tất cả tin tức
Công nghệ
Gaming

Hành Trình 10 Năm Của Slug: Khi Các Lão Quái Dành Cả Thanh Xuân Chỉ Để... Vẽ Chữ

19 tháng 3, 20264 phút đọc

Anh em nghĩ code game là làm shader cháy nổ? Nhầm rồi, render chữ mới là thứ hãm nhất. Cùng xem 10 năm của Slug - thư viện vẽ font cân mọi thể loại game.

Chia sẻ bài viết:
sparks, princess, font, typography, 3d, render, text, 3d text, warrior, princess, princess, princess, princess, princess, text, 3d text, 3d text, 3d text, 3d text
Nguồn gốc: https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu. Nội dung thuộc bản quyền Coding4Food. Original source: https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu. Content is property of Coding4Food. This content was scraped without permission from https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpuNguồn gốc: https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu. Nội dung thuộc bản quyền Coding4Food. Original source: https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu. Content is property of Coding4Food. This content was scraped without permission from https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu
Nguồn gốc: https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu. Nội dung thuộc bản quyền Coding4Food. Original source: https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu. Content is property of Coding4Food. This content was scraped without permission from https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpuNguồn gốc: https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu. Nội dung thuộc bản quyền Coding4Food. Original source: https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu. Content is property of Coding4Food. This content was scraped without permission from https://coding4food.com/post/hanh-trinh-10-nam-cua-slug-ve-chu-gpu
sluggpu font renderingeric lengyelc++game devgraphics programming
Chia sẻ bài viết:

Bình luận

Nhắc tới làm game hay code giao diện người dùng, anh em thường hay ảo tưởng về những thứ hoành tráng: shader xịn xò con bò, physics đâm chém giật đùng đùng, hay ray-tracing xập xình. Chứ ít ai biết cái thứ hãm l*n và dễ gây trầm cảm nhất quả đất lại chính là... render font chữ. Hôm nay tôi kể cho các ông nghe về Slug – một cái thư viện mà tác giả của nó đã dành tròn 1 thập kỷ chỉ để làm đúng một việc: vẽ chữ trên GPU.

Tóm tắt nhanh cho anh em lười đọc

Nói nhanh cho vuông: xử lý text trong đồ họa 3D là một cơn ác mộng. Cách truyền thống là dùng CPU "rặn" ra từng pixel rồi lưu thành mấy cái ảnh bitmap (texture atlas). Hậu quả? Phóng to thì vỡ hạt, răng cưa nát bét, chưa kể mấy ngôn ngữ loằng ngoằng như Ả Rập hay Thái Lan là dễ toang hoặc cắn RAM vãi chưởng.

Đúng 10 năm trước, pháp sư Eric Lengyel (chủ xị Terathon Software) đập bàn bảo: "Đ*o làm thế nữa!". Lão vứt luôn cái trò dùng bitmap, thay vào đó đem toàn bộ mớ toán học ma giáo (Bezier curves) nhét thẳng vào GPU để nó tính toán và vẽ đường cong theo thời gian thực.

Thế là Slug ra đời.

  • Ưu điểm: Chữ nét căng dù các ông có zoom to bằng cái tòa nhà, mượt mà trên mọi độ phân giải. Khỏi cần quản lý bộ nhớ đệm (cache) cho font lằng nhằng.
  • Hành trình 10 năm: Lão Eric không hề đem con bỏ chợ. 10 năm qua, lão đã maintain cái đống code C++ sặc mùi toán học này, update liên tục để nó chạy mượt trên các API đồ họa đời mới như Vulkan, Metal, Direct3D 12. Tối ưu từng chu kỳ xung nhịp GPU.

Giang cư mận nói gì? (Dù bài gốc không có cmt nhưng tui đi guốc trong bụng anh em)

Dân tình mà nhìn vào cái thư viện này thì thường chia làm mấy phe:

1. Hội Dev Game (Đặc biệt là C++ / Graphics dev): Bái phục sát đất! Chỉ những thằng từng cắm mặt tự viết engine render font chữ mới thấu hiểu sự đau khổ của việc tính toán khoảng cách (kerning), đường cong, và mipmapping. Nhìn code của Slug chạy mượt, nhiều anh em chỉ biết khóc vì nó quá "bá đạo".

2. Hội chiếu mới "Why not AI?": Mấy thanh niên quen dùng AI gen code dạo gần đây thì hay tặc lưỡi: "Ủa sao không dùng AI mà vẽ text?". Xin lỗi các đồng đạo, AI có thể viết thơ, nhưng bảo nó tính toán chính xác hàm giao cắt đường cong Bezier ở cấp độ pixel shader thì chắc chắn là sập server hoặc chạy ra một nùi rác.

3. Hội Indie / Freelancer nghèo: Nhìn giá bản quyền của Slug (dành cho studio lớn) mà xót xa. Nhưng bù lại, họ lấy đây làm động lực để học toán. Muốn kiếm tiền tỷ, phải giải quyết được bài toán khó!

Bài học sinh tồn sau vụ này

Góc nhìn thực dụng từ C4F: Anh em thấy đấy, làm tech không nhất thiết phải đẻ ra một cái app to vật vã, mạng xã hội tỷ đô hay chạy một con vps đắt tiền với microservices lằng nhằng.

Lão Eric chỉ tập trung giải quyết MỘT cái pain point duy nhất (render font), làm nó cực kỳ hoàn hảo, và bán nó cho các studio game suốt 10 năm trời. Đó là tư duy "làm cái đinh ốc nhưng là cái đinh ốc không thể thay thế". Đôi khi, sự nghiệp của một Senior Dev vĩ đại chỉ cần xoay quanh một vấn đề cực khó, và nhai đi nhai lại nó cho tới khi cả thế giới phải quỳ lạy trả tiền cho bạn.

Cứ code chăm chỉ đi, đừng khinh những thứ nhỏ nhặt!

Nguồn: A Decade of Slug

Bài viết liên quan

spaceship, science fiction, space, sci-fi, spaceship, spaceship, spaceship, spaceship, spaceship
Gaming

No Man's Sky tung bản update khủng thứ 43: Vả mặt mọi định nghĩa P2W

Hello Games vừa tung bản update thứ 43 hoàn toàn miễn phí cho No Man's Sky. Cộng đồng game thủ nể phục, tiện tay tế sống luôn Destiny 2 trên Reddit.

28 thg 53 phút đọc
Đọc tiếp →
tablet, pc, tablet pc, handheld-console, portable, technology, mobile, computer, handheld, ipad, touchscreen, ipad, ipad, ipad, ipad, ipad
Gaming

Valve vừa "nerf" ví tiền game thủ: Steam Deck tăng giá sốc tới $300, anh em rủ nhau ra đường xúc cát

Cập nhật drama Valve tăng giá Steam Deck lên tới $300. Cộng đồng Reddit phẫn nộ, game thủ tính bài ôm PC cũ hoặc bỏ game ra đường xúc cát.

28 thg 53 phút đọc
Đọc tiếp →
medieval house, fantasy building, stone cottage, thatched roof, old village, medieval architecture, fantasy tower, rustic house, castle town, fairytale home, 3d building, fantasy environment, vintage architecture, medieval fantasy, countryside cottage, medieval street, fantasy design, stone wall, old tavern, rpg asset, historical house, fantasy village, medieval scenery, ai generated
Gaming

CDPR bẻ lái khét lẹt: The Witcher 3 'đào mồ' sống dậy với Songs of the Past

Anh em tưởng Geralt đã rửa tay gác kiếm? Nhầm to! CD PROJEKT RED vừa ném quả bom Songs of the Past cho The Witcher 3 khiến cõi mạng Reddit rúng động.

27 thg 53 phút đọc
Đọc tiếp →
video game console, video game, play, toy, computer game, device, entertainment, electronics, fun, nokia, ngage, ll, gray computer, gray laptop, gray video, gray videos, gray gaming, gray game, gray games, gray fun, nokia, nokia, nokia, nokia, nokia
Gaming

Bơ đẹp AI, phần cứng 'out meta' nhưng Nintendo vẫn in tiền: Cú tát vào mặt các pháp sư công nghệ?

Drama Reddit: Nintendo bị kêu là mù công nghệ, bơ đẹp AI nhưng vẫn sống khỏe re. Cùng C4F hóng hớt xem anh lớn ngành game đang dạy cho làng dev bài học gì.

26 thg 54 phút đọc
Đọc tiếp →
haunted house, halloween, graveyard, moon, night, spooky, creepy, gothic house, horror, mysterious, ai generated
Gaming

Ngồi ngẫm lại mới thấy Outlast (2013) là con game có cái vũ trụ 'khốn nạn' và ác ôn nhất trần đời

Nửa đêm ngồi debug nhớ lại Outlast (2013) mà toát mồ hôi hột. Cùng Coding4Food phân tích xem bọn dev Red Barrels đã hành hạ gamer chúng ta thế nào.

25 thg 55 phút đọc
Đọc tiếp →
ai generated, gamer, gaming logo, logo, gamepad, technology, computer, gaming, studio, gaming logo, logo, logo, logo, logo, logo, gaming
Gaming

Góc khuất tài chính Ubisoft: Từ "trùm vắt sữa" đến bờ vực phá sản?

Báo cáo tài chính 10 năm của Ubisoft cho thấy màu đỏ chết chóc. Studio 17k nhân sự này đang thở oxy chờ ngày sập nguồn? Cùng hóng biến Reddit nào!

24 thg 54 phút đọc
Đọc tiếp →