//CShadowMapShader - [2020-04-13 11:57:47]
#ifndef _CSHADOWMAPSHADER_H_
#define _CSHADOWMAPSHADER_H_

#include "common.h"
#include "CFTTUberShader.h"

/*
001D1278 CShadowMapShader::CShadowMapShader()
001D1284 CShadowMapShader::~CShadowMapShader()
001C6D60 CShadowMapShader::SetRemapClamp(CFTTVector32x4 const& pVector32x4)
001C6D8E CShadowMapShader::SetSlopeBiasCoeff(CFTTVector32 const& pVector32)
001C6D9A CShadowMapShader::SetLightDir(CFTTVector32 const& pVector32)
001D1288 CShadowMapShader::CreateMat(EShadowMapShader_DepthTexMode eMode)
*/

enum EShadowMapShader_DepthTexMode {
  EShadowMapShader_DepthTexMode_0,
  EShadowMapShader_DepthTexMode_1,
  EShadowMapShader_DepthTexMode_2,
  EShadowMapShader_DepthTexMode_3,
  EShadowMapShader_DepthTexMode_4,
  EShadowMapShader_DepthTexMode_5,
};

class CShadowMapShader : public CFTTUberShader {
public:
  CShadowMapShader();                                     //001D1278
  ~CShadowMapShader();                                    //001D1284
  void SetRemapClamp(CFTTVector32x4 const& pVector32x4);  //001C6D60
  void SetSlopeBiasCoeff(CFTTVector32 const& pVector32);  //001C6D8E
  void SetLightDir(CFTTVector32 const& pVector32);        //001C6D9A
  ushort CreateMat(EShadowMapShader_DepthTexMode eMode);  //001D1288

  static CShadowMapShader s_tInstance;
};

#endif  //_CSHADOWMAPSHADER_H_