Announcing Stride 4.3 – Stride Game Engine

Stride 4.3 brings .NET 10 and C# 14, Beepu Physics, Vulkan Compute Shaders, custom assets, cross-platform build strides, mesh buffer helpers, Rider/VSCode support, and performance and stability fixes.

Table of Contents:

Download and Upgrade πŸ”—

You can download the Stride 4.3 installer today. Release notes are available here.

Make sure you read the guide to update Stride and Projects properly.

What’s new in this release πŸ”—

Stride 4.3 includes several enhancements and improvements. Here’s what to expect:

  • .NET 10 integration:Stride 4.3 is now fully aligned with .NET 10, leveraging its performance improvements and efficiency gains for game development. This means faster execution times, smaller memory footprint, and access to the latest C# features, making your development smoother and more efficient. learn more
  • C#14 Features: With C# 14, Stride users can write clearer, more concise code thanks to new language features. These improvements reduce boilerplate and increase readability. Introduction to C#14

What’s changed since Stride 4.2

Bpu Physics Integration πŸ”—

Adding support for Bepu Physics, a ridiculously fast physics engine written entirely in C#.

Having both the game and the physics engine in the same ecosystem reduces the cost of maintaining and improving it, the overhead we can incur when communicating between the two APIs, and the barrier to entry for contributors.

Bullet is still the default physics engine, and we welcome any contributions to it, but our efforts will be focused on Beepu from now on.

The integration has been done effectively, with Beepu’s feature set now slightly ahead of Bullet. If you want to migrate to Beppu take a look at this page.

Vulkan Compute Shader Support πŸ”—

The Vulkan graphics backend has been modified to support compute shaders, and the shader compiler has also been modified to support compute shader generation for GLSL.

User-defined properties πŸ”—

Introduction of Custom Assets, a way to define and store data that can be referenced through multiple components, views, and other assets.

The Asset Compiler also gives you the ability to create more complex systems such as custom file importers.

Continuous efforts to build projects From Linux and Apple Desktop πŸ”—

Stride can build games on Windows by targeting the different devices we support, but building directly on those platforms was not supported until now.

We’ve introduced some changes to improve on that front:

  • Replacing our custom C++/CLI FBX importer with Assimp
  • Fixing the asset compiler to run on all desktop OS
  • Multiple build-system refactors to move toward fully cross-platform development
  • Building VHACD for Linux
  • Adjust FreeImage and DirectXTex for all platforms

Some work still needs to be done on this front, but simple projects can now be built on those platforms.

Efficient API for manipulating webs πŸ”—

Vertex buffers do not have a standardized layout, each mesh can have its own unique layout and data type that it uses for its vertices. Some contain mix weights, or tangents, while others contain only positions – they may also use different data types, for example Half4 positions, 4byte colors…

We added two helpers, VertexBufferHelper and IndexBufferHelper, to provide a standardized way of reading and writing to those buffers.

Open the project from GameStudio with Rider and VSCode

While any IDE can open and create a Stride project, the editor button to open said project had special handling only for Visual Studio. Jklawreszuk added support for Rider and VSCode.

Interface Processor πŸ”—

Stride has a component processor, a user-defined class that can collect and process all components of a given type in a running game. It is also known as System part of ECS Acronyms

The new flexible processing system provides greater type security and the ability to process components by their interfaces. For example, you can implement a custom update callback that any component can receive through this API.

More minor changes πŸ”—

heals πŸ”—

Although many improvements have been made, we would like to mention some of them:

  • Major performance improvements, especially for graphics and UI
  • Multiple fixes to improve game play under Vulkan, OpenGL, Linux, and OpenXR stability
  • And workarounds for edge cases when reloading assemblies in Game Studio

It is also good to know πŸ”—

We are already hard at work on several ongoing projects for version 4.4 and beyond:

  • Continued work to allow the creation of games From other platforms
  • Converting our Windows only GameStudio to cross-platform via Avalonia
    We welcome anyone interested in contributing to this project here – just make sure to add a comment on any of the unfixed issues you’d like to work on.
  • Improved shader compilation, reducing in-game hangs when creating shader permutations. Here
  • As we slowly move away from D3D11, there is more work on D3D12 and Vulkan

Funding and resource allocation πŸ”—

CALL FOR SKILLED DEVELOPERS πŸ”—

We are actively looking for skilled developers with experience in C#, .NET ecosystem, mobile, XR, rendering and game development. If you have these skills or know someone who has, we encourage you to get involved. Supported by the available funding, there are opportunities to contribute to important areas of Stride’s development.

Join us on this journey πŸ”—

We’re always excited to welcome new contributors to the Stride family. Be it through contributing code, spreading the message, or donating, every step helps us become stronger. If you have skills in .NET, Android and iOS development, there is a special place for you here. Support us on OpenCollective.

gratitude πŸ”—

We express our heartfelt gratitude for everyone’s hard work and donations we have received. Your generous contribution significantly assists in the continued growth and enhancement of the Stride community and projects. Thank you for your support and belief in our collective efforts.

In particular, we would like to thank these donors:

Long time Stride supporter πŸ”—

Gold Striders πŸ”—

This article was co-written by Eideren.



<a href

Leave a Comment