//============================================================================================================================== bool MaterialShader::Initialize() { ConstantBuffer<ZShadeSandboxLighting::cbMaterialShadingBuffer> shadingCB(m_pD3DSystem); shadingCB.Initialize(PAD16(sizeof(ZShadeSandboxLighting::cbMaterialShadingBuffer))); m_pShadingCB = shadingCB.Buffer(); ConstantBuffer<cbMatrixBufferLight> matrixCB(m_pD3DSystem); matrixCB.Initialize(PAD16(sizeof(cbMatrixBufferLight))); m_pMatrixCB = matrixCB.Buffer(); ConstantBuffer<ZShadeSandboxLighting::cbLightBuffer> lightCB(m_pD3DSystem); lightCB.Initialize(PAD16(sizeof(ZShadeSandboxLighting::cbLightBuffer))); m_pLightCB = lightCB.Buffer(); ConstantBuffer<ZShadeSandboxLighting::cbSunLightBuffer> sunCB(m_pD3DSystem); sunCB.Initialize(PAD16(sizeof(ZShadeSandboxLighting::cbSunLightBuffer))); m_pSunCB = sunCB.Buffer(); ClearInputLayout(); LoadPixelShader("MaterialShaderPS"); LoadPixelShader("MaterialShaderWireframePS"); SetInputLayoutDesc("MaterialShader", ZShadeSandboxMesh::VertexLayout::mesh_layout_pos_normal_tex, 3); LoadVertexShader("MaterialShaderVS"); AssignVertexShaderLayout("MaterialShader"); SetInputLayoutDesc("MaterialShaderInstance", ZShadeSandboxMesh::VertexLayout::mesh_layout_pos_normal_tex_instance, 4); LoadVertexShader("MaterialShaderInstanceVS"); AssignVertexShaderLayout("MaterialShaderInstance"); return true; }
//============================================================================================================================== bool DeferredShader::Initialize() { ConstantBuffer<cbPackBuffer> packCB(m_pD3DSystem); packCB.Initialize(PAD16(sizeof(cbPackBuffer))); m_pPackCB = packCB.Buffer(); ConstantBuffer<cbMatrixBuffer> matrixCB(m_pD3DSystem); matrixCB.Initialize(PAD16(sizeof(cbMatrixBuffer))); m_pMatrixCB = matrixCB.Buffer(); ConstantBuffer<cbMatrixBuffer2> matrix2CB(m_pD3DSystem); matrix2CB.Initialize(PAD16(sizeof(cbMatrixBuffer2))); m_pMatrix2CB = matrix2CB.Buffer(); ClearInputLayout(); SetInputLayoutDesc("DeferredShader", ZShadeSandboxMesh::VertexLayout::mesh_layout_pos_normal_tex, 3); LoadVertexShader("DeferredShaderVS"); LoadPixelShader("DeferredShaderPS"); LoadPixelShader("DeferredShaderWireframePS"); AssignVertexShaderLayout("DeferredShader"); return true; }
//============================================================================================================================== bool DebugGBufferDeferredShader::Initialize() { ConstantBuffer<cbInvMatrixBuffer> matrixCB(m_pD3DSystem); matrixCB.Initialize(PAD16(sizeof(cbInvMatrixBuffer))); m_pMatrixCB = matrixCB.Buffer(); LoadVertexShader("DebugGBufferDeferredVS"); LoadPixelShader("DebugGBufferDeferredPS"); LoadPixelShader("DebugGBufferDepthDeferredPS"); LoadPixelShader("DebugGBufferDeferredWireframePS"); return true; }