blazium-engine / blazium

Blazium Engine – Multi-platform 2D and 3D game engine
https://blazium.app/
MIT License
149 stars 19 forks source link

Proposal to add C++ code editor in Engine as Addon #75

Open Ughuuu opened 3 days ago

Ughuuu commented 3 days ago

The idea is to keep this as easy as possible. The workflow would be similar to this: https://libriscv.no/docs/godot/rustprogram

Rust Usage Workflow: When creating a Script you have option to create Rust script file:

image image

Since this would be generic, it would probably support GDExtension. So you would how to be able to write c++ code and build it, either when using regular CMake projects, SConstruct projects (when doing GDExtension addon), or something else.

Autocomplete

For this the code needs to be processed to offer autocomplete options

Build

For this there can be a build option, similar to how C# has. Also, if not, when Saving files and/or when running project, build the code to a GDExtension or DLL (custom lib).

Compiler

As for building, we could support either setting compiler path and using that, or using local Docker and use that (send files to the Docker and get the binary output and save it).

drcucaracha commented 2 days ago

Hi, maybe this is off topic, but wouldn't it be easier to write everything in gdscript and before creating the executable use something like the plugin (https://github.com/Lcbx/GdScript2All) that translates the code and creates the executable with the selected code?

Ughuuu commented 2 days ago

Interesting, will read that and see how it is useful and where it could fall into all this. Edit: Seems like its not complete and doesn't support all features, and a lot of parts in code translated have parts saying it needs manual update. So it's not there yet.

From README: generated code might need corrections