Search Results for

    Show / Hide Table of Contents

    Update from Evergine 2024.10.24 to Evergine 2025.3.18

    Since Evergine 2024.10.24, there are some changes that should be applied to already existing projects that want to be upgraded to this version.

    Steps to migrate to the new version:

    • Update your Evergine version using Evergine Studio.
    • Review the list of breaking changes and apply the necessary modifications to your code.

    List of changes

    Bind RenderManager

    In this version, the RenderManager exposed by the Drawable class and the list of managers in a scene is now a BaseRenderManager. This means that some features, such as LineBatch3D, are no longer directly accessible. If you are using them, you need to explicitly bind the specific instance of RenderManager.

    Before:

    namespace Evergine.MRTK.Demo.Drawables
    {
        public class BoxColliderRenderer : Drawable3D
        {
            public override void Draw(DrawContext drawContext)
            {
              ...
              this.RenderManager.LineBatch3D.DrawBoundingOrientedBox(box, Color.White);
            }
        }
    }
    

    After:

    namespace Evergine.MRTK.Demo.Drawables
    {
        public class BoxColliderRenderer : Drawable3D
        {
            [BindSceneManager]
            private RenderManager renderManager = null;
    
            public override void Draw(DrawContext drawContext)
            {
              ...
              this.renderManager.LineBatch3D.DrawBoundingOrientedBox(box, Color.White);
            }
        }
    }
    

    DX compiler updated

    The DX Compiler used by HLSLEverywhere has been updated, and HLSL 2021 is now set as the default version. You should review your shaders to ensure they are compatible with this version. A common change involves the ternary operator. While the new select function can be used, if you require multiplatform support, you can update your code as follows:

    Before:

          ...
    	    n.xy += n.xy >= 0.0 ? -t : t;
          ...
    

    After:

          ...
    	    n.xy += float2(n.x >= 0.0 ? -t : t, n.y >= 0.0 ? -t : t);
          ...
    
    In this article
    Back to top
    Generated by DocFX