1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-07-04 18:29:40 +00:00

Merge pull request #468 from TomHarte/PALColour

Tweaks blending back to appease interlaced video
This commit is contained in:
Thomas Harte 2018-06-14 18:28:06 -04:00 committed by GitHub
commit 1bd6bbca8d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 4 additions and 4 deletions

View File

@ -375,7 +375,7 @@ void CRT::output_colour_burst(unsigned int number_of_cycles, uint8_t phase, uint
}
void CRT::output_default_colour_burst(unsigned int number_of_cycles) {
output_colour_burst(number_of_cycles, static_cast<uint8_t>((phase_numerator_ * 256) / phase_denominator_ + (is_alernate_line_ ? 128 : 0)));
output_colour_burst(number_of_cycles, static_cast<uint8_t>((phase_numerator_ * 256) / phase_denominator_));
}
void CRT::set_immediate_default_phase(float phase) {

View File

@ -37,7 +37,7 @@ OpenGLOutputBuilder::OpenGLOutputBuilder(std::size_t bytes_per_pixel) :
texture_builder(bytes_per_pixel, source_data_texture_unit),
array_builder(SourceVertexBufferDataSize, OutputVertexBufferDataSize) {
glBlendFunc(GL_SRC_ALPHA, GL_CONSTANT_COLOR);
glBlendColor(0.3f, 0.3f, 0.3f, 1.0f);
glBlendColor(0.4f, 0.4f, 0.4f, 1.0f);
// create the output vertex array
glGenVertexArrays(1, &output_vertex_array_);

View File

@ -146,7 +146,7 @@ std::unique_ptr<IntermediateShader> IntermediateShader::make_composite_source_sh
"vec3 rgbColour = clamp(rgb_sample(texID, coordinate, iCoordinate), vec3(0.0), vec3(1.0));"
"vec3 lumaChromaColour = rgbToLumaChroma * rgbColour;"
"vec2 quadrature = vec2(cos(phase), sin(phase)) * vec2(abs(amplitude), amplitude);"
"return dot(lumaChromaColour, vec3(1.0 - amplitude, quadrature));"
"return dot(lumaChromaColour, vec3(1.0 - abs(amplitude), quadrature));"
"}";
}
}

View File

@ -83,7 +83,7 @@ std::unique_ptr<OutputShader> OutputShader::make_shader(const char *fragment_met
"void main(void)"
"{"
"fragColour = vec4(pow(" << colour_expression << ", vec3(gamma)), 0.9);"//*cos(lateralVarying)
"fragColour = vec4(pow(" << colour_expression << ", vec3(gamma)), 0.8);"//*cos(lateralVarying)
"}";
return std::unique_ptr<OutputShader>(new OutputShader(vertex_shader.str(), fragment_shader.str(), {