Geotoy nổi lên như công cụ mô hình hóa 3D mạnh mẽ trên trình duyệt sử dụng tạo sinh thủ tục

Nhóm Cộng đồng BigGo
Geotoy nổi lên như công cụ mô hình hóa 3D mạnh mẽ trên trình duyệt sử dụng tạo sinh thủ tục

Một nền tảng mô hình hóa 3D mới dựa trên trình duyệt có tên Geotoy đang thu hút sự chú ý trong cộng đồng nhà phát triển nhờ cách tiếp cận độc đáo trong việc tạo ra các mô hình 3D phức tạp thông qua mã lệnh. Được tạo ra bởi Casey Primozic , công cụ miễn phí và mã nguồn mở này sử dụng ngôn ngữ kịch bản tùy chỉnh có tên Geoscript để tạo sinh các đối tượng 3D phức tạp theo thủ tục.

Tính năng Kỹ thuật

  • Ngôn ngữ: Geoscript (DSL tùy chỉnh tương tự cú pháp Rust )
  • Nền tảng: Dựa trên trình duyệt, kết xuất thời gian thực
  • Vật liệu: Ánh xạ triplanar (không yêu cầu tọa độ UV )
  • Giấy phép: 100% miễn phí và mã nguồn mở
  • Người tạo: Casey Primozic

Cách tiếp cận cách mạng trong mô hình hóa 3D

Geotoy áp dụng cách tiếp cận hoàn toàn khác biệt so với phần mềm mô hình hóa 3D truyền thống hoặc thậm chí các công cụ dựa trên shader như Shadertoy . Thay vì thao tác các đỉnh thủ công hoặc tính toán màu sắc pixel, người dùng viết các hàm mô tả hình dạng và cấu trúc tổng thể của các đối tượng 3D. Phương pháp này tỏ ra hiệu quả hơn đáng kể đối với một số loại tác vụ mô hình hóa nhất định.

Sự khác biệt về hiệu suất rất nổi bật khi so sánh với các phương pháp kết xuất dựa trên pixel. Trong khi Shadertoy yêu cầu gọi hàm hàng trăm nghìn lần để kết xuất một khối lập phương đơn giản trên màn hình tiêu chuẩn, Geotoy đạt được kết quả tương tự chỉ với vài chục lần gọi hàm. Hiệu quả này xuất phát từ việc mô tả hình dạng thay vì từng pixel hoặc nguyên tử của hình ảnh.

So sánh hiệu suất: Geotoy so với Shadertoy

  • Geotoy (mô tả hình dạng): ~36 lần gọi hàm để render một khối lập phương
  • Shadertoy (dựa trên pixel): ~921.000 lần gọi hàm cho màn hình 1280x720
  • Cải thiện hiệu quả: Giảm hơn 25.000 lần số lượng gọi hàm cho hình học cơ bản

Đổi mới kỹ thuật và phản hồi từ cộng đồng

Nền tảng này thể hiện tính linh hoạt ấn tượng thông qua bộ sưu tập các tác phẩm, từ các cấu trúc toán học như đường cong Hilbert 3D và nút xuyến đến các hình thức hữu cơ như hoa bồ công anh và rễ cây. Các ví dụ nâng cao bao gồm tạo sinh địa hình thủ tục sử dụng chuyển động Brown phân số ( FBM ) và các cấu trúc kiến trúc phức tạp.

Các thành viên cộng đồng đang so sánh với các công cụ đã được thiết lập trong khi lưu ý vị trí độc đáo của Geotoy . Một số nhà phát triển thấy sự tương đồng với Structure Synth , một công cụ mô hình hóa thủ tục trước đó, nhưng đánh giá cao khả năng thời gian thực và khả năng truy cập trình duyệt của Geotoy . Cú pháp có sự tương đồng với ngôn ngữ lập trình Rust , làm cho nó dễ tiếp cận đối với các nhà phát triển quen thuộc với các ngôn ngữ lập trình hiện đại.

Ví dụ Thư viện Geotoy

  • Toán học: đường cong Hilbert 3D, nút xuyến, domino siêu elip
  • Hữu cơ: bồ công anh, rễ cây, lò xo, cây Dark Souls
  • Kiến trúc: đền thờ, khối tứ diện bê tông, đảo nổi bậc thang
  • Thủ tục: địa hình FBM, mê cung gỉ sét, hình cầu gồ ghề
  • Trừu tượng: đồng hồ cát trừu tượng, đạo cụ shader tinh xảo, họa tiết dệt

Ứng dụng thực tế và tiềm năng tương lai

Công cụ này đáp ứng sự quan tâm ngày càng tăng đối với việc tạo sinh nội dung 3D thủ tục. Một số nhà phát triển trong cộng đồng đang làm việc trên các dự án tương tự, đặc biệt tập trung vào các kỹ thuật tạo lưới Signed Distance Field ( SDF ) cho mô hình hóa 3D dựa trên JavaScript . Điều này cho thấy xu hướng rộng lớn hơn hướng tới các công cụ tạo 3D dựa trên mã có thể chạy hoàn toàn trên trình duyệt web.

Định nghĩa vật liệu trong Geotoy sử dụng ánh xạ ba mặt phẳng, loại bỏ nhu cầu về quy trình ánh xạ UV truyền thống. Điều này đơn giản hóa quá trình tạo kết cấu trong khi vẫn duy trì chất lượng hình ảnh trên các hình học thủ tục phức tạp.

Cách tiếp cận của nền tảng đối với mô hình hóa 3D phản ánh các mẫu rộng lớn hơn được tìm thấy trong tự nhiên, nơi các cấu trúc phức tạp như mạch máu và cành cây xuất hiện từ các quy tắc toán học tương đối đơn giản. Kết nối giữa mã lệnh và các hình thức tự nhiên này mở ra khả năng tạo ra nội dung 3D hữu cơ và thực tế hơn thông qua các phương pháp thuật toán.

Geotoy đại diện cho một bước tiến đáng kể trong việc làm cho mô hình hóa 3D tinh vi trở nên dễ tiếp cận thông qua trình duyệt web, kết hợp sức mạnh của tạo sinh thủ tục với sự tiện lợi của các công nghệ web hiện đại.

Tham khảo: geotoy