Flax Engine is a complete suite of game development tools made by game developers, for game developers. Our goal is to create the most powerful game engine in the industry and to give creators all across the globe the tools to harness this power to create world-class gaming experiences, no matter their budget or team size.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles

Flax 1.5 released

News

High-Level Networking

Complete multiplayer support comes to Flax! This was one of the most awaited features and now it’s ready to be used in games. In this update we’ve implemented High-Level Networking layer which includes objects replication over the network, Remote Procedure Calls (RPC), concepts of object ownership, and server authority model.

New networking components allow to quickly create multiplayer games in server-client architecture (including self-hosted games). Flax networking layer will automatically handle connections setup, data replication, and objects spawning over the network (eg. spawn player prefab to all clients). Both C++ and C# scripting support new NetworkReplicated attribute (marks field/properties for automatic replication), NetworkRpc attribute (marks function as RPC), and INetworkObject interface (for customizations to networked object lifetime).

To learn more about High-Level Networking see new documentation here.

Arizona Framework

Arizona Framework is ready to use, open-source framework for creating games in Flax available on Github. It’s created as a plugin and can be added to your game project. Arizona Framework features core game architecture concepts commonly used in games such as Game Mode, Game State, Game System, Player State, Player Pawn, Player Controller, Player UI, and more. It’s easily extendable and contains in-built support for multiplayer (both high-level networking and local coop).

To showcase this framework’s example usage, we’ve created a sample first-person shooter game project Arizona Framework Sample. If you plan to create a multiplayer game with Flax feel free to use it as the foundation for a new project.

ImGui Plugin

Dear ImGui is a bloat-free graphical user interface library for C++ which is commonly used in gamedev for tools and debug interfaces creation. We’ve created and released an official plugin for Flax-games to integrate ImGui and use it in C++/C# scripts. See the repository readme to learn how to use it in your game project.

Performance Optimizations

Every Flax update brings various performance improvements. This time we’ve focused on CPU optimization of the game rendering. Now, renderer uses multi-threaded draw calls collection (via Job System), material shader constants are separated into per-view and per-draw data, shadows rendering is batched with main view, meshes drawing is faster, and much more. This resulted in a massive performance boost for large scenes (10k+ meshes) or in levels with many shadowed lights. Scene rendering is fully multi-threaded with bigger throughput. Also, existing graphics features such as DDGI or Global SDF have been optimized for bigger game productions.

Above you can see an example view from Tracy’s profiler with CPU frame time of the Library demo (arch vis scene) that has 30+ fully shadowed lights and 10k meshes.

Hierarchical Tags

New gameplay tags come to Flax! Hierarchical tags with namespaces can empower gameplay programming. Now, Actors have a list of those tags which makes them more usable. Also, the new editor supports easy tag picking which can be used in other gameplay systems (eg. player weapons, animations, or abilities setup). Tags are a lightweight and scalable solution for well-organized game productions.

Important feature of this new system is new API such as Tags.Get, Tags.HasTag, Tags.HasAnyExact, Tags.HasAll, and so on, which improve usability in code.

DLSS Plugin

NVIDIA DLSS is a revolutionary breakthrough in AI-powered graphics upscaling technology that massively boosts performance. To ease the integration of this technology into Flax-games we’ve released an official plugin with DLSS integration for developers. DLSS for Flax Engine is available on Github and supports DLSS 3.1.

Editor improvements

Flax Editor is under constant development towards making it the best game editor, this time we notably worked on:

  • GPU Memory profiler – allows inspecting graphics memory usage for each resource. Double-click to open related asset (eg. texture or model that created resource), use tooltip to inspect resource description (eg. buffer flags or texture format).
  • Assets profiler – shows all loaded assets, including per-resource memory usage (cpu-mem, estimated), type and references count. Right-click to inspect asset (eg. select actors using it or show references graph), double-click to open in editor. This can be useful when profiling performance and memory usage.
  • Improved Gizmo tool – bigger readability and scale tool with 2-axis mode.
  • New Actor Icons – editor viewport icons has been redone to have clean and consistent style.
  • Improved Properties panel groups – now group panels in Editor have an outline, bigger header and expand state icon which improves usability and makes UI more intuitive.
  • Editor usability – lots of Quality Of Life improvements to help developers use Flax Editor (eg. reorganized context menus)
  • Custom game viewport sizing – can be used to test mobile displays or fixed game screen aspect ratios when developing cross-platform games.

Upcoming .NET 7

Recently we’ve started updating to the latest .NET 7 for C# scripting. You can already test it on dotnet7 branch and preview the progress on a roadmap. Hopefully, it should be ready for the next 1.6 update which means that:

  • .Net Framework support is deprecated now and we will migrate to the latest .Net 7
  • Visual Studio 2017 and 2019 won’t be supported (due to.Net 7 SDK requirements of VS 2022)
  • Any 3rd party C# libs will need to be rebuilt with .Net Core/Standard
  • .Net 7 SDK will be required system dependency for Editor (cooked game as standalone)

Benefits of that change:

  • Far better performance (new GC, new JIT, optimized stdlib)
  • Latest C# 11 support
  • Ability to use mixed native/managed debugger in VS 2022
  • New Editor’s code hot-reload via AssemblyLoadContext (safer than current custom solution)
  • Seamless support for newer .Net versions in future
Flax 1.4 released

Flax 1.4 released

News

We’d like to present you with a brand new Flax 1.4! This version brings lots of new features like Realtime Global Illumination, better licensing, crowd...

Flax 1.3 released

Flax 1.3 released

News

Today, we’d like to announce the new Flax 1.3! It contains many useful features such as Ragdolls, Animation Events, macOS Support, tools, and hundreds...

Post comment Comments
teringlijer
teringlijer - - 145 comments

just tried this, very impressive stuff.

Reply Good karma Bad karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

X

Latest posts from @flaxengine

RT @gamefromscratch: The Flax Engine just released version 1.6. This plucky underdog of a game engine just got .NET 7 and C# 11 suppor… T.co

Jul 11 2023

Flax 1.6 is released! Check out highlights: Flaxengine.com Loads of stuff coming: .NET 7, C# 11, iOS suppo… T.co

Jul 8 2023

Flax Engine hotfix update is now available! Version 1.5.6339 changelog/discussion: Forum.flaxengine.com #flax #flaxengine #indiedev

Mar 1 2023

Flax 1.5 just got released! Check it here: Flaxengine.com Many new features: multiplayer support, gameplay… T.co

Feb 19 2023

RT @Xrayez: For those who want to switch from @GodotEngine to other game engines for 3D, take a look at @FlaxEngine, a free and… T.co

Feb 12 2023

The upcoming Flax 1.5 update will feature high-level networking and a new gameplay framework thus we wanted to show… T.co

Feb 11 2023

The latest tech demo is now available on Steam to play for free: Store.steampowered.com #flax #flaxengine #indiedev #IndieGameDev #gamedev

Sep 21 2022