Godot 4.4.3 hiện đã có sẵn để tải xuống. Bản phát hành này bao gồm các bản sửa lỗi và tính năng mới. Trình soạn thảo Web, trình soạn thảo XR và trình soạn thảo Android đều có sẵn để thử nghiệm.Godot 4.4.3 hiện đã có sẵn để tải xuống. Bản phát hành này bao gồm các bản sửa lỗi và tính năng mới. Trình soạn thảo Web, trình soạn thảo XR và trình soạn thảo Android đều có sẵn để thử nghiệm.

Godot 4.4 Dev 3: Vertex Shading, 2D Batching và hơn thế nữa

Chúng tôi trở lại với một bản cập nhật phát triển lớn khác với hơn 330 commits đã được hợp nhất trong vài tuần qua! Các cộng tác viên tiếp tục làm việc trên những tính năng mới tuyệt vời trong khi chúng tôi tiếp tục hợp nhất các tính năng quan trọng trong danh sách chờ đã bỏ lỡ thời hạn 4.3. Kết quả kết hợp là rất nhiều thứ tuyệt vời được nén trong một khoảng thời gian ngắn.

\ Nhiều thay đổi trong bản phát hành này là các bản sửa lỗi sẽ được backport vào Godot 4.3 và phát hành trong 4.3.1! Vì vậy, hãy kiểm tra kỹ bản phát hành này để chúng tôi có thể tự tin với các thay đổi và phát hành 4.3.1 với chúng càng sớm càng tốt.

\ Hãy nhớ rằng mặc dù chúng tôi cố gắng đảm bảo mỗi bản snapshot phát triển đủ ổn định cho việc kiểm tra chung, đây theo định nghĩa là một phần mềm tiền phát hành. Hãy chắc chắn tạo các bản sao lưu thường xuyên, hoặc sử dụng hệ thống kiểm soát phiên bản như Git, để bảo vệ dự án của bạn trong trường hợp hỏng hoặc mất dữ liệu.

\ Chuyển đến phần Downloads, và thử ngay bây giờ, hoặc tiếp tục đọc để tìm hiểu thêm về các cải tiến trong bản phát hành này. Bạn cũng có thể thử Web editor, XR editor, hoặc Android editor cho bản phát hành này (tham gia nhóm kiểm tra Android editor để có quyền truy cập vào các bản dựng tiền phát hành).


Hình minh họa bìa gốc là từ Fogpiercer, một trò chơi đánh bài theo lượt nơi bộ bài của bạn là một đoàn tàu! Nó được phát triển trong Godot 4.3 bởi Mad Cookies Studio. Bạn có thể thêm trò chơi vào danh sách mong muốn trên Steam và theo dõi các nhà phát triển trên Twitter.

Điểm nổi bật

Trong trường hợp bạn đã bỏ lỡ, hãy xem ghi chú phát hành 4.4 dev 1 và dev 2 để có cái nhìn tổng quan về một số tính năng chính đã có trong bản snapshot đó, và do đó vẫn có sẵn để kiểm tra trong dev 3.

\ Dưới đây là một số điểm nổi bật mà bạn có thể thấy đặc biệt thú vị!

\

@export_tool_button annotation

Khả năng tạo nút trong trình kiểm tra từ các script công cụ là một tính năng được yêu cầu cao, và nhiều cộng tác viên đã tự mình thực hiện điều đó trong GH-96290: các cộng tác viên mới jordi-star và Macksaur, và người bảo trì Ernest và Danil!

\ Tính năng mới này cho phép bạn thể hiện nhiều hơn với các công cụ phát triển mà bạn có thể dễ dàng tạo ra với các script @tool.

\ Hãy xem một ví dụ:

@tool extends Sprite2D # With a callable (could also be a local function). @export_tool_button("Toot", "Callable") var print_action = print.bind("toot") # With a lambda. @export_tool_button("Randomize Color", "ColorRect") var color_action = func(): self_modulate = Color(randf(), randf(), randf())

\

Tối ưu hóa mạnh mẽ khởi động cảnh cho các dự án lớn

Công việc không chậm lại trong việc cải thiện trải nghiệm khởi động cảnh, vẫn nhờ vào những đóng góp tuyệt vời của Hilderin. Bản snapshot phát triển này giới thiệu một cải tiến lớn về tốc độ tải trình soạn thảo cho các dự án lớn (GH-95678). Các dự án lớn có thể mong đợi cải thiện tốc độ lên đến 3× khi tải dự án và tăng tốc tương tự khi thực hiện bất kỳ thao tác nào quét hệ thống tệp.

Vertex shading

Bản phát hành phát triển này giới thiệu lại tùy chọn vertex shading cho vật liệu (GH-83360) đã được mong đợi từ lâu, nhờ vào cộng tác viên ywmaa đưa ra tính năng chính thứ hai của họ trong Godot, sau hỗ trợ xuất cho Blender Geometry Nodes. Vertex shading chủ yếu được sử dụng để đạt được phong cách PSX ban đầu và tối ưu hóa hiệu suất trên các thiết bị cũ và cấp thấp.

\ Bạn có thể bật vertex shading từ trong một StandardMaterial3D, ORMMaterial3D, ShaderMaterial hiện có, hoặc bằng cách bật cưỡng chế nó trên tất cả các vật liệu bằng cách sử dụng cài đặt dự án rendering/shading/overrides/force_vertex_shading.

\

Thêm batching vào RendererCanvasRenderRD

Sau khi giải quyết backend rendering Metal được hợp nhất trong một bản snapshot trước đó, Stuart đã thực hiện một đóng góp rendering ấn tượng khác: 2D batching!

\ Batching đã được triển khai trong trình render Compatibility kể từ khi phát hành 4.0. Bản phát hành này mang lại lợi ích hiệu suất tương tự cho các backend khác bằng cách triển khai batching khi sử dụng các backend Forward+ và Mobile (GH-92797). Bây giờ hiệu suất 2D có thể so sánh được giữa tất cả các backend.

\ Batching là một tối ưu hóa hiệu suất giảm mạnh số lượng lệnh vẽ trong một cảnh. Lợi ích của batching sẽ đặc biệt đáng chú ý trong các cảnh có nhiều rendering văn bản hoặc sprite lặp lại chia sẻ một texture (ví dụ: khi sử dụng tilemaps hoặc tạo một bullet hell).

\ Chúng tôi có kế hoạch cải tiến thêm cho batching trên các backend RD để cho phép nó thậm chí nhanh hơn backend Compatibility. Hãy theo dõi các cập nhật trong các bản phát hành phát triển sau!

Trình đánh giá biểu thức (REPL) trong trình gỡ lỗi

Trình đánh giá biểu thức thêm một tab mới vào bảng điều khiển dưới cùng cho phép bạn đánh giá các biểu thức sử dụng trạng thái cục bộ của script của bạn trong khi dừng tại một điểm ngắt. Nhiều người dùng quen thuộc với quy trình làm việc này từ các trình gỡ lỗi REPL khác.

\ Tính năng này đã được phát triển trong một thời gian và gần đây đã hoàn thành và được hợp nhất (GH-97647), cảm ơn Oğuzhan, Erik và Tomek đã đưa nó đến đích.

Triển khai tự động khởi động cho tất cả các trình phân tích hiệu suất

Một phàn nàn phổ biến từ người dùng là họ cần quay lại trình soạn thảo sau khi bắt đầu trò chơi để bật trình phân tích hiệu suất. Điều này làm cho việc đo lường hiệu suất trong vài giây đầu tiên khi tải một cảnh trở nên khó khăn và là một rắc rối tổng thể cho các nhà phát triển.

\ Hendrik đã giới thiệu một hộp kiểm cho phép bạn đặt trình phân tích hiệu suất để tự động khởi động khi bạn chạy engine và thu thập dữ liệu phân tích hiệu suất có giá trị ngay lập tức (GH-96759).

Thêm markers vào Animation

Markers cho phép bạn tạo các vùng con của một hoạt ảnh có thể nhảy đến, hoặc lặp lại mà không cần phát toàn bộ hoạt ảnh.

\ Markers thậm chí được hỗ trợ bên trong Animation Tree, nơi bạn có thể dễ dàng chọn các markers hoạt ảnh để lặp lại hoặc bắt đầu phát lại.

\ Để biết thêm chi tiết, hãy xem pull request GH-91765, một trong những đóng góp Godot đầu tiên của ChocolaMint!

Hỗ trợ camera Linux

Trước đây, Godot chỉ hỗ trợ truy cập camera thiết bị trên các thiết bị macOS và iOS. Pull request GH-53666 đã chạy trong thời gian dài của pkowal1982 cuối cùng đã được hợp nhất và thêm hỗ trợ cho nền tảng Linux, cho phép các nhà phát triển truy cập các camera được kết nối từ trong trò chơi của họ.

Dự phòng sang OpenGL 3 nếu các trình điều khiển rendering khác không được hỗ trợ

Hiện tại khi cố gắng chạy Godot với backend Forward+ hoặc Mobile trên một thiết bị không hỗ trợ Vulkan, D3D12, hoặc Metal, engine sẽ cung cấp cho người dùng một cảnh báo OS thông báo rằng họ không có hỗ trợ cho API đồ họa cần thiết và họ cần thử lại với backend Compatibility. Cảnh báo này đã chứng minh là gây nhầm lẫn cho người dùng và quá trình mở cảnh cuối cùng trở nên phức tạp.

\ Bây giờ với GH-97142, đóng góp đầu tiên từ SheepYhangCN, engine sẽ tự động chuyển sang sử dụng OpenGL (backend Compatibility) khi các backend khác không có sẵn. Điều này sẽ cung cấp trải nghiệm mượt mà nhất có thể cho người dùng trên các thiết bị cũ hơn.

\ Vì các backend Compatibility có thể trông khác với các backend khác, các nhà phát triển trò chơi có thể không muốn Godot tự động chuyển sang dự phòng. Trong trường hợp đó, họ có thể tắt cài đặt dự án rendering/rendering_device/fallback_to_opengl3 để tránh chuyển sang dự phòng, và người dùng với các thiết bị chỉ hỗ trợ OpenGL sau đó sẽ được thông báo rằng phần cứng của họ không được hỗ trợ.

Và nhiều hơn nữa!

Có quá nhiều thay đổi thú vị để liệt kê tất cả ở đây, nhưng đây là một lựa chọn được tuyển chọn:

  • 2D: Sửa GradientTexture2D màu hồng (GH-94744).
  • 2D: Sửa lỗi node polygon mất thanh công cụ UV (GH-96466).
  • 3D: PathFollow3D cập nhật transform ngay lập tức theo mặc định (GH-96140).
  • Animation: Cập nhật AnimationPlayer theo thời gian thực khi thuộc tính đường cong bezier hoặc trình chỉnh sửa bezier thay đổi (GH-96753).
  • Audio: Sửa lỗi tràn một frame ở cuối tệp WAV (GH-96768).
  • Audio: Sử dụng LocalVector để lưu trữ dữ liệu để tối ưu hóa AudioStreamMp3 (GH-97026).
  • Buildsystem: CI: Cập nhật hook pre-commit clang-format lên 19.1.0 (GH-97483).
  • Core: Thêm hỗ trợ callable cho các phương thức Array find và rfind (GH-95449).
  • Core: Sửa lỗi không thể sử dụng ResourceLoader trong C# sau khi tải theo luồng trong GDScript (GH-92888).
  • Core: Thêm miền dịch (GH-95787).
  • Core: WorkerThreadPool: Cải tiến tương tác với ScriptServer (GH-96959).
  • Core: StringName: Sửa lỗi hash rỗng (GH-96586).
  • Dotnet: Tạo phương thức kiểu mạnh để phát sự kiện tín hiệu và sửa khả năng truy cập sự kiện (GH-68233).
  • Editor: Sửa hiệu suất vẽ lại gizmo MeshInstance3D cho PlaneMesh với giá trị subdiv lớn hơn (GH-96934).
  • Editor: Sửa lỗi mở lại cảnh không tồn tại khi khởi động (GH-97028).
  • GDExtension: GDExtension: Cho phép tên lớp là unicode (GH-96501).
  • GDScript: Sửa vấn đề với token nhị phân GDScript không xác định (GH-96855).
  • GDScript: Sửa xác thực kiểu Dictionary.merge() (GH-96864).
  • GDScript: Sửa toán tử[] cho từ điển có kiểu (GH-96797).
  • GUI: GraphEdit: Cải thiện hiệu suất lưới mẫu chấm (GH-96910).
  • GUI: Sửa kích thước tối thiểu TabContainer (GH-97132).
  • Import: Thêm hỗ trợ nén BC1 cho Betsy (GH-95915).
  • Navigation: Sửa AStar2D, AStar3D, AStarGrid2D không trả về đường dẫn khi điểm đến bị vô hiệu hóa/đặc ngay cả với tùy chọn allowpartialpath (GH-94246).
  • Physics: Di chuyển Godot Physics 2D vào một module; thêm máy chủ vật lý 2D giả (GH-95261).
  • Physics: Di chuyển Godot Physics 3D vào một module; thêm máy chủ vật lý 3D giả (GH-95252).
  • Physics: Thêm kiểm tra getspace() bị quên trong GodotArea3D::removesoftbodyfrom_query() (GH-97130).
  • Porting: Sửa trình quản lý dự án chiếm focus trên i3 (GH-96829).
  • Rendering: Sử dụng khoảng cách đến bề mặt AABB để tính toán Mesh LOD thay vì sử dụng supports (GH-92290).
  • Rendering: Sửa BaseMaterial3D khúc xạ các đối tượng nằm phía trước vật liệu (GH-93449).
  • Rendering: Sửa toán tử tonemap Reinhard không chính xác (GH-93324).
  • Rendering: Sử dụng tích lũy thời gian để cải thiện chất lượng bóng (GH-97428).
  • Rendering: Sửa regionfilterclip_enabled để tránh sprite bị chảy máu cho các bảng sprite nội suy (GH-97602).
  • Visual Shaders: Thêm các thao tác vector vào node Remap (GH-97314).
  • Thirdparty: mbedTLS: Bật hỗ trợ TLS 1.3 (GH-96394).
  • XR: Sửa lỗi khởi chạy ứng dụng XR từ trình soạn thảo Android (GH-96868).

Nhật ký thay đổi

136 cộng tác viên đã gửi 332 cải tiến cho bản snapshot mới này. Xem nhật ký thay đổi tương tác của chúng tôi để biết danh sách đầy đủ các thay đổi kể từ bản snapshot 4.4-dev2 trước đó.

\ Bản phát hành này được xây dựng từ commit f4af8201b.

Tải xuống

Tải xuống Godot 4.4 dev3

\ Bản dựng tiêu chuẩn bao gồm hỗ trợ cho GDScript và GDExtension.

\ Bản dựng .NET (được đánh dấu là mono) bao gồm hỗ trợ cho C#, cũng như GDScript và GDExtension.

  • Xem thêm hỗ trợ nền tảng C#.

\ Mặc dù những người bảo trì engine cố gắng hết sức để đảm bảo rằng mỗi bản snapshot xem trước và ứng cử viên phát hành là ổn định, đây theo định nghĩa là một phần mềm tiền phát hành. Hãy chắc chắn tạo các bản sao lưu thường xuyên, hoặc sử dụng hệ thống kiểm soát phiên bản như Git, để bảo vệ dự án của bạn trong trường hợp hỏng hoặc mất dữ liệu.

Vấn đề đã biết

  • Lỗi "Attempting to use an uninitialized RID" được in ra khi mở trình soạn thảo (GH-97694). Đây là một lỗi vô hại và không nên có tác động đáng chú ý đến dự án của bạn.

\ Với mỗi bản phát hành, chúng tôi chấp nhận rằng sẽ có nhiều vấn đề khác nhau đã được báo cáo nhưng chưa được sửa. Xem trình theo dõi vấn đề GitHub để biết danh sách đầy đủ các lỗi đã biết.

Báo cáo lỗi

Là một người kiểm tra, chúng tôi khuyến khích bạn mở báo cáo lỗi nếu bạn gặp vấn đề với bản phát hành này. Vui lòng kiểm tra các vấn đề hiện có trên GitHub trước, sử dụng chức năng tìm kiếm với các từ khóa liên quan, để đảm bảo rằng lỗi bạn gặp phải chưa được biết đến.

\ Đặc biệt, bất kỳ thay đổi nào có thể gây ra sự thoái lui trong dự án của bạn đều rất quan trọng để báo cáo (ví dụ: nếu một thứ hoạt động tốt trong các bản phát hành 4.x trước đó, nhưng không còn hoạt động trong bản snapshot này).

Hỗ trợ

Godot là một engine trò chơi mã nguồn mở, phi lợi nhuận được phát triển bởi hàng trăm cộng tác viên trong thời gian rảnh của họ, cũng như một số ít nhà phát triển làm việc bán thời gian hoặc toàn thời gian được thuê nhờ vào những đóng góp hào phóng từ cộng đồng Godot. Xin cảm ơn tất cả những ai đã đóng góp thời gian hoặc hỗ trợ tài chính cho dự án!

\ Nếu bạn muốn hỗ trợ dự án về mặt tài chính và giúp chúng tôi đảm bảo các tuyển dụng trong tương lai, bạn có thể làm như vậy bằng cách sử dụng nền tảng Quỹ Phát triển Godot được quản lý bởi Godot Foundation. Cũng có một số cách quyên góp thay thế mà bạn có thể thấy phù hợp hơn.


Clay John

\ Cũng được xuất bản tại đây

\ Ảnh của Denys Nevozhai trên Unsplash

Cơ hội thị trường
Logo 4
Giá 4(4)
$0.01774
$0.01774$0.01774
-18.58%
USD
Biểu đồ giá 4 (4) theo thời gian thực
Tuyên bố miễn trừ trách nhiệm: Các bài viết được đăng lại trên trang này được lấy từ các nền tảng công khai và chỉ nhằm mục đích tham khảo. Các bài viết này không nhất thiết phản ánh quan điểm của MEXC. Mọi quyền sở hữu thuộc về tác giả gốc. Nếu bạn cho rằng bất kỳ nội dung nào vi phạm quyền của bên thứ ba, vui lòng liên hệ service@support.mexc.com để được gỡ bỏ. MEXC không đảm bảo về tính chính xác, đầy đủ hoặc kịp thời của các nội dung và không chịu trách nhiệm cho các hành động được thực hiện dựa trên thông tin cung cấp. Nội dung này không cấu thành lời khuyên tài chính, pháp lý hoặc chuyên môn khác, và cũng không được xem là khuyến nghị hoặc xác nhận từ MEXC.