diff options
Diffstat (limited to 'src/libjin/graphics/je_image.cpp')
-rw-r--r-- | src/libjin/graphics/je_image.cpp | 35 |
1 files changed, 17 insertions, 18 deletions
diff --git a/src/libjin/graphics/je_image.cpp b/src/libjin/graphics/je_image.cpp index 2d8ceae..285cef2 100644 --- a/src/libjin/graphics/je_image.cpp +++ b/src/libjin/graphics/je_image.cpp @@ -11,27 +11,26 @@ namespace JinEngine using namespace Filesystem; - Image* Image::createImage(const void* imgData, size_t size) - { - if (imgData == nullptr) - return nullptr; - int w, h; - void* data = stbi_load_from_memory((uint8*)imgData, size, &w, &h, NULL, STBI_rgb_alpha); - if (data == nullptr) - return nullptr; - Image* image = new Image(); - image->pixels = (Color*)data; - image->width = w; - image->height = h; - return image; - } - - Image* Image::createImage(const char* path) + Image::Image(const char* path) { - AssetDatabase* fs = AssetDatabase::get(); + AssetDatabase* fs = AssetDatabase::get(); Buffer buffer; fs->read(path, buffer); - return createImage(&buffer, buffer.size()); + Image(&buffer, buffer.size()); + } + + Image::Image(const void* imgData, size_t size) + { + if (imgData == nullptr) + return; + int w, h; + void* data = stbi_load_from_memory((uint8*)imgData, size, &w, &h, NULL, STBI_rgb_alpha); + if (data == nullptr) + return; + Image(); + pixels = (Color*)data; + width = w; + height = h; } Image::Image() |