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