a CRT preview directly in the debugger should be a separate window.
there's no real value in having the debugging information applied
directly to a CRT rendering
single, flicker and composite replaced with single, double, triple
added a new movement mode (hotkey alt-F12). this tries to recreate the
old composite mode
screenshotting is now much simpler and uses gl.ReadPixels() to capture
the screen buffer as it is displayed
currently include any windows and icons etc that have also been drawn to
the screen
if pixel perfect is disabled and using bevel is enabled, then the curve
and rounded corners amount are fixed values specific to the selected
bevel. currently only the 'solid state' bevel is allowed
set new default values for crt preferences
increased perlin noise value for CRT screen
removed tv_color fragment shader. this simplifies the render path
considerably. there's a little extra load on the CPU when retreiving
colour values from the cache and a little more when generating (which
only happens once on startup and when TV controls are changed) but it's
very minimal
SECAM colours generated rather than using a precomputed RGB palette
preferences for TV brightness/contrast/saturation/hue moved to colourgen
pacakge
corrected scaling/positioning of screen relative to bevel image. the
position of the bevel inside the window needs to be taken into account
in order for the offset values to be consistent
screen can now be repositioning and sized so that it fits inside the
bevel. this needs improvement such that a bevel can specify how the
screen needs to be transformed for the bevel
set ClearColor before calling gl.Clear(). this completes the change
started in 8763b77f
clarified how and when the vertex shader should flip the texture
occassional graphical artefacts no longer appear. the artefacts appeared
(or were more noticeable) when the TV image was scaled to certain sizes.
they were caused by incorrect use of the framebuffer. using the same
texture as the source and destination of the shading process does not
work as expected
removed VSYNC synchronise on power option
these changes simplify the screen.go file and fixes the relationship
between the debugger TV screen and screen roll that was sometimes seen
(depending on when the emulation was switched to the debugger)
improved interference noise. using perlin noise rather than gold noise
shine/vignettes is smoothed out by small amout of perlin noise if
interference is not active
all references to opengl are now made through the renderer interface.
which renderer is to be used is controlled by buildtags
now requires minimum go version of 1.21
CRT preferences and CRT preview in debugger TV window are disabled for
OpenGL2.1
2023-11-20 16:58:32 +00:00
Renamed from gui/sdlimgui/glsl_playscr.go (Browse further)