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