private void BeginSpriteBatch(RenderStateVariables renderStates, Layer layer, BeginType beginType) { Matrix matrix = GetZoomAndMatrix(layer); SamplerState samplerState = GetSamplerState(renderStates); RasterizerState rasterizerState = GetRasterizerState(renderStates, layer); Rectangle scissorRectangle = new Rectangle(); if (rasterizerState.ScissorTestEnable) { scissorRectangle = layer.GetScissorRectangleFor(mCamera); } DepthStencilState depthStencilState = DepthStencilState.DepthRead; if (beginType == BeginType.Begin) { mSpriteBatch.Begin(SpriteSortMode.Immediate, renderStates.BlendState, samplerState, depthStencilState, rasterizerState, null, matrix, scissorRectangle); } else { mSpriteBatch.Push(SpriteSortMode.Immediate, renderStates.BlendState, samplerState, depthStencilState, rasterizerState, null, matrix, scissorRectangle); } mDrawCallsPerFrame++; }
public void Begin() { mSpriteBatch.Begin(); }