Search Results for

    Show / Hide Table of Contents

    Project Structure

    Project Structure

    Evergine projects need to be interconnected to manage different platforms or rendering systems, for example. This means that by default, an Evergine project has a specific structure.

    Folders / Projects

    When we create our Evergine application, it defines by default one Visual Studio Solution for every Project profile we create. It will also define the following folders:

    Project Folder

    Here is a description of this project structure:

    Folder Example Element Description
    [ProjectName].weproj NewProject.weproj This is the Evergine Project file. This file contains metadata information about the project profiles, packages, among other things.

    If you double-click this file, the project will open in Evergine Studio
    Content/ Content/ Contains all the Evergine assets of the project. Every texture, model, and scene of the project is saved in this folder.
    [ProjectName]/ NewProject/NewProject.csproj Contains [ProjectName].csproj, the base project where the main Evergine code is usually defined (scenes, components, services, etc.).

    All code written in this project will be shared among all profile projects.
    [ProjectName].[Profile]/ NewProject.Windows/NewProject.Windows.csproj
    NewProject.Windows.sln
    There will be a folder for each application profile. It contains [ProjectName].[Profile].csproj, the Launcher application for that specific profile, carrying all its specific classes and logic. For example, the project for UWP.MixedReality will be a UWP Mixed Reality application. Additionally, a Visual Studio Solution is created for each profile.

    In these projects, we recommend placing all specific code for that profile.
    [ProjectName].Editor/ NewProject.Editor/NewProject.Editor.csproj Contains [ProjectName].Editor.csproj, the project that contains the Evergine Editor customizations. For example, showing a custom panel for a specific component is created here.

    Visual Studio Solutions

    As mentioned before, for each different Profile (Windows, UWP, Android, etc...) Evergine will create a Visual Studio solution.

    This solution will launch the Evergine application in the specified target. For example, a Windows profile will produce a .NET desktop application, while an Android profile solution will create a Xamarin.Android project for deployment on devices.

    Note

    Every profile solution may require different Visual Studio features ("Mobile development with .Net" for mobile devices, or "UWP development" for UWP profiles...). Follow Visual Studio's indications to install the missing features.

    Custom Structure

    Evergine supports custom structures in your application. It only requires that every specific profile solution can be built properly.

    In this article
    Back to top
    Generated by DocFX