Fix flipped Y axis in mask texture positioning
This commit is contained in:
parent
f26eecae7a
commit
631e16ce9b
|
@ -538,18 +538,16 @@ where
|
||||||
Some(ColorF::new(1.0, 1.0, 1.0, 1.0))
|
Some(ColorF::new(1.0, 1.0, 1.0, 1.0))
|
||||||
};
|
};
|
||||||
|
|
||||||
let textures = vec![self.device.framebuffer_texture(&self.fill_framebuffer)];
|
|
||||||
let uniforms = vec![
|
|
||||||
(&self.mask_winding_tile_program.mask_texture_uniform, UniformData::TextureUnit(0)),
|
|
||||||
];
|
|
||||||
|
|
||||||
self.device.draw_elements(tile_count * 6, &RenderState {
|
self.device.draw_elements(tile_count * 6, &RenderState {
|
||||||
target: &RenderTarget::Framebuffer(&self.mask_framebuffer),
|
target: &RenderTarget::Framebuffer(&self.mask_framebuffer),
|
||||||
program: &self.mask_winding_tile_program.program,
|
program: &self.mask_winding_tile_program.program,
|
||||||
vertex_array: &self.mask_winding_tile_vertex_array.vertex_array,
|
vertex_array: &self.mask_winding_tile_vertex_array.vertex_array,
|
||||||
primitive: Primitive::Triangles,
|
primitive: Primitive::Triangles,
|
||||||
textures: &textures,
|
textures: &[self.device.framebuffer_texture(&self.fill_framebuffer)],
|
||||||
uniforms: &uniforms,
|
uniforms: &[
|
||||||
|
(&self.mask_winding_tile_program.mask_texture_uniform,
|
||||||
|
UniformData::TextureUnit(0)),
|
||||||
|
],
|
||||||
viewport: self.mask_viewport(),
|
viewport: self.mask_viewport(),
|
||||||
options: RenderOptions {
|
options: RenderOptions {
|
||||||
// TODO(pcwalton): MIN blending for masks.
|
// TODO(pcwalton): MIN blending for masks.
|
||||||
|
|
|
@ -24,6 +24,6 @@ out float vBackdrop;
|
||||||
void main(){
|
void main(){
|
||||||
vMaskTexCoord = aMaskTexCoord;
|
vMaskTexCoord = aMaskTexCoord;
|
||||||
vBackdrop = float(aBackdrop);
|
vBackdrop = float(aBackdrop);
|
||||||
gl_Position = vec4(mix(vec2(- 1.0, - 1.0), vec2(1.0, 1.0), aPosition), 0.0, 1.0);
|
gl_Position = vec4(mix(vec2(- 1.0, 1.0), vec2(1.0, - 1.0), aPosition), 0.0, 1.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@ vertex main0_out main0(main0_in in [[stage_in]])
|
||||||
main0_out out = {};
|
main0_out out = {};
|
||||||
out.vMaskTexCoord = in.aMaskTexCoord;
|
out.vMaskTexCoord = in.aMaskTexCoord;
|
||||||
out.vBackdrop = float(in.aBackdrop);
|
out.vBackdrop = float(in.aBackdrop);
|
||||||
out.gl_Position = float4(mix(float2(-1.0), float2(1.0), in.aPosition), 0.0, 1.0);
|
out.gl_Position = float4(mix(float2(-1.0, 1.0), float2(1.0, -1.0), in.aPosition), 0.0, 1.0);
|
||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,5 +22,5 @@ out float vBackdrop;
|
||||||
void main() {
|
void main() {
|
||||||
vMaskTexCoord = aMaskTexCoord;
|
vMaskTexCoord = aMaskTexCoord;
|
||||||
vBackdrop = float(aBackdrop);
|
vBackdrop = float(aBackdrop);
|
||||||
gl_Position = vec4(mix(vec2(-1.0, -1.0), vec2(1.0, 1.0), aPosition), 0.0, 1.0);
|
gl_Position = vec4(mix(vec2(-1.0, 1.0), vec2(1.0, -1.0), aPosition), 0.0, 1.0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue