Modifying NeoAxis Engine
Besides of developing B2C apps and games, the license allows you to create any product, including providing a modified engine and editor. Consider the NeoAxis Engine as a library with the ability to make specialized forks. You can provide a specialized SDK with additional features and with the support of other services.
On this page is described how to adapt the editor for other languages, how to add support for special devices, how to connect additional marketplaces.
Contents How to add a language - Add language to "Sources\Engine\NeoAxis.Core\Project settings\ProjectSettingsPage_General.cs", to LanguageEnum enum.
- Add a txt file with language name in "Project\Binaries\NeoAxis.Internal\Localization" folder.
- Compile, run the editor, select the new language in the project settings and restart the editor.
- Every time you start the editor, you will receive another txt file with missing text elements. You need to translate these new elements and add to the language txt file.
How to add a plugin How to add device support For each supported platform a separate solution is used. You can found sln file for each platform in the root of the SDK.
- Add a new solution by copying an existing solution.
- Project files are also separated for each platform. As example exists NeoAxis.Core.csproj and NeoAxis.Core.Android.csproj. Project files are synced while compiling. NeoAxis.Core.Android.csproj is configured to update the list of used cs files from NeoAxis.Core.csproj. Check PreBuildEvent settings in the project settings.
How to connect a marketplace You can easily add a new marketplace to Stores Window. NeoAxis Store and Sketchfab implementations can be used as examples:
- Sources\Engine\NeoAxis.Core.Editor\Editor\Store\NeoAxisStoreImplementation.cs
- Sources\Engine\Addons\NeoAxis.Addon.Editor.Sketchfab\SketchfabAssemblyRegistration.cs
How to simplify the editor Other ideas - To rename the engine or the editor, use "Sources\Engine\NeoAxis.Core\Utility\EngineInfo.cs" file. Configure OriginalName, ReplaceNameWithoutVersion, ReplaceNameWithVersion or use another way to rename inside the class. You can do modifications from the AssemblyUtility.AssemblyRegistration based class.
- Offline documentation is available in the store, it is distributed under the standard license.
- You can rename NeoAxis namespace, but then will lose the compatibility with other NeoAxis based products.
See also