TL;DR

Three.js — thư viện JavaScript 3D do Ricardo Cabello (Mr.doob) tạo từ 2010 — hiện ở phiên bản r184 (Apr 2026) với 112K GitHub stars, 2,047 contributors, và 2.7 triệu NPM downloads mỗi tuần. Con số đó gấp 270× Babylon.js và 337× PlayCanvas. Sau khi Apple ship WebGPU trong Safari 26 (Sep 2025), Three.js phát hành r171 với WebGPURenderer zero-config — đẩy 3D web qua kỷ nguyên multi-threaded rendering, compute shaders, và TSL (Three Shading Language).

Bộ sưu tập dự án Three.js trên trang chủ chính thức

Có gì mới trong 2026

Ba sự kiện định hình Three.js năm 2025–2026:

  • WebGPU phổ cập toàn trình duyệt. Safari 26 (macOS, iOS, iPadOS, visionOS) đóng nốt mảnh ghép cuối cùng vào tháng 9/2025. Lần đầu tiên trong lịch sử web, một API đồ hoạ thế hệ mới có mặt khắp Chrome, Firefox, Safari, Edge.
  • r171 zero-config WebGPU. Trước đây dùng WebGPU phải config bundler. Sau r171: import { WebGPURenderer } from 'three/webgpu' — xong. Tự fallback WebGL 2 trên thiết bị cũ.
  • TSL chín muồi. Three.js Shading Language (introduce ở r166) thay GLSL strings bằng node-based JS API. Type-safe, IDE autocomplete, và quan trọng nhất: stack trace JavaScript khi shader fail thay vì error WebGL khó hiểu.

Vì sao điều này quan trọng

WebGL ra đời 2011 và không thay đổi nhiều về kiến trúc. Nó chạy single-thread: mọi draw call, state change, resource upload đều xếp hàng trên 1 CPU core. Kết quả: GPU thường idle 60% trong khi CPU nghẹt cổ chai.

WebGPU đảo ngược: command generation chạy đa luồng trên mọi CPU core, compute shaders cho phép hàng trăm nghìn particles tính toàn bộ trên GPU mà không cần round-trip CPU. Three.js là cây cầu duy nhất giúp dev web tận dụng việc này mà không phải viết WGSL từ đầu.

Số liệu kỹ thuật

Chỉ sốGiá trị
Phiên bản hiện tạir184 (April 2026)
Tổng số releases176
GitHub stars112,000
Forks36,300
Contributors2,047
Dependent projects564,000+
NPM downloads / tuần2,700,000
Examples chính thức300+
Tuổi đời16 năm (4/2010)
LicenseMIT (miễn phí)

So sánh với đối thủ

Thư việnNPM downloads/tuầnTỉ lệ vs Three.js
Three.js2,700,000
Babylon.js~10,0001/270
PlayCanvas~8,0001/337

React Three Fiber — renderer React dựng trên Three.js — riêng nó đã có 30.5K stars. Toàn bộ ecosystem (Drei, Theatre.js, Rapier physics, postprocessing) đều xoay quanh Three.js. Đây không còn là cuộc đua, mà là độc quyền thị trường.

Use case thực tế

  • Heavy data viz — Segments.ai LiDAR labeling: nền tảng gắn nhãn hàng triệu điểm 3D từ cảm biến LiDAR cho training AI xe tự lái. Sau khi migrate WebGL → WebGPU, đạt cải thiện hiệu năng 100× ở các thao tác nặng — đủ để chốt hợp đồng với các hãng autonomous driving lớn.
  • Interactive installation — Expo 2025 Osaka: tác phẩm "Waves of Connection" render 1 triệu particles realtime, body-tracking đa người qua Kinect, hiển thị màn hình 4K 98 inch. Three.js + WebGPU chạy mượt cả ngày trong môi trường triển lãm.
  • Vibe coding game jams: tháng 2/2025 Andrej Karpathy gọi tên trào lưu "vibe coding" — code bằng AI prompt. Pieter Levels mở Vibe Coding Game Jam: 1,000+ submissions trong 48h. Mr.doob ngồi ban giám khảo. Khi user bảo Claude hoặc ChatGPT "làm cho tôi game 3D", code generated luôn dùng Three.js. "Vibe coding" là Word of the Year 2025 của Collins Dictionary.
  • WebXR & commerce: Apple, Nike, Bruno Simon dùng Three.js làm product configurator, portfolio 3D, AR try-on trực tiếp browser — không cần app store.

Hạn chế & chi phí

Three.js miễn phí 100% (MIT). Nhưng có cái giá ngầm:

  • Learning curve dốc. 3D math, scene graph, shader thinking là rào cản lớn cho dev quen 2D web.
  • Bundle size: import full ~600KB minified. Phải tree-shake và code-split nghiêm túc.
  • Test matrix tăng: WebGPU production-ready, nhưng vẫn phải test fallback WebGL 2 cho thiết bị cũ.
  • Migration cost: codebase cũ viết bằng GLSL ShaderMaterial không tự động chuyển sang TSL — phải refactor tay.

Roadmap phía trước

Đội Three.js đang tập trung 4 hướng: (1) hoàn thiện compute shader API và worker support cho WebGPU, (2) đẩy TSL thành cách viết shader chính thức, deprecate dần GLSL strings, (3) tích hợp sâu hơn với React Three Fiber và frameworks khác, (4) tối ưu DX cho vibe coding — examples gọn hơn, naming nhất quán hơn để LLM sinh code chính xác hơn.

Với 564K dự án phụ thuộc, 2.7 triệu downloads tuần, và monopoly de facto trong vibe coding workflow, Three.js không chỉ giữ vị trí — nó đang định nghĩa lại 3D trên web cho thập kỷ tới.

Nguồn: github.com/mrdoob/three.js, threejs.org, Utsubo: What's New in Three.js 2026, Three.js Roadmap: WebGL vs WebGPU, Release r180.