katharostech / arsenal

Blender game engine prototype written in Rust.
https://katharostech.github.io/arsenal
Other
274 stars 16 forks source link

Visual Scripting Inside Blender #12

Open zicklag opened 5 years ago

zicklag commented 5 years ago

In order to allow non-programmers to develop the logic for their games

As a game developer

I want to be able to build out logic for my game using nodes inside of Blender.


Logic nodes will most likely compile to Lua code.

Requires Lua scripting support in Amethyst.

Bugsbane commented 5 years ago

If I may add my perspective as a non coder artist with some experience in game dev... When developing visual scripting, please pay close attention to how low/high level the node system is. BGE went too high level, which made it easy for people to get started, but quick to hit the limitations of what it could do. Godot went in the other direction and made a system where you still needed to basically know evey command needed to code, and to replace each of those with a node. This yielded worse than no benefits to non coders as you still needed to learn how to code, plus you still had to deal with complicated node diagrams that were slower to create than just typing the code.

Armory is the first engine I have seen that got this balance perfect. It's possible to get a basic keyboard controls applying a force to an object combo with just a few nodes, and no coding knowledge, and yet the system is flexible enough to do the vast majority of common operations needed by most games (or at least it has the capability to be with some extra nodes).

Skimming over Luna's website and all their talk about data visualization, I am concerned that it looks like they may be aiming more at the Godot level of granularity, which would make the node system inaccessible to the very people that would most eagerly appreciate a visual scripting system.

Hopefully this impression is just a misunderstanding based on an overly quick read of their website. Just please be careful and develop this feature with constant user feedback, as there's always risk when programmers are left to understand and code for the needs of non-programmers.

Thanks for your consideration!

zicklag commented 5 years ago

@Bugsbane you definitely have a valuable point and we'll be open to feedback on the system as it gets developed. If Luna doesn't seem to fit what we are looking for, then I don't see a reason we couldn't do something very similar to what Armory does today and compile logic nodes in Blender to Lua or Haxe.

Either way, we should be able to get something that works at least as well as Armory.

zicklag commented 5 years ago

After some further investigation, I am pretty sure that we will opt for designing our own logic nodes inside of Blender, similar to Armory, that compile, most likely, to Lua.