removed codes of ColorFormat, used ColorFormat.h

This commit is contained in:
HuYingzhuo(hugo/hyzboy) 2023-02-07 23:03:54 +08:00
parent 19f2a18e9c
commit 6b08c54c54
2 changed files with 2 additions and 88 deletions

View File

@ -1,6 +1,7 @@
#include"TextureFileCreater.h"
#include"ILImage.h"
#include<hgl/log/LogInfo.h>
#include<hgl/color/ColorFormat.h>
class TextureFileCreaterRGB:public TextureFileCreater
{
@ -40,38 +41,6 @@ public:
return image->ConvertToRGB(type);
}
void RGB8toRGB565(uint16 *target,uint8 *src,uint size)
{
for(uint i=0;i<size;i++)
{
*target=((src[0]<<8)&0xF800)
|((src[1]<<3)&0x7E0)
| (src[2]>>3);
++target;
src+=3;
}
}
// Bit depth Sign bit present Exponent bits Mantissa bits
// 32 Yes 8 23
// 16 Yes 5 10
// 11 No 5 6
// 10 No 5 5
void RGB16FtoB10GR11UF(uint32 *target,uint16 *src,uint size)
{
for(uint i=0;i<size;i++)
{
*target=((src[2]&0x7FE0)<<17)
|((src[1]&0x7FF0)<<7)
| (src[0]&0x7FF0)>>4;
++target;
src+=3;
}
}
public:
uint32 Write() override

View File

@ -1,6 +1,7 @@
#include"TextureFileCreater.h"
#include"ILImage.h"
#include<hgl/log/LogInfo.h>
#include<hgl/color/ColorFormat.h>
class TextureFileCreaterRGBA:public TextureFileCreater
{
@ -48,62 +49,6 @@ public:
return image->ConvertToRGBA(type);
}
void RGBA8toBGRA4(uint16 *target,uint8 *src,uint size)
{
for(uint i=0;i<size;i++)
{
*target=((src[2]<<8)&0xF000)
|((src[1]<<4)&0xF00)
|((src[0] )&0xF0)
| (src[3]>>4);
++target;
src+=4;
}
}
void RGBA8toRGBA4(uint16 *target,uint8 *src,uint size)
{
for(uint i=0;i<size;i++)
{
*target=((src[0]<<8)&0xF000)
|((src[1]<<4)&0xF00)
|((src[2] )&0xF0)
| (src[3]>>4);
++target;
src+=4;
}
}
void RGBA8toA1RGB5(uint16 *target,uint8 *src,uint size)
{
for(uint i=0;i<size;i++)
{
*target=((src[3]<<8)&0x8000)
|((src[0]<<7)&0x7C00)
|((src[1]<<2)&0x3E0)
| (src[2]>>3);
++target;
src+=4;
}
}
void RGBA16toA2BGR10(uint32 *target,uint16 *src,uint size)
{
for(uint i=0;i<size;i++)
{
*target=((src[3]<<16)&0xC0000000)
|((src[2]<<14)&0x3FF00000)
|((src[1]<< 4)&0xFFC00)
| (src[0]>> 6);
++target;
src+=4;
}
}
public:
uint32 Write() override