This is a thread for all those things that are obvious in retrospect, but would have saved a lot of time if I knew when starting out.
Please add your own. Let’s just keep this thread about useful tips though rather than gripes about specific bugs (which will change over time anyway):
1. Where the heck is the Armory node editor?!!
This post will show you with a screenshot. No, it doesn’t say “Armory” on it anywhere.
2. How do I get my game to start / play? Where’s the Armory Renderer?
Push F5. It doesn’t matter what renderer you’re using to show the viewport. Armory always uses its own renderer separate from Cycles / Eevee / whatever. You can also push the “Play” button shown in point 4 below.
3. After I create a node tree, why doesn’t it DO anything?!
See the same post from point 1 on how to get node trees to apply to objects (by adding them as traits).
4. I made changes to my game. Why don’t they show up when I start the game?
Armory caches builds of the game. Sometimes you need to clean the cache. Push the “Clean” button here:
5. How Do I Get a Node to Affect Whatever Object It’s Attached To?
Just leave the name blank, where it asks you select an object name. Simple!
6. Is Armory… cough “Production Ready”?
Depends on what you mean.
Based on what most people mean (which varies wildly from person to person), usually the answer is no (we’re at version 0.6 as I write this). However…
Do you mean ready to produce a game - any game - and publish it? Well, it’s definitely ready to make a game like Flappy Bird, sure. You’re not going to produce the next instalment of Crysis on it just yet though. So what do you want to make… and by when? Can you wait for new features and bug fixes while you learn the basics?
Armory has some very strong features underneath the hood, which long term will be a huge benefit (such as massively cross platform support via Haxe which gets full performance regardless of platform). It’s still in alpha though, so you will run into frequent bugs and features that are missing. Don’t expect either to magically vanish soon. Things are improving rapidly though, so you never know what will improve next.
Also consider that if you haven’t yet created a game the size of Flappy Bird, beginning to end, then you’re not going to create the next Fortnight / Crysis / League of Legends / Call of Duty yet, with any engine. Sorry, you’re just not. Start with Flappy Bird size first and work your way up. Armory is a great place to start your learning (the Logic Nodes system is a thing of pure beauty).
7. What language should I use for “maximum performance”?
Part of the beauty of Armory is that it uses the Haxe language, which compiles not to a binary, but to native source code for whatever language and API your platform prefers. That then compiles to a native binary that runs at full native speed. Haxe takes care of the translations to the different languages so you don’t have to (even when you’re using logic nodes!).
8. Bundles are awesome! (and poorly documented)
There are all kinds of pre-built behaviours that you can apply to your game, already built in to Armory. Want a camera to follow your character? Good news! We’ve got that. How about a sidescroller game controller? We’ve got that, too! Vehicle physics? First person controller? Crowds with a navmesh? A virtual gamepad? It’s all ahem “bundled” in Armory already! And they’re super easy to add! Just add a trait to an object (see point 3) and choose “Bundled” instead of “Nodes”. Then click on the Class and choose your bundle. BUT… be aware that bundles all expect you to have set up your object(s) in a particular way or they won’t work. Helpfully (cough), there is generally no documentation with them, so be ready to experiment / ask around.
9. Running the latest Armory source code is super easy (and unstable)!
So you’re not used to compiling source code and dependencies and all that jazz? No problem! You can update to the latest source code with a single click. Just click > Edit > Preferences > Add Ons > Render: Armory > Update SDK. Do this again whenever you want to update to the latest code. Beware: This will update the Armory you’re currently running into a version that uses the unstable source code with whatever changes the devs are in the middle of making / testing. You’re probably going to still want the more stable standard release as well. I recommend downloading the release version, copying it into another folder called something like “Armory Git Version” and then just updating the one in the Git folder. That way you can always run the release version or the latest source code version.
10. Why are some faces of my games meshes invisible / backwards?
Some of your normals are probably backwards. This means that some of the faces in your mesh are pointing inwards rather than outwards. Armory doesn’t show faces from behind. See this issue for more details. You can fix this easily though by selecting the mesh with issues, going into edit mode (tab), selecting all faces (“a” key), and reclulcating normals outwards (either shift+n or mesh menu > Normals > Recalculate Outside )
11. Where are the best places to go to learn more?
The Docs are a good place although they’re pretty incomplete. It’s a wiki though, so help out!
The Armory YouTube Channel. Fairly infrequent uploads, but you’ll get the newest major announcements here.
Armory, Blender, Game is a YouTube channel with tutorials, run by our very own @Monte_Drebenstedt
Game From Scratch has a good set of YouTube tutorials for getting started with Armory. They cover other engines, too, so who knows how much Armory stuff they’ll put out in the future.
Jayanam is another YouTube channel covering a range of engines. They did another good set of YouTube tutorials though. Let’s hope they do more.
Discord While personally I dislike proprietary, digital soul-stealing silos like Facebook et al, there is a Discord channel for Armory that’s pretty popular where you can ask questions. Yeah, you’ll find me there, too (grumble). We can haz official Armory Matrix channel?
Armory Example Files - There are some fantastic and very useful example files here that show you how to do just about everything including controllers, actions, animated materials, ragdoll physics, streaming scenes from a server, demo games, 2D animated tilesheets… you name it! Highly recommended. Submit a commit to add your own!
Thanks:
Thanks to everyone who has contributed to this post, either by asking questions or helping answer them! If you see something relevant that is missing / wrong, please comment below so I can incorporate it! Thanks especially for the direct contributions by:
@BlackGoku36
@zicklag