31 lines
1.2 KiB
Diff
31 lines
1.2 KiB
Diff
|
From 4dd20f2678195524dd147db3fe902d0a93de3df0 Mon Sep 17 00:00:00 2001
|
||
|
From: Neil Roberts <neil@linux.intel.com>
|
||
|
Date: Thu, 24 Feb 2011 18:42:47 +0000
|
||
|
Subject: cogl-blit: Disable blending when using texture render
|
||
|
|
||
|
When using a pipeline and the journal to blit images between
|
||
|
framebuffers, it should disable blending. Otherwise it will end up
|
||
|
blending the source texture with uninitialised garbage in the
|
||
|
destination texture.
|
||
|
---
|
||
|
diff --git a/clutter/cogl/cogl/cogl-blit.c b/clutter/cogl/cogl/cogl-blit.c
|
||
|
index 1c40e34..255f77c 100644
|
||
|
--- a/clutter/cogl/cogl/cogl-blit.c
|
||
|
+++ b/clutter/cogl/cogl/cogl-blit.c
|
||
|
@@ -78,6 +78,12 @@ _cogl_blit_texture_render_begin (CoglBlitData *data)
|
||
|
cogl_pipeline_set_layer_filters (ctx->blit_texture_pipeline, 0,
|
||
|
COGL_PIPELINE_FILTER_NEAREST,
|
||
|
COGL_PIPELINE_FILTER_NEAREST);
|
||
|
+
|
||
|
+ /* Disable blending by just directly taking the contents of the
|
||
|
+ source texture */
|
||
|
+ cogl_pipeline_set_blend (ctx->blit_texture_pipeline,
|
||
|
+ "RGBA = ADD(SRC_COLOR, 0)",
|
||
|
+ NULL);
|
||
|
}
|
||
|
|
||
|
pipeline = ctx->blit_texture_pipeline;
|
||
|
--
|
||
|
cgit v0.8.3.1-30-gff3a
|
||
|
|