Files
directx-plane-game/Graphics2/MeshNode.cpp
iDunnoDev f6bba67897 Added follow cam
Added "Controlled" mesh classes
Added Global Lighting Class
Added Gamepad controls
Split terrain nodes into Height and Perlin classes
Fixed Splitmesh node stuff
2022-05-09 17:50:22 +01:00

29 lines
897 B
C++

#include "MeshNode.h"
bool MeshNode::Initialise()
{
_resourceManager = DirectXFramework::GetDXFramework()->GetResourceManager();
_renderer = dynamic_pointer_cast<MeshRenderer>(_resourceManager->GetRenderer(L"PNT"));
_mesh = _resourceManager->GetMesh(_modelName);
if (_mesh == nullptr)
{
return false;
}
return _renderer->Initialise();
}
void MeshNode::Shutdown()
{
_resourceManager->ReleaseMesh(_modelName);
}
void MeshNode::Render()
{
_renderer->SetMesh(_mesh);
_renderer->SetWorldTransformation(XMLoadFloat4x4(&_combinedWorldTransformation));
_renderer->SetAmbientLight(DirectXFramework::GetDXFramework()->GetGlobalLighting()->GetAmbientLight());
_renderer->SetDirectionalLight(DirectXFramework::GetDXFramework()->GetGlobalLighting()->GetDirectionalLightDirection(), DirectXFramework::GetDXFramework()->GetGlobalLighting()->GetDirectionalLightColor());
_renderer->Render();
}