#pragma once #include #include #include namespace lt { class dxSharedContext; class dxTexture: public Texture { public: dxTexture( unsigned int width, unsigned int height, unsigned int components, unsigned char *pixels, Ref sharedContext, const std::string &filePath ); void bind(unsigned int slot = 0u) override; private: Ref m_context; Microsoft::WRL::ComPtr m_texture_2d; Microsoft::WRL::ComPtr m_shader_resource_view; Microsoft::WRL::ComPtr m_sampler_state; }; } // namespace lt