#include "stdafx.h" #include "DiffuseOpacityMaterial.h" DiffuseOpacityMaterial::DiffuseOpacityMaterial() : Material(L"Effects/PosNormTex3D_Opacity.fx") {} void DiffuseOpacityMaterial::SetDiffuseTexture(const std::wstring& assetFile) { m_pDiffuseTexture = ContentManager::Load(assetFile); SetVariable_Texture(L"gDiffuseMap", m_pDiffuseTexture); } void DiffuseOpacityMaterial::SetOpacityTexture(const std::wstring& assetFile) { m_pOpacityTexture = ContentManager::Load(assetFile); SetVariable_Texture(L"gOpacityMap", m_pOpacityTexture); } TextureData* DiffuseOpacityMaterial::GetOpacityTexture() { return m_pOpacityTexture; } void DiffuseOpacityMaterial::InitializeEffectVariables() { } void DiffuseOpacityMaterial::OnUpdateModelVariables(const SceneContext& sceneContext, const ModelComponent*) const { //Update the Light Direction (retrieve the direction from the LightManager > sceneContext) XMFLOAT4 lightDir = sceneContext.pLights->GetDirectionalLight().direction; SetVariable_Vector(L"gLightDirection", XMFLOAT3{ lightDir.x, lightDir.y, lightDir.z }); }