NeoX Project Development |
This page describes editing projects, including those created from base templates. To begin, it is useful to review creating projects and repository operations.
Projects typically have server and client parts. There are also serverless projects to publish content and apps that do not need a server to run.
NeoAxis Engine is the main cloud template for the NeoAxis Engine. The template supports cloud, multiplayer, and single-player modes.
Full scene synchronization. It includes a full-scene network synchronization architecture, as well as multiplayer game frameworks for Shooter and Racing scenes. NeoAxis Engine runs on both the client and the server.
Full version of the engine. It contains a full copy of the standard standalone engine files, plus a small addition of cloud-specific code in the "Project\Assets\Game" folder.
Folder structure:
Server solution:
The project is developed in Visual Studio or a similar IDE on the client machine. To create a build, use the build feature in the NeoAxis editor via "Game\Build\Server.product". The resulting build will be generated in the "Builds\Server" folder. Once built, upload it using the File Sync repository tools.
Client solution:
During client development, you can fully connect to the server without uploading the client app to the system. You can run under the debugger.
To configure the client, you need to set your project number in the Assets\Game\Scripts\GameSettings.cs. You can find the number in the NeoX app, in the list of projects.
public const long ProjectID = 3469;
The project is developed in Visual Studio or a similar IDE on the client machine. To create a build, use the build feature in the NeoAxis editor via "Game\Build\Client Windows x64.product". The resulting build will be generated in the "Builds\WindowsX64" folder. Once built, upload it using the File Sync repository tools.
In addition to the basic NeoAxis Engine template, there are simpler templates with examples of created games.
Templates:
The full engine is not used on the server. In these templates, the engine is not launched on the server, as is done in the basic NeoAxis Engine template. The games are implemented in C#, using NeoAxis.Core.dll as a library.
Full scene synchronization is not used. A game scene is not created on the server, and its synchronization with the client is not performed. Game synchronization is handled via cloud functions of the NeoX service.
Simplified version of the engine. The templates include a trimmed-down version of the NeoAxis engine client; some resources have been removed. You can copy them from the basic NeoAxis Engine SDK.
Folder structure:
Server solution:
The project is developed in Visual Studio or a similar IDE on the client machine. To create a build, use the Publish feature in the Visual Studio. The resulting build will be generated in the "Builds\Server" folder. Once built, upload it using the File Sync repository tools.
Client solution:
During client development, you can fully connect to the server without uploading the client app to the system. You can run under the debugger.
To configure the client, you need to set your project number in the Assets\Game\Scripts\GameSettings.cs. You can find the number in the NeoX app, in the list of projects.
public const long ProjectID = 3469;
The project is developed in Visual Studio or a similar IDE on the client machine. To create a build, use the build feature in the NeoAxis editor via "Game\Build\Client Windows x64.product". The resulting build will be generated in the "Builds\WindowsX64" folder. Once built, upload it using the File Sync repository tools.
Unity template serves as the foundation for creating products based on the Unity Engine for NeoX.
Apps structure:
Folder structure:
Server solution:
The project is developed in Visual Studio or a similar environment on the client machine. Then a build for Linux is created using Publish and uploaded to the server with the NeoX app.
Client solution:
To configure the client, you need to set your project number. You can find the number in the NeoX app, in the list of projects.
//connect to NeoX var projectID = 2193; var result = await CloudServiceClient.ConnectAsync( projectID );
Godot template serves as the foundation for creating products based on the Godot Engine for NeoX.
Apps structure:
Folder structure:
Server solution:
The project is developed in Visual Studio or a similar environment on the client machine. Then a build for Linux is created using Publish and uploaded to the server with the NeoX app.
Client solution:
To configure the client, you need to set your project number. You can find the number in the NeoX app, in the list of projects.
//connect to NeoX var projectID = 2193; var result = await CloudServiceClient.ConnectAsync( projectID );
Current limits for creating client builds and template builds:
A serverless project does not use a backend server. It is intended for publishing content and applications that do not require a server to run.
Select Serverless when creating a new project without a server.
Unlike a regular server-based project, a serverless project requires you to upload the build to Storage manually. The build is a ZIP file. As an example, you can download one of the project templates.
For projects with a client, add a file named 'Build.info' to the root of the archive. This file specifies the path to the executable. Example for Windows:
Executable = "Client/Builds/WindowsX64/Binaries/NeoAxis.Player.exe"
After uploading the build, connect it on the Publish tab by specifying it in the "Build Windows x64" property.