DragonNest/Common/EternityEngine/EtMotionBlurFilter.cpp
Cussrro 47f7895977 Revert "修复编码问题"
This reverts commit 9e69c01767.
2024-12-21 10:04:04 +08:00

40 lines
1.1 KiB
C++

#include "StdAfx.h"
#include "EtMotionBlurFilter.h"
#include "EtBackBufferMng.h"
#include "EtMRTMng.h"
#ifdef _DEBUG
#define new new(_NORMAL_BLOCK,__FILE__,__LINE__)
#endif
#define DEFAULT_MOTION_BLUR_SCALE 0.01f
CEtMotionBlurFilter::CEtMotionBlurFilter()
{
m_fMotionBlurScale = 0.1f;
}
CEtMotionBlurFilter::~CEtMotionBlurFilter()
{
Clear();
}
void CEtMotionBlurFilter::Initialize()
{
Clear();
m_hMaterial = LoadResource( "MotionBlurFilter.fx", RT_SHADER );
if( !m_hMaterial ) return;
AddCustomParam( m_vecCustomParam, EPT_FLOAT_PTR, m_hMaterial, "g_fMotionBlurScale", &m_fMotionBlurScale );
int nTexIndex = GetEtBackBufferMng()->GetBackBufferIndex();
AddCustomParam( m_vecCustomParam, EPT_TEX, m_hMaterial, "g_BackBuffer", &nTexIndex );
nTexIndex = CEtMRTMng::GetInstance().GetVelocityTarget()->GetMyIndex();
AddCustomParam( m_vecCustomParam, EPT_TEX, m_hMaterial, "g_VelocityTex", &nTexIndex );
}
void CEtMotionBlurFilter::Render( float fElapsedTime )
{
m_fMotionBlurScale = 0.1666666f / fElapsedTime * DEFAULT_MOTION_BLUR_SCALE;
CEtPostProcessFilter::Render( fElapsedTime );
}