void Renderer::apply() { #ifdef DEBUG /*if (!wasReset){ CHG_WARNING("Warning: reset() not called before apply()"); } wasReset = false;*/ #endif if (selectedShader != DONTCARE) { changeShader(selectedShader); applyConstants(); } applyTextures(); applyImageBuffers(); applyObjectBuffers(); applyRWStructuredBuffers(); applySamplerStates(); changeVertexFormat(selectedVertexFormat); changeVertexBuffer(0, numVertexBufferUsed, selectedVertexBuffers, selectedOffsets); if (selectedIndexBuffer != DONTCARE) changeIndexBuffer(selectedIndexBuffer); if (selectedDepthState != DONTCARE) { changeDepthState(selectedDepthState, selectedStencilRef); } if (selectedBlendState != DONTCARE) { changeBlendState(selectedBlendState, selectedSampleMask); } if (selectedRasterizerState != DONTCARE) changeRasterizerState(selectedRasterizerState); }
void Renderer::apply(){ #ifdef DEBUG if (!wasReset){ outputDebugString("Warning: reset() not called before apply()"); } wasReset = false; #endif if (selectedShader != DONTCARE){ changeShader(selectedShader); applyConstants(); } /* for (uint i = 0; i < nImageUnits; i++){ if (selectedTextures[i] != DONTCARE) changeTexture(i, selectedTextures[i]); }*/ applyTextures(); /* for (uint i = 0; i < MAX_SAMPLERSTATE; i++){ if (selectedSamplerStates[i] != DONTCARE) changeSamplerState(i, selectedSamplerStates[i]); }*/ applySamplerStates(); changeVertexFormat(selectedVertexFormat); for (uint i = 0; i < MAX_VERTEXSTREAM; i++){ if (selectedVertexBuffers[i] != DONTCARE){ changeVertexBuffer(i, selectedVertexBuffers[i], selectedOffsets[i]); } } if (selectedIndexBuffer != DONTCARE) changeIndexBuffer(selectedIndexBuffer); if (selectedDepthState != DONTCARE){ changeDepthState(selectedDepthState, selectedStencilRef); } if (selectedBlendState != DONTCARE){ changeBlendState(selectedBlendState, selectedSampleMask); } if (selectedRasterizerState != DONTCARE) changeRasterizerState(selectedRasterizerState); // reset(); }