summaryrefslogtreecommitdiffstats
path: root/TextureLoader/src/TextureUtilities.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TextureLoader/src/TextureUtilities.cpp')
-rw-r--r--TextureLoader/src/TextureUtilities.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/TextureLoader/src/TextureUtilities.cpp b/TextureLoader/src/TextureUtilities.cpp
index a25754e..90c5064 100644
--- a/TextureLoader/src/TextureUtilities.cpp
+++ b/TextureLoader/src/TextureUtilities.cpp
@@ -36,7 +36,7 @@ using namespace Diligent;
namespace Diligent
{
-void CreateImageFromFile( const Diligent::Char *FilePath,
+void CreateImageFromFile( const Char *FilePath,
Image **ppImage,
IDataBlob **ppDDSData)
{
@@ -74,8 +74,10 @@ void CreateImageFromFile( const Diligent::Char *FilePath,
else
LOG_ERROR_AND_THROW("Unsupported file format ", Extension);
- *ppImage = MakeNewRCObj<Image>()(pFileStream, ImgLoadInfo);
- (*ppImage)->AddRef();
+ RefCntAutoPtr<IDataBlob> pFileData(MakeNewRCObj<DataBlobImpl>()(0));
+ pFileStream->Read(pFileData);
+
+ Image::CreateFromDataBlob(pFileData, ImgLoadInfo, ppImage);
}
}
catch (std::runtime_error &err)
@@ -84,7 +86,7 @@ void CreateImageFromFile( const Diligent::Char *FilePath,
}
}
-void CreateTextureFromFile( const Diligent::Char *FilePath,
+void CreateTextureFromFile( const Char *FilePath,
const TextureLoadInfo& TexLoadInfo,
IRenderDevice *pDevice,
ITexture **ppTexture )