light/modules/renderer/public/dx/vertex_layout.hpp
light7734 cd886aa8c9
Some checks reported errors
continuous-integration/drone/push Build was killed
refactor: flatten directory structure
2025-07-20 04:46:15 +03:30

35 lines
610 B
C++

#pragma once
#include <d3d11.h>
#include <renderer/vertex_layout.hpp>
#include <wrl.h>
namespace lt {
class Shader;
class dxSharedContext;
class dxVertexLayout: public VertexLayout
{
public:
dxVertexLayout(
Ref<Shader> shader,
const std::vector<std::pair<std::string, VertexElementType>> &elements,
Ref<dxSharedContext> sharedContext
);
~dxVertexLayout();
void bind() override;
void un_bind() override;
private:
DXGI_FORMAT get_dxgi_format(VertexElementType type);
Ref<dxSharedContext> m_context;
Microsoft::WRL::ComPtr<ID3D11InputLayout> m_input_layout;
};
} // namespace lt