Они используют значение layerDepth, которое передается вызову рисования спрайта. Значение 0 - переднее, значение 1 - заднее, и все между этими значениями.
Все режимы сортировки в XNA меняются, когда и как отображаются спрайты. FrontToBack и BackToFront такие же, как и в режиме Deferred, что означает, что спрайты только отображаются при вызове SpriteBatch.End (). Если вы используете FrontToBack или BackToFront, то при вызове End все спрайты упорядочиваются на основе их layerDepth, где в FrontToBack сначала отображаются значения, близкие к 0, и наоборот для BackToFront. Подразумевается, что, например, в BackToFront спрайты сзади (или с layerDepths, ближайшим к 1) будут отрисовываться первыми и, следовательно, появляться под спрайтами ближе к фронту (значения ближе к 0).
Так как он выполняет сортировку за вас, эти режимы сортировки немного медленнее, чем другие режимы.