71 lines
2.7 KiB
C++
71 lines
2.7 KiB
C++
#pragma once
|
|
|
|
/***********************************************************************************/
|
|
/** \file Renderpipe.h
|
|
** \brief Header File zur Klasse Renderpipe
|
|
*************************************************************************************
|
|
** Autor: Christian Roesch
|
|
*************************************************************************************
|
|
** _tut nichts_
|
|
**
|
|
*//*********************************************************************************/
|
|
|
|
#ifndef _Renderpipe_H
|
|
#define _Renderpipe_H
|
|
|
|
// includes
|
|
#include <d3dx9.h>
|
|
|
|
#include <cassert>
|
|
|
|
// Klassen-Deklaration
|
|
extern IDirect3DDevice9* g_d3d_device;
|
|
|
|
/***********************************************************************************/
|
|
/** \brief Renderpipe _tut nichts_
|
|
*************************************************************************************
|
|
** Genau genommen _tut dies nichts_
|
|
**
|
|
*//*********************************************************************************/
|
|
|
|
class Renderpipe
|
|
{
|
|
public:
|
|
static void PrepareRenderTargets(UINT nScreenX, UINT nScreenY, UINT nShadowXY, UINT nEnvXY, UINT nEnvBlurXY,
|
|
D3DMULTISAMPLE_TYPE multiSampleType);
|
|
|
|
static void PrepareDefaultRenderStates(RenderTargetSurfaceIndices colorSurface = RTS_COLOR_MS,
|
|
RenderTargetSurfaceIndices depthSurface = RTS_DEFAULT_DS,
|
|
RenderTargetIndices linearDepthTexture = RT_DEPTH);
|
|
static void PrepareShadowRenderStates();
|
|
static void PreparePreRenderStates(RenderTargetSurfaceIndices colorSurface = RTS_DEPTH_MS,
|
|
RenderTargetSurfaceIndices depthSurface = RTS_DEFAULT_DS);
|
|
static void PrepareFullScreenQuadRenderStates(RenderTargetIndices linearDepthTexture = RT_DEPTH,
|
|
RenderTargetIndices colorTexture = RT_COLOR);
|
|
|
|
static void PrepareWithoutPostProcessing(RenderTargetSurfaceIndices colorSurface = RTS_COLOR_MS,
|
|
RenderTargetSurfaceIndices depthSurface = RTS_DEFAULT_DS);
|
|
|
|
static void SimpleRenderPass();
|
|
static void FullRenderPass();
|
|
static void CubeRenderPass();
|
|
static void CubeBlurPass();
|
|
static void RenderScene(const D3DXMATRIX &mView, const D3DXMATRIX &mProj,
|
|
const D3DXVECTOR3 &vCamPos, const D3DXVECTOR3 &vCamDir,
|
|
RenderTargetSurfaceIndices colorSurfaceMS, RenderTargetSurfaceIndices colorSurface,
|
|
RenderTargetSurfaceIndices linearDepthSurfaceMS, RenderTargetSurfaceIndices linearDepthSurface,
|
|
RenderTargetSurfaceIndices depthSurface, RenderTargetIndices linearDepthTexture);
|
|
static void RenderPostProcessing(bool bSubmerged, bool bOcean, bool bSSAO);
|
|
static void RenderReflection();
|
|
|
|
};
|
|
|
|
#endif//_Renderpipe_H
|
|
|
|
class Renderpipe;
|
|
|
|
|
|
/************************************************************************************
|
|
** Ende der Datei: Renderpipe.h
|
|
************************************************************************************/
|