From 64d9d7b3eb7cece81da8b2cb56eb0f50d87a5964 Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 1 Mar 2019 08:50:34 +0800 Subject: *misc --- Source/Asura.Engine/Graphics/Image.cpp | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) (limited to 'Source/Asura.Engine/Graphics/Image.cpp') diff --git a/Source/Asura.Engine/Graphics/Image.cpp b/Source/Asura.Engine/Graphics/Image.cpp index e19d57f..8287d76 100644 --- a/Source/Asura.Engine/Graphics/Image.cpp +++ b/Source/Asura.Engine/Graphics/Image.cpp @@ -1,4 +1,5 @@ #include "Image.h" +#include "GL.h" namespace AsuraEngine { @@ -7,30 +8,25 @@ namespace AsuraEngine Image::Image() : Texture() - , mPixels(nullptr) - , mWidth(0) - , mHeight(0) { } Image::~Image() { - delete mPixels; } - bool Image::Load(const void* data, size_t size) + //创建\更新纹理像素信息 + bool Image::Load(const ImageData* data) { - - } - - void Image::Render(int x, int y, int sx, int sy, int ox, int oy, int r) - { - - } - - void Image::Render(const Math::Rect& quad, int x, int y, int sx, int sy, int ox, int oy, int r) - { - + if (!data) + return false; + if (mImageData) + delete mImageData; + mImageData = data; + glBindTexture(GL_TEXTURE_2D, mTextureHandle); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, data->width, data->height, 0, GL_RGBA, GL_UNSIGNED_BYTE, data->pixels); + glBindTexture(GL_TEXTURE_2D, 0); + return true; } } -- cgit v1.1-26-g67d0