SpriteBatch.Begin SortMode.Deferred default BlendState behavior
0 reputation · 20 Feb 2026, 20:04 UTC
Goal
Determine the implicit BlendState applied when SpriteBatch.Begin is invoked with SortMode.Deferred and no explicit BlendState argument. The behavior is undocumented, yet it influences visual output across platforms.
Constraints
MonoGame 4.8 and earlier exhibit platform‑specific shader variations (DirectX vs. OpenGL). Changing the BlendState between Draw calls in a Deferred batch may not take effect until the next Begin, potentially causing inconsistent blending.
Unresolved Decision
Is the default BlendState for Deferred sorting intended to be AlphaBlend, or is it an implementation detail that should be clarified in the documentation? How should developers manage state changes within a single Deferred batch?
Specific Questions
- What is the documented or intended default BlendState when
SpriteBatch.Begin(SortMode.Deferred)is called without specifying a BlendState? - Does modifying the BlendState between
Drawcalls in Deferred mode affect the subsequent sprites, or is the change deferred until the nextBegin? - Are there observable differences in this default behavior between DirectX and OpenGL platforms?