CmD3D11RenderStateManager.cpp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #include "CmD3D11RenderStateManager.h"
  2. #include "CmD3D11SamplerState.h"
  3. #include "CmD3D11DepthStencilState.h"
  4. #include "CmD3D11RasterizerState.h"
  5. #include "CmD3D11BlendState.h"
  6. namespace CamelotEngine
  7. {
  8. SamplerStatePtr D3D11RenderStateManager::createSamplerState(const SAMPLER_STATE_DESC& desc) const
  9. {
  10. D3D11SamplerStatePtr samplerState = D3D11SamplerStatePtr(new D3D11SamplerState());
  11. samplerState->initialize(desc);
  12. return samplerState;
  13. }
  14. DepthStencilStatePtr D3D11RenderStateManager::createDepthStencilState(const DEPTH_STENCIL_STATE_DESC& desc) const
  15. {
  16. D3D11DepthStencilStatePtr depthStencilState = D3D11DepthStencilStatePtr(new D3D11DepthStencilState());
  17. depthStencilState->initialize(desc);
  18. return depthStencilState;
  19. }
  20. RasterizerStatePtr D3D11RenderStateManager::createRasterizerState(const RASTERIZER_STATE_DESC& desc) const
  21. {
  22. D3D11RasterizerStatePtr rasterizerState = D3D11RasterizerStatePtr(new D3D11RasterizerState());
  23. rasterizerState->initialize(desc);
  24. return rasterizerState;
  25. }
  26. BlendStatePtr D3D11RenderStateManager::createBlendState(const BLEND_STATE_DESC& desc) const
  27. {
  28. D3D11BlendStatePtr blendState = D3D11BlendStatePtr(new D3D11BlendState());
  29. blendState->initialize(desc);
  30. return blendState;
  31. }
  32. SamplerStatePtr D3D11RenderStateManager::createEmptySamplerState() const
  33. {
  34. return D3D11SamplerStatePtr(new D3D11SamplerState());
  35. }
  36. DepthStencilStatePtr D3D11RenderStateManager::createEmptyDepthStencilState() const
  37. {
  38. return D3D11DepthStencilStatePtr(new D3D11DepthStencilState());
  39. }
  40. RasterizerStatePtr D3D11RenderStateManager::createEmptyRasterizerState() const
  41. {
  42. return D3D11RasterizerStatePtr(new D3D11RasterizerState());
  43. }
  44. BlendStatePtr D3D11RenderStateManager::createEmptyBlendState() const
  45. {
  46. return D3D11BlendStatePtr(new D3D11BlendState());
  47. }
  48. }