Can we "Code-First" with Unity from Visual Studio?
We're looking for a code-first 3D rendering solution for .NET/MAUI apps. . Our perception of Unity is that it can ONLY be used in the context of "making a Unity App" -- being the "master" of the app. Everything else is subordinate/2nd to Unity, for Unity Apps. If you choose to render in Unity, you've got to start up the Unity Editor, and do all builds/deployment via the Unity Editor.
=== Now compare this to other options like Urho3D, which has Urho.NET making it work with .NET. Here, we can do "program-First" . Urho.NET is simply an "assembly reference" in our .NET Standard 2.0 projects. Our C# programs start up via the "static Main(args[])" entry method, like all .NET programs, and then choose when to start up Urho3D Application. In short -- our C# application is "the master; in control of the entire application flow".
=== We'd be more interested in Unity3D if it allowed us to treat it similar to how we treat Urho3D. Such as:
Not requiring us to Load up the Unity Editor to build/deploy.
Allowing us to instead call the Unity Build scripts/tools programmatically from Visual Studio, to do the necessary stuff that the Unity Editor does during the build process.
We don't mind if occasionally you have to go into the Unity Editor to modify some app settings, but for the most part, we want to do our "F5" run/compile/debug direct from Visual Studio.
For Scene content, we intend to do this similar to how we do now with Urho3D:
Create our own Scene in C#, and set it's settings.
Programmatically add lights, node, objects, and even prefabs.
Our entire scenes will be programmatically constructed from scratch. This is our preference and how we do it with Urho3D now.
However, since Unity3D is a market-leader, if we can treat it similar to Urho3D, we'd become very interested in switching our App over to using Unity3D instead.
====
SUMMARY:
Is it feasible to compile/deploy .NET projects that use Unity3D for rendering, primarily from Visual Studio, without the Unity Editor open?
We just don't want our entire App to be transformed from a MAUI/.NET project into a "Unity Project" that runs-the-whole-show. To use, Unity is simply a "Renderer" and needs to behave more like as "slave" than a "master".