<_whitenotifier-3>
[scopehal-apps] azonenberg pushed 2 commits to master [+0/-0/±2] https://git.io/JvlvT
<_whitenotifier-3>
[scopehal-apps] azonenberg 7b2df76 - Minor tweaks to rendering hints in WaveformArea
<_whitenotifier-3>
[scopehal-apps] azonenberg f66d6f5 - Rearranged rendering to fix some glitches at high zoom levels
<_whitenotifier-3>
[scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±1] https://git.io/Jvlv3
<_whitenotifier-3>
[scopehal-apps] azonenberg 376f37b - Now use new rendering architecture for FFT traces
<azonenberg>
So, the new rendering fixes some artifacts but involves a fix-up pass after completion of rendering. Which breaks the parallelism i'll need to do tesselation in a shader
<azonenberg>
But i should be able to fix that later
<azonenberg>
At least for now things look nicer
<_whitenotifier-3>
[scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±8] https://git.io/JvlUs
<_whitenotifier-3>
[scopehal-apps] azonenberg d6a4a2f - PrepareGeometry() now keeps track of dirty flag and only re-tesselates if new waveform data is ready or LOD has changed. Fixed unnecessary re-renders of unchanged scenery. Fixes #46.
<_whitenotifier-3>
[scopehal-apps] azonenberg closed issue #46: Persistence doesn't clear when horizontally panning a trace - https://git.io/JvY3U
<azonenberg>
So it turns out i had a bug where re-rendering was triggered even if there was no new waveform data
<azonenberg>
That, combined with re-tesselating and pushing geometry to the GPU every frame even if nothing had changed, wasted a lot of time
<azonenberg>
10M point captures on my workstation are still a little jerky feeling (moving line tesselation to a compute shader should improve update times by close to an OOM) but no longer 5+ seconds of lag every time you interact with the UI
<azonenberg>
Zooming in and out is slow, because tesselation is re-done when LOD changes
<azonenberg>
So that should also improve greatly when i put that in a shader
<azonenberg>
I think at some point i'm going to want to move digital protocol overlay rendering to GL too. Now that i'm not re-tesselating the analog traces constantly i'm spending a lot more time in software rendering proportionally
<azonenberg>
Latest profiling from a test with a lot of protocol decodes showed 77% of total render time in Cairo overlays
<_whitenotifier-3>
[scopehal-apps] azonenberg opened issue #51: Digital waveform overlays should be done in GL, not Cairo, to improve performance - https://git.io/JvlUH
<_whitenotifier-3>
[scopehal-apps] azonenberg labeled issue #51: Digital waveform overlays should be done in GL, not Cairo, to improve performance - https://git.io/JvlUH
<_whitenotifier-3>
[scopehal-apps] azonenberg labeled issue #51: Digital waveform overlays should be done in GL, not Cairo, to improve performance - https://git.io/JvlUH
<_whitenotifier-3>
[scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±2] https://git.io/JvlTu
<_whitenotifier-3>
[scopehal-apps] azonenberg 2874103 - Fixed digital protocol decodes being drawn on top of their names. Fixes #50.