Bomberman-OverlordEngine-x64 / BombermanGame / Materials / DiffuseAnimatedMaterial.h
DiffuseAnimatedMaterial.h
Raw
#pragma once

class DiffuseAnimatedMaterial final : public Material<DiffuseAnimatedMaterial>
{
public:
	DiffuseAnimatedMaterial();
	~DiffuseAnimatedMaterial() override = default;

	DiffuseAnimatedMaterial(const DiffuseAnimatedMaterial& other) = delete;
	DiffuseAnimatedMaterial(DiffuseAnimatedMaterial&& other) noexcept = delete;
	DiffuseAnimatedMaterial& operator=(const DiffuseAnimatedMaterial& other) = delete;
	DiffuseAnimatedMaterial& operator=(DiffuseAnimatedMaterial&& other) noexcept = delete;

	void SetDiffuseTexture(const std::wstring& assetFile);

protected:
	void InitializeEffectVariables() override;
	void OnUpdateModelVariables(const SceneContext&, const ModelComponent*) const override;

private:
	TextureData* m_pDiffuseTexture{};
};