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
This commit is contained in:
iDunnoDev
2022-05-09 17:50:22 +01:00
committed by iDunnoDev
parent bc906064e5
commit f6bba67897
58 changed files with 1743 additions and 351 deletions

View File

@ -7,15 +7,6 @@ struct Vertex
XMFLOAT2 TextureCoordinate;
};
struct CBUFFER
{
XMMATRIX CompleteTransformation;
XMMATRIX WorldTransformation;
XMVECTOR LightVector;
XMFLOAT4 LightColour;
XMFLOAT4 AmbientColour;
};
bool TexturedCubeNode::Initialise()
{
_device = DirectXFramework::GetDXFramework()->GetDevice();
@ -45,11 +36,11 @@ void TexturedCubeNode::Render()
// Draw the first cube
CBUFFER cBuffer;
cBuffer.CompleteTransformation = completeTransformation;
cBuffer.WorldTransformation = XMLoadFloat4x4(&_combinedWorldTransformation);
cBuffer.AmbientColour = XMFLOAT4(0.3f, 0.3f, 0.3f, 1.0f);
cBuffer.LightVector = XMVector4Normalize(XMVectorSet(0.0f, 1.0f, 1.0f, 0.0f));
cBuffer.LightColour = XMFLOAT4(1.0f, 1.0f, 1.0f, 1.0f);
cBuffer.completeTransformation = completeTransformation;
cBuffer.worldTransformation = XMLoadFloat4x4(&_combinedWorldTransformation);
cBuffer.ambientColor = XMFLOAT4(0.3f, 0.3f, 0.3f, 1.0f);
cBuffer.lightVector = XMVector4Normalize(XMVectorSet(0.0f, 1.0f, 1.0f, 0.0f));
cBuffer.lightColor = XMFLOAT4(1.0f, 1.0f, 1.0f, 1.0f);
// Update the constant buffer
_deviceContext->VSSetConstantBuffers(0, 1, _constantBuffer.GetAddressOf());
@ -170,7 +161,7 @@ void TexturedCubeNode::BuildShaders()
ComPtr<ID3DBlob> compilationMessages = nullptr;
//Compile vertex shader
HRESULT hr = D3DCompileFromFile(L"shader.hlsl",
HRESULT hr = D3DCompileFromFile(L"TexturedShaders.hlsl",
nullptr, D3D_COMPILE_STANDARD_FILE_INCLUDE,
"VS", "vs_5_0",
shaderCompileFlags, 0,
@ -188,7 +179,7 @@ void TexturedCubeNode::BuildShaders()
_deviceContext->VSSetShader(_vertexShader.Get(), 0, 0);
// Compile pixel shader
hr = D3DCompileFromFile(L"shader.hlsl",
hr = D3DCompileFromFile(L"TexturedShaders.hlsl",
nullptr, D3D_COMPILE_STANDARD_FILE_INCLUDE,
"PS", "ps_5_0",
shaderCompileFlags, 0,