convert all DNA to uint8_t
This commit is contained in:
parent
4d3474bc18
commit
8066ba5103
@ -18,7 +18,7 @@ private:
|
|||||||
void drawStars();
|
void drawStars();
|
||||||
void drawSun();
|
void drawSun();
|
||||||
void drawMounten(size_t mountenSegments, int min, int max, Color color, float scale);
|
void drawMounten(size_t mountenSegments, int min, int max, Color color, float scale);
|
||||||
|
int getColorSet();
|
||||||
Dna *m_dna;
|
Dna *m_dna;
|
||||||
|
|
||||||
uint128 mountenSeed;
|
uint128 mountenSeed;
|
||||||
|
@ -50,9 +50,11 @@ struct Branch
|
|||||||
|
|
||||||
struct Dna
|
struct Dna
|
||||||
{
|
{
|
||||||
Moon moon;
|
uint8_t moonX;
|
||||||
int colorSet;
|
uint8_t moonY;
|
||||||
int time;
|
uint8_t moonSize;
|
||||||
|
uint8_t colorSet;
|
||||||
|
|
||||||
uint128 mountenSeed;
|
uint128 mountenSeed;
|
||||||
uint128 starSeed;
|
uint128 starSeed;
|
||||||
uint128 branchSeed;
|
uint128 branchSeed;
|
||||||
|
@ -28,10 +28,11 @@ void BackGround::draw(Dna *dna)
|
|||||||
m_dna = dna;
|
m_dna = dna;
|
||||||
mountenSeed = dna->mountenSeed;
|
mountenSeed = dna->mountenSeed;
|
||||||
starSeed = dna->starSeed;
|
starSeed = dna->starSeed;
|
||||||
|
int time = std::floor(Remap(m_dna->moonY / 255.0f, 0, 1, 4, 0));
|
||||||
|
int colorSet = getColorSet();
|
||||||
|
BackGroundColors::setColor(colorSet, time);
|
||||||
|
|
||||||
BackGroundColors::setColor(m_dna->colorSet, m_dna->time);
|
if (colorSet == 3)
|
||||||
|
|
||||||
if (m_dna->colorSet == 3)
|
|
||||||
{
|
{
|
||||||
ClearBackground(BackGroundColors::backGroundColor);
|
ClearBackground(BackGroundColors::backGroundColor);
|
||||||
drawStars();
|
drawStars();
|
||||||
@ -89,21 +90,21 @@ void BackGround::drawStars()
|
|||||||
|
|
||||||
void BackGround::drawSun()
|
void BackGround::drawSun()
|
||||||
{
|
{
|
||||||
int r = ((m_dna->moon.y * (maxSizeOfMoon - minSizeOfMoon)) + minSizeOfMoon) * canvasSize;
|
int r = ((m_dna->moonY / 255.0f * (maxSizeOfMoon - minSizeOfMoon)) + minSizeOfMoon) * canvasSize;
|
||||||
int xpos = Lerp(canvasSize * moonXOffset, canvasSize - canvasSize * moonXOffset, m_dna->moon.x);
|
int xpos = Lerp(canvasSize * moonXOffset, canvasSize - canvasSize * moonXOffset, m_dna->moonX / 255.0f);
|
||||||
int ypos = Lerp(canvasSize * moonXOffset, maxYPosOfMoon * canvasSize, m_dna->moon.y);
|
int ypos = Lerp(canvasSize * moonXOffset, maxYPosOfMoon * canvasSize, m_dna->moonY / 255.0f);
|
||||||
|
|
||||||
if (m_dna->colorSet == 3)
|
if (getColorSet() == 3)
|
||||||
{
|
{
|
||||||
Circle::setColor(BackGroundColors::moonColor);
|
Circle::setColor(BackGroundColors::moonColor);
|
||||||
r = ((m_dna->moon.size * (maxSizeOfMoon - minSizeOfMoon)) + minSizeOfMoon) * canvasSize;
|
r = (((m_dna->moonSize / 255.0f) * (maxSizeOfMoon - minSizeOfMoon)) + minSizeOfMoon) * canvasSize;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Color color = {0};
|
Color color = {0};
|
||||||
color.r = 255;
|
color.r = 255;
|
||||||
color.g = std::lerp(200, 50, m_dna->moon.y);
|
color.g = std::lerp(200, 50, m_dna->moonY / 255.0f);
|
||||||
color.b = std::lerp(50, 0, m_dna->moon.y);
|
color.b = std::lerp(50, 0, m_dna->moonY / 255.0f);
|
||||||
color.a = 255;
|
color.a = 255;
|
||||||
|
|
||||||
Circle::setColor(color);
|
Circle::setColor(color);
|
||||||
@ -164,4 +165,16 @@ void BackGround::drawMounten(size_t mountenSegments, int min, int max, Color col
|
|||||||
}
|
}
|
||||||
rlEnd();
|
rlEnd();
|
||||||
rlSetTexture(0);
|
rlSetTexture(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
int BackGround::getColorSet()
|
||||||
|
{
|
||||||
|
uint8_t colorSet = m_dna->colorSet;
|
||||||
|
if (colorSet < 64)
|
||||||
|
return 0;
|
||||||
|
if (colorSet < 128)
|
||||||
|
return 1;
|
||||||
|
if (colorSet < 192)
|
||||||
|
return 2;
|
||||||
|
return 3;
|
||||||
}
|
}
|
@ -7,10 +7,10 @@
|
|||||||
|
|
||||||
void newDna(Dna &dna)
|
void newDna(Dna &dna)
|
||||||
{
|
{
|
||||||
TraceLog(LOG_INFO, "SIZE OF DNA:%d", sizeof(dna));
|
dna.moonX = mrand::getValue(0, 254);
|
||||||
dna.moon = {mrand::getFloat(), mrand::getFloat(), mrand::getFloat()};
|
dna.moonY = mrand::getValue(0, 254);
|
||||||
dna.colorSet = mrand::getValue(0, 3);
|
dna.moonSize = mrand::getValue(0, 254);
|
||||||
dna.time = std::floor(Remap(dna.moon.y, 0, 1, 4, 0));
|
dna.colorSet = mrand::getValue(0, 254);
|
||||||
|
|
||||||
dna.mountenSeed.a = mrand::getInt();
|
dna.mountenSeed.a = mrand::getInt();
|
||||||
dna.mountenSeed.b = mrand::getInt();
|
dna.mountenSeed.b = mrand::getInt();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user