[SOLVED] Understanding the concept of the Armory engine


I’m a complete newbie to game creation, having only used a bit of Blender for modeling before.
Now I’m choosing a game engine - to try and start making games.
I naturally choose between Unreal Engine 5 and Godot 4, and only today I found out that there is such an engine as Armory and, as it is claimed, with full integration into the real Blender.

This is where I can’t understand the concept - what does full integration into Blender mean?

Do I understand correctly that Armory 3D allows you to fully manipulate functions, shaders, physics, nodes and other Bleder functions at runtime? Or am I not understanding correctly?

And does the Armory engine allow you to connect modules written in C / C ++, like in Godot and Unreal Engine?

If it’s not difficult, please explain.

Hello and welcome to the forum.

Good question. Basically, in context with Armory, it means that Armory is incorporated to fully work around Blender. For example Godot, Unity, Unreal, etc. all have Blender exporters that export specific formats that are compatible for those engines. But those exporters are usually outdated and incompatible with latest release versions, sometimes, but not always due to developers for them being under staffed (for the exporters).

The Armory Blender add-on is fully oriented around the Armory Engine, allowing relatively seamless exporting from Blender to Armory (be aware that not all Blender material nodes / features are supported, see the wiki for more information):

With Armory logic nodes, you can export your logic from Blender to Armory seamlessly. If you choose to use Haxe, you’ll need to most likely use an external text editor, although you could choose to use Blender’s built-in text editor, but it doesn’t support Haxe syntax/highlighting, so it’s usually recommended to use an external text editor such as VSCode that can support Haxe (through 3rd-party plugins [extensions]).

Affirmative to all of these questions, although, as I mentioned above, not all Blender features are supported - Armory also does not support the Python language (it did in the past, but not anymore), nor Blender’s BPY language. These are mainly due to licensing issues (Blender’s GPL license), as well as potential performance and security concerns (Python language).

Armory is built on Haxe, so yes, you can use those languages. See here for more information about supported languages: Compiler Targets - Haxe - The Cross-platform Toolkit