mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-07-01 00:15:22 -04:00
OpenGL modernization: waterfall texture update optimization
This commit is contained in:
parent
c5a45e57ee
commit
fa23c4536f
@ -603,10 +603,18 @@ void GLSpectrum::paintGL()
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
for (int i = 0; i < m_waterfallBufferPos; i++)
|
if (m_waterfallTexturePos + m_waterfallBufferPos < m_waterfallTextureHeight)
|
||||||
{
|
{
|
||||||
m_glShaderWaterfall.subTexture(0, m_waterfallTexturePos, m_fftSize, 1, m_waterfallBuffer->scanLine(i));
|
m_glShaderWaterfall.subTexture(0, m_waterfallTexturePos, m_fftSize, m_waterfallBufferPos, m_waterfallBuffer->scanLine(0));
|
||||||
m_waterfallTexturePos = (m_waterfallTexturePos + 1) % m_waterfallTextureHeight;
|
m_waterfallTexturePos += m_waterfallBufferPos;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int breakLine = m_waterfallTextureHeight - m_waterfallTexturePos;
|
||||||
|
int linesLeft = m_waterfallTexturePos + m_waterfallBufferPos - m_waterfallTextureHeight;
|
||||||
|
m_glShaderWaterfall.subTexture(0, m_waterfallTexturePos, m_fftSize, breakLine, m_waterfallBuffer->scanLine(0));
|
||||||
|
m_glShaderWaterfall.subTexture(0, 0, m_fftSize, linesLeft, m_waterfallBuffer->scanLine(breakLine));
|
||||||
|
m_waterfallTexturePos = linesLeft;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_waterfallBufferPos = 0;
|
m_waterfallBufferPos = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user