重构材质系统
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
#pragma once
|
||||
|
||||
#include "dvc_config.h"
|
||||
#include "shader/dvc_shader_interface.h"
|
||||
|
||||
class ClassicFragementShader_Phong : public davinci::PixelShaderInterface
|
||||
{
|
||||
public:
|
||||
virtual const char* getName(void) const;
|
||||
|
||||
virtual void begin(const davinci::RenderPipe* pipe, davinci::MaterialConstPtr material);
|
||||
|
||||
virtual void process(const davinci::VertexDesc& veretexDesc, const float32_t* pixelData,
|
||||
davinci::fVector4& color);
|
||||
virtual void end();
|
||||
private:
|
||||
const davinci::RenderPipe* m_pipe = nullptr;
|
||||
davinci::fVector4 m_materialColor = davinci::fVector4::WHITE;
|
||||
float32_t m_specularShininess = 64.0f;
|
||||
float32_t m_specularStrength = 5.0f;
|
||||
|
||||
davinci::fVector3 m_ambientLightColor = davinci::fVector3(0.2f, 0.2f, 0.2f);
|
||||
davinci::fVector3 m_light0Position = davinci::fVector3::ZERO;
|
||||
davinci::fVector3 m_light0Color = davinci::fVector3::WHITE;
|
||||
|
||||
davinci::fVector3 m_cameraPosition = davinci::fVector3::ZERO;
|
||||
};
|
||||
Reference in New Issue
Block a user