mirror of
https://github.com/TomHarte/CLK.git
synced 2024-07-30 07:29:06 +00:00
Fixed bug whereby first frame drawn has random collection of data.
This commit is contained in:
parent
80a3169674
commit
775fc270e6
@ -78,13 +78,15 @@ OpenGLOutputBuilder::OpenGLOutputBuilder(unsigned int buffer_depth) :
|
|||||||
_output_mutex(new std::mutex),
|
_output_mutex(new std::mutex),
|
||||||
_visible_area(Rect(0, 0, 1, 1)),
|
_visible_area(Rect(0, 0, 1, 1)),
|
||||||
_composite_src_output_y(0),
|
_composite_src_output_y(0),
|
||||||
|
_cleared_composite_output_y(0),
|
||||||
_composite_shader(nullptr),
|
_composite_shader(nullptr),
|
||||||
_rgb_shader(nullptr),
|
_rgb_shader(nullptr),
|
||||||
_output_buffer_data(nullptr),
|
_output_buffer_data(nullptr),
|
||||||
_source_buffer_data(nullptr),
|
_source_buffer_data(nullptr),
|
||||||
_input_texture_data(nullptr),
|
_input_texture_data(nullptr),
|
||||||
_output_buffer_data_pointer(0),
|
_output_buffer_data_pointer(0),
|
||||||
_source_buffer_data_pointer(0)
|
_source_buffer_data_pointer(0),
|
||||||
|
_drawn_source_buffer_data_pointer(0)
|
||||||
{
|
{
|
||||||
_run_builders = new CRTRunBuilder *[NumberOfFields];
|
_run_builders = new CRTRunBuilder *[NumberOfFields];
|
||||||
for(int builder = 0; builder < NumberOfFields; builder++)
|
for(int builder = 0; builder < NumberOfFields; builder++)
|
||||||
@ -229,7 +231,7 @@ void OpenGLOutputBuilder::draw_frame(unsigned int output_width, unsigned int out
|
|||||||
}
|
}
|
||||||
|
|
||||||
// for television, update intermediate buffers and then draw; for a monitor, just draw
|
// for television, update intermediate buffers and then draw; for a monitor, just draw
|
||||||
if(_output_device == Television)
|
if(_output_device == Television || !rgb_shader_program)
|
||||||
{
|
{
|
||||||
// decide how much to draw
|
// decide how much to draw
|
||||||
if(_drawn_source_buffer_data_pointer != _source_buffer_data_pointer)
|
if(_drawn_source_buffer_data_pointer != _source_buffer_data_pointer)
|
||||||
|
Loading…
Reference in New Issue
Block a user