MCPcopy Create free account
hub / github.com/OGRECave/ogre-next / _setPipelineStateObject

Method _setPipelineStateObject

OgreMain/src/OgreRenderSystem.cpp:236–261  ·  view source on GitHub ↗

-----------------------------------------------------------------------

Source from the content-addressed store, hash-verified

234 }
235 //-----------------------------------------------------------------------
236 void RenderSystem::_setPipelineStateObject( const HlmsPso *pso )
237 {
238 assert( ( !pso || pso->rsData ) &&
239 "The PipelineStateObject must have been created via "
240 "RenderSystem::_hlmsPipelineStateObjectCreated!" );
241
242 // Disable previous state
243 mActiveVertexGpuProgramParameters.reset();
244 mActiveGeometryGpuProgramParameters.reset();
245 mActiveTessellationHullGpuProgramParameters.reset();
246 mActiveTessellationDomainGpuProgramParameters.reset();
247 mActiveFragmentGpuProgramParameters.reset();
248 mActiveComputeGpuProgramParameters.reset();
249
250 if( mVertexProgramBound && !mClipPlanes.empty() )
251 mClipPlanesDirty = true;
252
253 mVertexProgramBound = false;
254 mGeometryProgramBound = false;
255 mFragmentProgramBound = false;
256 mTessellationHullProgramBound = false;
257 mTessellationDomainProgramBound = false;
258 mComputeProgramBound = false;
259
260 // Derived class must set new state
261 }
262 //-----------------------------------------------------------------------
263 void RenderSystem::_setTextureUnitSettings( size_t texUnit, TextureUnitState &tl )
264 {

Callers 5

renderES2Method · 0.45
renderSingleObjectMethod · 0.45
execute_setPsoMethod · 0.45

Calls 2

resetMethod · 0.45
emptyMethod · 0.45

Tested by

no test coverage detected