mirror of
https://github.com/RetroDECK/ES-DE.git
synced 2024-11-25 23:55:38 +00:00
Slightly better color array function
Converting only once should be faster.
This commit is contained in:
parent
b187f05a16
commit
171ca9a657
|
@ -14,18 +14,22 @@ namespace Renderer {
|
|||
|
||||
void setColor4bArray(GLubyte* array, unsigned int color)
|
||||
{
|
||||
array[0] = (color & 0xff000000) / 0x1000000;
|
||||
array[1] = (color & 0x00ff0000) / 0x10000;
|
||||
array[2] = (color & 0x0000ff00) / 0x100;
|
||||
array[0] = (color & 0xff000000) >> 24;
|
||||
array[1] = (color & 0x00ff0000) >> 16;
|
||||
array[2] = (color & 0x0000ff00) >> 8;
|
||||
array[3] = (color & 0x000000ff);
|
||||
}
|
||||
|
||||
void buildGLColorArray(GLubyte* ptr, unsigned int color, unsigned int vertCount)
|
||||
{
|
||||
//convert color from ???? to RGBA?
|
||||
unsigned int colorRGBA;
|
||||
setColor4bArray((GLubyte *)&colorRGBA, color);
|
||||
//write color to unsigned int array
|
||||
GLuint * uiPtr = (GLuint *)ptr;
|
||||
for(unsigned int i = 0; i < vertCount; i++)
|
||||
{
|
||||
setColor4bArray(ptr, color);
|
||||
ptr += 4;
|
||||
uiPtr[i] = colorRGBA;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue