3 điểm bởi GN⁺ 2025-06-13 | 1 bình luận | Chia sẻ qua WhatsApp
  • Tích hợp với pipeline kết xuất của THREE.js để hiển thị đồng thời các đối tượng dựa trên splat và mesh
  • Tính di động cao, hoạt động trên gần như mọi thiết bị (hỗ trợ WebGL2 trên hơn 98%)
  • Cung cấp hiệu năng kết xuất nhanh ngay cả trên thiết bị di động cấu hình thấp
  • Kết xuất đồng thời nhiều đối tượng splat và xử lý sắp xếp chính xác
  • Hỗ trợ hầu hết các định dạng tệp splat phổ biến như .PLY (bao gồm nén), .SPZ, .SPLAT, .KSPLAT
  • Hỗ trợ kết xuất đồng thời từ nhiều góc nhìn
  • Chỉnh sửa động: có thể biến đổi và áp dụng hoạt ảnh riêng cho từng đối tượng splat
  • Hỗ trợ chỉnh sửa màu theo thời gian thực, dịch chuyển và hoạt ảnh skeleton
  • Với hệ thống shader graph, có thể tạo/chỉnh sửa splat động trên GPU

1 bình luận

 
GN⁺ 2025-06-13
Ý kiến trên Hacker News
  • Bản demo này thật sự rất ấn tượng, thậm chí còn chạy tốt trên chiếc iPhone đời cũ của tôi
    Nếu góp ý từ góc nhìn của một nhà phát triển game nghiệp dư không có nhiều kiến thức chuyên sâu về lập trình 3D, tôi nghĩ sẽ tốt hơn nếu ở đâu đó trên GitHub hoặc website có thêm một dòng giải thích “Gaussian Splatting” là gì
    Tôi thấy hứng thú và cảm nhận rõ tiềm năng hơn chỉ sau một câu giải thích lấy từ Wikipedia
    Gaussian Splatting là một kỹ thuật dựng hình thể tích, trực tiếp render dữ liệu thể tích mà không cần chuyển nó thành các surface hay line primitive
    Việc có thể tạo ra mây, lửa, khói... hiệu năng cao là điều cực kỳ tuyệt vời

    • Cảm ơn góp ý
      Tôi nhất định phải bổ sung FAQ
  • Bản demo quét đồ ăn (ví dụ “Interactivity”) thật đáng kinh ngạc
    Đặc biệt là việc nhìn vào bên trong lỗ của ổ bánh trong Mel's Steak Sandwich rất ấn tượng
    Ngay cả trên laptop của tôi chỉ có đồ họa tích hợp, hiệu năng vẫn rất tốt so với mức độ chi tiết hiển thị
    Tôi tò mò công nghệ này hiện chủ yếu đang được dùng ở đâu

    • Có một cộng đồng chuyên quét các vật thể nhỏ bằng thiết bị cầm tay hoặc drone
      Tipatat đã cung cấp các bản quét đồ ăn cho demo lần này
      Tôi cũng rất thích các bản quét hoa của kotohibi
      https://superspl.at/user?id=kotohibi

    • Mức dung lượng truyền dữ liệu cũng không quá lớn so với độ chi tiết này
      Chỉ khoảng 80MB nên thật sự rất đáng kinh ngạc

  • Thật sự rất hay
    BabylonJS cũng hỗ trợ Gaussian Splat rất tốt
    https://doc.babylonjs.com/features/featuresDeepDive/mesh/gaussianSplatting

    • BabylonJS và Aframe có giấy phép, số sao GitHub và số fork khá tương đồng
      Aframe là dự án mới hơn và tập trung nhiều hơn vào game và VR
      Tôi muốn biết, từ góc nhìn của người đã dùng cả Babylon, Aframe, Three.js và PlayCanvas, thì nên so sánh chúng như thế nào
      PlayCanvas mang tính thương mại, nhưng có vẻ trưởng thành nhất, giàu tính năng nhất và hiệu năng cũng tốt nhất
      Babylon là engine 3D thiên về tính năng, còn Three.js chỉ cung cấp những thứ cơ bản
      Dù hỗ trợ animation và texture khá tốt, cuối cùng bạn vẫn phải tự xây toolkit của mình
      Tôi tò mò về những trải nghiệm tốt hoặc chưa tốt với các engine này
      Demo của OP thật sự rất chắc chắn
      Tôi muốn biết lợi thế và định vị của Aframe là gì
      Tương lai của Gaussian Splatting sẽ phát triển ra sao, liệu không chỉ dừng ở trực quan hóa/digital twin mà còn sớm có thể chỉnh sửa, animation trong lĩnh vực sáng tạo hay game hay không
      Aframe GitHub
      PlayCanvas
  • Làm rất đẹp
    Nhưng với laptop của tôi dùng Nvidia RTX A3000 GPU và Firefox, hiệu năng rất kém
    Với ngần ấy shader core thì máy có thể nóng ran đến mức bỏng tay

    • Tôi muốn biết cụ thể là ở demo/ví dụ nào thì gặp hiện tượng đó
  • Tôi tò mò liệu có thể cầm điện thoại chạy quanh để capture các Gaussian Splats như cỏ, bụi cây, đất... hay không
    Chọn một mảng đất hình vuông 1 mét, hoặc một không gian hình lập phương 1 mét có cả bụi cây
    Rồi lặp lại các khối cỏ, trộn thêm bụi cây hoặc đất vào giữa để tạo ra một thế giới kiểu "giống Minecraft"
    Có lẽ để render hàng nghìn khối như vậy thì cần phần cứng khá mạnh

    • Chắc chắn có thể làm một prototype kiểu đó
      Nếu thấy tận mắt thì hẳn sẽ rất tuyệt
  • Thật sự rất hay
    Tôi tò mò không biết có góc nhìn nào về các nút thắt hiệu năng hiện tại không
    Đặc biệt là các nút thắt trong cảnh động
    Ví dụ mô phỏng hạt thì bị giật, nhưng khi xoay camera thì hiệu năng lại tăng lên rõ rệt
    Điều đó có vẻ cho thấy phần nền tĩnh nặng hơn tôi tưởng, nhưng ngoài chuyện đó ra thì kim tự tháp Sierpinski dựng theo procedural thật sự rất ấn tượng

    • Số lượng và phân bố của các splat trong cảnh ảnh hưởng đến hiệu năng
      Có lẽ người hỏi đã xoay camera sang một hướng ít phức tạp hơn
      Việc giữ hiệu năng ổn định vẫn còn là việc phải làm
      Sắp tới tôi định áp dụng hệ thống LOD
  • Đây là link repo dễ thấy hơn một chút
    https://github.com/sparkjsdev/spark

  • Tôi vẫn hoài nghi việc Gaussian Splatting có thể làm được nhiều hơn ngoài demo
    Dung lượng file quá lớn
    Ví dụ chiếc sandwich bít tết đã là 12MB
    Năm ngoái ở SIGGRAPH tôi thấy một bản clone Matterport dùng Gaussian Splat, và cần stream 1.5GB chỉ để xem một căn hộ 2 phòng ngủ
    Dù vậy đây vẫn là một demo rất hay

    • Kỹ thuật nén SOGS khá hiệu quả
      Có thể lưu 1M Gaussian kèm đầy đủ Spherical Harmonics trong khoảng 14MB
      Có một bài viết khá hay về chuyện này trên blog PlayCanvas
      https://blog.playcanvas.com/playcanvas-adopts-sogs-for-20x-3dgs-compression

    • Để tham khảo thì chiếc sandwich bít tết 12MB là file lớn nhất
      Các file còn lại đều dưới 10MB, một vài cái chỉ 1-3MB nên khá thuyết phục
      (ví dụ: Iberico Sandwich 1MB, Clams and Caviar 1.8MB, v.v.)
      Các phương pháp nén nâng cao như SOGS sẽ sớm xuất hiện
      Ví dụ này là 30MB
      https://vincentwoo.com/3d/sutro_tower/

    • Lý do chính khiến file lớn là vì phải lưu các hệ số Spherical Harmonics
      Đây là vấn đề có thể giải quyết được

  • Tôi có cảm giác cái tên này đang bị dùng hơi quá đà
    Đã có Apache Spark, SPARK (Ada), sparklines, SPARQL, v.v.