Tổng quan kỹ thuật về O3DE
(o3de.org)- O3DE 26.05 được giới thiệu là bản phát hành mới nhất, và có thể kiểm tra trạng thái hiện tại của engine thông qua ghi chú phát hành và tài liệu tổng quan
- Engine này là một engine 3D mô-đun mã nguồn mở, nhấn mạnh các đặc tính cốt lõi như khả năng tương tác, đa nền tảng, thân thiện với đám mây và phát triển theo định hướng cộng đồng
- Các lĩnh vực ứng dụng mở rộng từ phát triển game sang robot, metaverse và giáo dục; trong robot, khả năng tích hợp sâu với Robot Operating System (ROS) được đặc biệt nhấn mạnh
- Phần showcase tập hợp và giới thiệu các sản phẩm sáng tạo và mô phỏng của người dùng cũng như cộng tác viên trên toàn thế giới, bao gồm các ví dụ như Bistro Example, Robotic Warehouse Simulation, Stealth, Paper Kid
- Doanh nghiệp và tổ chức có thể tham gia với tư cách thành viên của Open 3D Foundation để hỗ trợ O3DE và góp phần định hình định hướng tương lai của engine
Bản phát hành mới nhất và lộ trình bắt đầu
- O3DE 26.05 hiện là bản phát hành mới nhất
- O3DE được giới thiệu là một engine 3D mã nguồn mở không ngừng phát triển
- Người dùng có thể ngay lập tức chọn con đường bắt đầu xây dựng hoặc đóng góp cho cộng đồng
- Nội dung nhấn mạnh cộng đồng nơi người dùng và cộng tác viên cùng khám phá, cùng vai trò của các tổ chức thành viên trong việc định hình tương lai của engine
Lĩnh vực ứng dụng và showcase
- Các đặc tính chính của O3DE được tóm tắt là chất lượng cao, mô-đun, khả năng tương tác, đa nền tảng, định hướng cộng đồng, mã nguồn mở và thân thiện với đám mây
- Có thể dùng làm nền tảng cho các dự án 3D trong nhiều ngành, ứng dụng và nền tảng khác nhau
- Gaming: có thể tạo ra các thế giới hỗ trợ kể chuyện và gameplay bằng các công cụ mô-đun mã nguồn mở
- Robotics: có thể xây dựng mô phỏng robot với tích hợp ROS và nhiều thành phần khác nhau
- Metaverse: hướng tới việc cung cấp trải nghiệm nhập vai và tài sản số 3D
- Education: hỗ trợ phương thức học tập trong lớp học hiện đại bằng công nghệ 3D
- O3DE showcase tập hợp và giới thiệu các sản phẩm sáng tạo và mô phỏng của người dùng cũng như cộng tác viên
- Ví dụ gồm Bistro Example, Robotic Warehouse Simulation, Robotic Arm, Stealth, Chain Arc skill using PopcornFX, Kythera AI, Planet Survival Game, Paper Kid
- Đồng thời cũng cung cấp các bài blog liên quan đến cộng đồng
- Doanh nghiệp có thể hỗ trợ O3DE với tư cách thành viên của Open 3D Foundation
1 bình luận
Ý kiến trên Hacker News
Tôi vẫn đang tiếp tục theo dõi O3DE. Thiết kế của Godot có vẻ không thật sự phù hợp với các tác vụ hiệu năng cao hoặc xử lý rất nhiều actor
Tôi chưa từng phải dùng số lượng actor cực lớn, nhưng lại khá thường xuyên gặp trường hợp phải dùng Observer. Dù vậy, xét về mặt thiết kế đơn giản thì Godot gần Unity hơn nhiều, và ở nhiều khía cạnh có lợi thế về khả năng mở rộng và tính dễ dùng nhờ hệ thống Node
Mức vài chục nghìn actor đáng lẽ vẫn phải xử lý ổn, nhưng nếu lên đến hàng triệu thì có thể phải tự viết module. May là codebase của Godot vẫn khá dễ chịu đối với một dự án C++ phức tạp có engine game đa nền tảng và nhiều backend kết xuất
Các nhà phát triển Cassette Beasts có nói đôi chút về phần đó trong cuộc phỏng vấn này: https://godotengine.org/article/godot-showcase-cassette-beas...
O3DE dựa trên Amazon Lumberyard, còn Lumberyard thì dựa trên CryEngine 5 đã được kiểm chứng trong ngành của Crytek
Codebase đã được hiện đại hóa lên C++17, và engine kết xuất song song Atom hỗ trợ Vulkan, DirectX 12 và dò tia thời gian thực
Một game được phát hành không có nghĩa công nghệ bên dưới nó tốt hay dễ chịu để làm việc cùng. Theo tôi, phần lớn game được phát hành không phải nhờ code tốt mà là nhờ ý chí thuần túy
Tôi cũng từng tự hỏi vì sao chẳng ai nói về nó. Theo tôi, toàn bộ lịch sử của engine này khá thú vị
CryEngine rõ ràng đã hụt hơi, và có vẻ hiệu năng không còn tốt lắm trong các game hiện đại. Tôi đã chơi Hunt Showdown, trông khá ổn nhưng không tới mức quá ghê gớm, mà hiệu năng thì khá tệ. Đặc biệt là cây cối có cảm giác ngốn hiệu năng rất mạnh
Sniper Ghost Warrior 3 hình như cũng dùng CryEngine, mà hiệu năng tốt hơn và ở vài mặt còn trông đẹp hơn. Tôi thích định hướng nghệ thuật của Hunt Showdown, nhưng phía Ghost Warrior lại có gì đó trông “đẹp hơn”. Dù vậy, ở những đoạn nhiều cây thì hiệu năng vẫn giảm thấy rõ
CryEngine đến giờ vẫn là mã nguồn đóng, nên tôi thật sự tò mò không biết Amazon đã ký thỏa thuận khủng cỡ nào với Crytek để có thể làm Lumberyard dựa trên CryEngine, rồi sau đó phát hành mã nguồn mở và còn đổi tên thành O3DE. Theo những gì tôi đọc được, có vẻ họ tập trung nhiều vào việc nhồi tích hợp đám mây Amazon hơn là phần kết xuất 3D thực tế
Nó trông như một engine mã nguồn mở khá ổn, mà chỉ riêng điều đó đã đủ đặc biệt rồi, vậy mà chẳng ai làm gì với nó và cũng ít thấy bàn luận. Tôi không hiểu vì sao trên trang web cũng không có showcase nào về thứ gì đó nổi tiếng hoặc thật sự xuất sắc
New World dùng engine này mà tôi cũng chưa thấy được nhắc đến. Chẳng phải đó nên là showcase tiêu biểu sao? Dù game không phải quá xuất sắc hay nhìn cực kỳ ấn tượng, thì nó vẫn là một tựa game lớn được làm bằng engine này
Tôi đã nói chi tiết hơn trong bài khác: https://news.ycombinator.com/item?id=37968280
Lạ là tôi đã xem qua khoảng 5 phút mà vẫn không tìm ra ngôn ngữ được hỗ trợ là gì
Nếu đã cung cấp gói
.debthì tôi không hiểu sao lại cố tình phớt lờ FHS và đổ hết file cài đặt vào/opt/optchẳng phải cũng là một phần của FHS sao? Hay là tôi đang bỏ sót điều gì?Thật lạ là khi vụ Unity nổ ra, phần lớn mọi người chỉ nhìn sang Godot hoặc Unreal, còn những thứ như O3DE thì hầu như chẳng được nhắc đến hay quan tâm
Tất nhiên cũng có thể do có nhiều bình luận liên quan đến tính dễ sử dụng
Nếu người ta khen Godot nhiều vì là mã nguồn mở, thì việc ưu ái O3DE theo cách tương tự hơn là Unreal mới là điều tự nhiên: https://github.com/o3de/o3de/blob/development/LICENSE.txt Không rõ vì sao họ dùng đồng thời cả Apache 2 và MIT, nhưng nó khác với giấy phép của Unreal: https://www.unrealengine.com/en-US/license
Trừ khi thực tế là mọi người coi trọng hơn những lựa chọn và tính năng đủ phổ biến để thu hút sự chú ý, còn giấy phép không phải yếu tố cốt lõi mà chỉ là một điểm cộng. Unreal cũng đã tăng giá nhẹ sau đó một chút: https://www.unreal-university.blog/post/unreal-engine-5-pric...
Dù sao thì có nhiều lựa chọn vẫn là điều tốt, bất kể chi tiết giấy phép ra sao. Chỉ là các lập trình viên sẽ bị phân tán sang nhiều dự án khác nhau. Ngoài Godot, O3DE, Stride, Unreal, còn có những thứ như jMonkeyEngine khá hiếm, là engine/editor 3D dựa trên Java, hay NeoAxis từng có một giải pháp voxel LOD rất hay nhưng hiệu năng trên phần cứng AMD lại kém
Sẽ không có gì ngạc nhiên nếu O3DE mạnh hơn Godot, nhưng khi chọn engine thì mức độ phù hợp giữa đội ngũ và engine mới quan trọng hơn. Với phần lớn các nhóm indie, O3DE có vẻ khá nặng
Tôi chưa tự mình đào sâu, chỉ là thuật lại những gì đã đọc. Việc phát triển có vẻ khá tích cực nên hoàn toàn có khả năng sau này sẽ thay đổi
Có lẽ những studio lớn với đội ngũ phát triển đã ổn định thì dùng được
Tài liệu và công cụ của O3DE còn nhiều thứ phải cải thiện so với Godot. Cộng đồng cũng cần lớn hơn, nhưng để vậy thì trước hết phải cải thiện tài liệu và công cụ
Cuối cùng thì tôi đều mong cả Godot lẫn O3DE thành công, ủng hộ cả hai dự án, và cũng đã từng cố kéo O3DE vào các cuộc thảo luận kiểu này. Nhưng nếu hôm nay tôi có thời gian để bắt đầu làm game như một nhà phát triển indie, có lẽ tôi sẽ chọn Godot. Dù vậy cả hai engine đều có nhiều thứ để mang lại
Các lập trình viên O3DE, chủ yếu là Amazon, dù có người than phiền rằng Amazon không đóng góp cho mã nguồn mở, nhưng có vẻ họ biết rõ điểm yếu của mình và đang cố hết sức tái cấu trúc mã, cải thiện công cụ và tài liệu để nó dễ dùng hơn. Sẽ cần thời gian, và tôi hy vọng điều đó sẽ đơm hoa kết trái với sự hỗ trợ từ cộng đồng và sự hỗ trợ liên tục từ Amazon. Biết ơn vì nhiều đóng góp mã nguồn mở của Amazon. Tôi không đồng ý với mọi việc công ty này làm, nhưng tôi hoàn toàn không đồng ý với quan điểm rằng họ không trả lại gì cả
Vì vậy họ cũng cung cấp giấy phép kép theo MIT, vốn tương thích với GPL2
Các dự án Rust cũng gặp vấn đề tương tự nên dùng giấy phép kép Apache2 + MIT
Họ muốn Apache 2 vì có điều khoản cấp phép bằng sáng chế rõ ràng, nhưng đồng thời cũng muốn mã có thể được dùng trong các dự án GPL2
Ngay cả khi nhìn vào những khó khăn phát triển mà các đội nội bộ của Amazon gặp phải khi dùng Lumberyard, tôi cũng không thấy yên tâm lắm
Dù vậy tôi vẫn cho rằng việc phát hành nó dưới dạng mã nguồn mở là quyết định đúng đắn, và hy vọng nó sẽ tốt hơn trong tương lai
Nó không đơn giản như Unity hay Unreal, và việc cài đặt cũng tốn rất nhiều thời gian. Ngoài ra pipeline tài sản cũng là một nỗi đau khác, không rõ đã được cải thiện chưa. O3DE là engine Lumberyard của Amazon, còn Lumberyard là engine tách ra từ CryEngine
O3DE, cũng như trước thời Lumberyard, thực sự rất tệ với tư cách là một game engine
Tôi chỉ nghe những câu chuyện tồi tệ nhất từ các đội từng bị buộc phải dùng Lumberyard
Đừng nhầm với O3D, engine render của Google trên Chrome ngày xưa: https://hn.algolia.com/?q=o3d
Có ai còn nhớ bản demo Beach https://www.youtube.com/watch?v=uofWfXOzX-g không? Chắc chỉ mình tôi thôi
Tôi đã tìm được bản trích xuất mô hình 3D và trang lưu trữ của bản demo Beach, nhưng plugin trình duyệt thật sự thì không được lưu trữ, và tôi cũng không muốn dựng lại một hệ thống build hơn 10 năm tuổi chỉ để chạy một plugin trình duyệt cổ. Nhớ thời đó thật
samples.ziplớn [1] có thư mụco3d-webgl, trông như một cầu nối API giữa hai thế giớiCác ví dụ trỏ tới script này vẫn chạy được trên trình duyệt hiện đại mà không cần plugin
[1] http://web.archive.org/web/20100308001327/http://code.google...
Thật thú vị khi có công nghệ biến mất còn công nghệ khác thì sống sót
Vài năm trước có ODE, tôi từng dùng nó trên ode.org để mô phỏng thuật toán micromouse cùng với vật lý. Nhìn thấy cái tên này làm tôi nhớ lại chuyện đó
Chỉ cần mở trang đầu tiên thôi là đã tải xuống gần 200MB video