Skip to content

v3.0.0

Choose a tag to compare

@github-actions github-actions released this 18 Jul 20:37

Added

  • Notice: Vulkan on windows might not render as expected. It is recommended to use DirectX either 11 or 12 rather than Vulkan there. Other platforms seem to be working as expected.

  • MonoGame: pre-compiled shader variants for DirectX 12 (.dx12.mgfx) and Vulkan (.vk.mgfx) now ship alongside the existing DirectX 11 and OpenGL variants. ShaderLoader routes to the correct variant based on PlatformInfo.GraphicsBackend, so games running on the new native backends load matching shaders automatically. All five effects (LitSprite, LitSpriteNormalMap, Instanced, ForwardPbr, DepthShadow) compile for all four profiles.

Changed

  • MonoGame — Breaking: Mibo.MonoGame now builds against MonoGame 3.8.5 (MonoGame.Framework.Native 3.8.5, up from 3.8.4.1). Consumers must update their MonoGame host/runtime packages to 3.8.5 to match; mixing 3.8.4.1 host packages with this version fails to load the backend types at runtime.
  • Templates: the MonoGame templates (mibo-mg-2d/mibo-mg-3d) move to MonoGame 3.8.5 and now ship three thin clients: DesktopGL (OpenGL, unchanged), DesktopVK (Vulkan, new), and WindowsDX12 (DirectX 12, replacing the DirectX 11 WindowsDX client). The mgcb dotnet tools pinned in the templates move to 3.8.5 to match. Raylib templates are unchanged.

Fixed

  • MonoGame 3D: instanced draws no longer render garbage or flicker on the DirectX 12 backend. The per-instance world-matrix buffer is now a dynamic vertex buffer, so each instanced draw keeps its own matrices; previously, staging several instance groups per frame could make every draw read the last group's data, showing terrain chunks and repeated models in the wrong place or not at all depending on the camera angle.