Files
davinci2/test/shader/test_vertex_shader.h
T
2025-06-11 22:45:11 +08:00

34 lines
953 B
C++

#pragma once
#include "dvc_config.h"
#include "dvc_pre_declare.h"
#include "shader/dvc_shader_interface.h"
#include "device/dvc_vertex_desc.h"
class TestVertexShader : public davinci::VertexShaderInterface
{
public:
virtual const char* getName(void) const;
virtual const davinci::VertexDesc& getOutputVertexDesc() const;
virtual size_t getOutputVertexByteSize(void) const;
virtual void prepare(const davinci::UniformBuffer* uniformBuffer, SetInputAttributeFunc setInputAttributeFunc);
virtual void process(size_t index, void* outputVertex, davinci::fVector3& vertexWorldPos);
private:
const davinci::UniformBuffer* m_uniformBuffer;
davinci::DeviceBufferAccessorConstPtr m_POSITION;
davinci::DeviceBufferAccessorConstPtr m_NORMAL;
davinci::DeviceBufferAccessorConstPtr m_TEXCOORD_0;
davinci::DeviceBufferAccessorConstPtr m_COLOR_0;
davinci::VertexDesc m_outputVertexDesc;
public:
TestVertexShader();
virtual ~TestVertexShader();
};