2013-11-20 16:51:53 +01:00
|
|
|
#pragma once
|
|
|
|
|
2013-11-21 10:02:17 +01:00
|
|
|
#ifndef Preparations_h
|
|
|
|
#define Preparations_h
|
|
|
|
|
2013-11-20 16:51:53 +01:00
|
|
|
#include "..\..\Core\Core.h"
|
|
|
|
|
|
|
|
namespace Oyster
|
|
|
|
{
|
|
|
|
namespace Graphics
|
|
|
|
{
|
|
|
|
namespace Render
|
|
|
|
{
|
|
|
|
namespace Preparations
|
|
|
|
{
|
2013-11-21 10:02:17 +01:00
|
|
|
class Basic
|
2013-11-20 16:51:53 +01:00
|
|
|
{
|
|
|
|
public:
|
2013-11-21 09:43:53 +01:00
|
|
|
|
2013-11-21 10:02:17 +01:00
|
|
|
/// @brief Binds the backbuffer as a RenderTargetView with the default DepthStencil
|
|
|
|
//! Binds the backbuffer as a RenderTargetView with the default DepthStencil
|
2013-11-21 09:43:53 +01:00
|
|
|
|
|
|
|
static void BindBackBufferRTV();
|
2013-11-20 16:51:53 +01:00
|
|
|
/** @brief Binds the backbuffer as a RenderTargetView with the specified DepthStencil*/
|
2013-11-21 09:43:53 +01:00
|
|
|
static void BindBackBufferRTV(ID3D11DepthStencilView* depthStencil);
|
2013-11-20 16:51:53 +01:00
|
|
|
|
|
|
|
|
|
|
|
/** @brief Binds the backbuffer as a UnorderedAccessView*/
|
|
|
|
static void BindBackBufferUAV();
|
|
|
|
|
2013-11-21 10:02:17 +01:00
|
|
|
/** @brief Binds the specified RenderTargetViews with the default DepthStencil*/
|
2013-11-20 16:51:53 +01:00
|
|
|
static void BindRTV(ID3D11RenderTargetView* RTVs[], int size, bool UseDepthStencil = true);
|
|
|
|
/** @brief Binds the specified RenderTargetViews with the specified DepthStencil*/
|
2013-11-21 09:43:53 +01:00
|
|
|
static void BindRTV(ID3D11RenderTargetView* RTVs[], int size,ID3D11DepthStencilView* depthStencil);
|
2013-11-20 16:51:53 +01:00
|
|
|
|
|
|
|
/** @brief Binds the specified UnorderedAccessViews*/
|
|
|
|
static void BindUAV(ID3D11UnorderedAccessView* UAVs[], int size);
|
|
|
|
|
2013-11-21 10:02:17 +01:00
|
|
|
/** @brief Clear the BackBuffer and the default DepthStencil*/
|
2013-11-21 09:43:53 +01:00
|
|
|
static void ClearBackBuffer(Oyster::Math::Float4 Color);
|
2013-11-20 16:51:53 +01:00
|
|
|
|
|
|
|
/** @brief Clear the specified RenderTargetViews*/
|
|
|
|
static void ClearRTV(ID3D11RenderTargetView* RTVs[], int size,Oyster::Math::Float4 Color);
|
|
|
|
/** @brief Clear the specified DepthStencil*/
|
2013-11-21 09:43:53 +01:00
|
|
|
static void ClearDepthStencil(ID3D11DepthStencilView* depthStencil);
|
2013-11-20 16:51:53 +01:00
|
|
|
|
|
|
|
/** @brief Binds the default ViewPort*/
|
|
|
|
static void SetViewPort();
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2013-11-21 10:02:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|