#include #include #ifdef LIGHT_PLATFORM_WINDOWS #include #include #endif #include namespace Light { Ref Texture::create( unsigned int width, unsigned int height, unsigned int components, unsigned char *pixels, Ref sharedContext, const std::string &filePath ) { switch (GraphicsContext::get_graphics_api()) { case GraphicsAPI::OpenGL: return create_ref(width, height, components, pixels, filePath); case GraphicsAPI::DirectX: lt_win(return create_ref( width, height, components, pixels, std::static_pointer_cast(sharedContext), filePath );) default: lt_assert( false, "Invalid/unsupported 'GraphicsAPI' {}", static_cast(GraphicsContext::get_graphics_api()) ); return nullptr; } } Texture::Texture(const std::string &filePath): m_file_path(filePath) { } } // namespace Light