mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-02-08 05:50:07 -05:00
--Bug fixes
-Fix out of bounds crash in EmberGenome.
This commit is contained in:
parent
f84389d7a5
commit
264aa8c454
@ -846,8 +846,8 @@ public:
|
|||||||
//Scale the image so that the total number of pixels is ~10,000.
|
//Scale the image so that the total number of pixels is ~10,000.
|
||||||
pixTotal = ember.m_FinalRasW * ember.m_FinalRasH;
|
pixTotal = ember.m_FinalRasW * ember.m_FinalRasH;
|
||||||
scalar = std::sqrt(T(10000) / pixTotal);
|
scalar = std::sqrt(T(10000) / pixTotal);
|
||||||
adjustedEmber.m_FinalRasW = static_cast<size_t>(ember.m_FinalRasW * scalar);
|
adjustedEmber.m_FinalRasW = static_cast<size_t>(std::ceil(ember.m_FinalRasW * scalar));
|
||||||
adjustedEmber.m_FinalRasH = static_cast<size_t>(ember.m_FinalRasH * scalar);
|
adjustedEmber.m_FinalRasH = static_cast<size_t>(std::ceil(ember.m_FinalRasH * scalar));
|
||||||
adjustedEmber.m_PixelsPerUnit *= scalar;
|
adjustedEmber.m_PixelsPerUnit *= scalar;
|
||||||
adjustedEmber.m_TemporalSamples = 1;
|
adjustedEmber.m_TemporalSamples = 1;
|
||||||
m_Renderer->SetEmber(adjustedEmber);
|
m_Renderer->SetEmber(adjustedEmber);
|
||||||
@ -859,14 +859,15 @@ public:
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_Hist.resize(res3);
|
m_Hist.resize(res + res + (res * res) + (res * res * res));//Add one extra res just to be safe.
|
||||||
Memset(m_Hist);
|
Memset(m_Hist);
|
||||||
auto p = m_FinalImage.data();
|
|
||||||
|
|
||||||
for (i = 0; i < m_Renderer->FinalDimensions(); i++)
|
for (i = 0; i < m_FinalImage.size(); i++)
|
||||||
{
|
{
|
||||||
m_Hist[size_t((p->r * res) + (p->g * res) * res + (p->b * res) * res * res)]++;//A specific histogram index representing the sum of R,G,B values.
|
auto& p = m_FinalImage[i];
|
||||||
p++;
|
m_Hist[size_t((p.r * res) +
|
||||||
|
(p.g * res) * res +
|
||||||
|
(p.b * res) * res * res)]++;//A specific histogram index representing the sum of R,G,B values.
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < res3; i++)
|
for (i = 0; i < res3; i++)
|
||||||
|
Loading…
Reference in New Issue
Block a user