<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>About shaders and ALLEGRO_BITMAPS</title>
		<link>http://www.allegro.cc/forums/view/616634</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Fri, 09 Dec 2016 08:56:24 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I want to use shaders to create a 2d shadowing effect <a href="http://images.gamedev.net/features/programming/2dsoftshadow/04HardShadows.gif">like this</a>  </p><p>I have a simple shader that i can apply to the current display, and that works fine. Like this:</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number"> 1</span><a href="http://www.allegro.cc/manual/al_set_target_backbuffer"><span class="a">al_set_target_backbuffer</span></a><span class="k2">(</span>display<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 2</span>al_use_shader<span class="k2">(</span>shader<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 3</span>.. draw
<span class="number"> 4</span>al_use_shader<span class="k2">(</span>NULL<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 5</span><a href="http://www.allegro.cc/manual/al_flip_display"><span class="a">al_flip_display</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
</div></div><p>

But when i try to use the shaders with a bitmap i cant make this to work.<br />Basically i want to apply the shader to a bitmap like this:</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span><span class="c">//draw things to bitmap</span>
<span class="number">  2</span><a href="http://www.allegro.cc/manual/al_set_target_bitmap"><span class="a">al_set_target_bitmap</span></a><span class="k2">(</span>bmp<span class="k2">)</span><span class="k2">;</span>
<span class="number">  3</span>al_use_shader<span class="k2">(</span>shader<span class="k2">)</span><span class="k2">;</span>
<span class="number">  4</span>.. draw
<span class="number">  5</span>al_use_shader<span class="k2">(</span>NULL<span class="k2">)</span><span class="k2">;</span>
<span class="number">  6</span>
<span class="number">  7</span><span class="c">//now display it</span>
<span class="number">  8</span><a href="http://www.allegro.cc/manual/al_set_target_backbuffer"><span class="a">al_set_target_backbuffer</span></a><span class="k2">(</span>display<span class="k2">)</span><span class="k2">;</span>
<span class="number">  9</span><a href="http://www.allegro.cc/manual/al_clear_to_color"><span class="a">al_clear_to_color</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 10</span><a href="http://www.allegro.cc/manual/al_draw_bitmap"><span class="a">al_draw_bitmap</span></a><span class="k2">(</span>bmp, <span class="n">0</span>, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
</div></div><p>

Maybe is something im missing since im new to allegro, any idea?  <br />Im using the last source version of allegro.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (paulwayne)</author>
		<pubDate>Wed, 07 Dec 2016 02:31:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It should work, I just tried it on Linux and it seemed fine. What platform are you on?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (SiegeLord)</author>
		<pubDate>Wed, 07 Dec 2016 22:26:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Im on Windows 7 32 bits, Visual Studio 2013, and last Allegro version.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (paulwayne)</author>
		<pubDate>Thu, 08 Dec 2016 00:46:03 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Interesting. I tried it on Windows myself, and it seemed to work ok.</p><p>Try adding this line before <span class="source-code"><a href="http://www.allegro.cc/manual/al_init"><span class="a">al_init</span></a><span class="k2">(</span><span class="k2">)</span></span> to enable logging (it&#39;ll generate an <span class="source-code">allegro.log</span> file in your working directory when you run the program):</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/al_set_config_value"><span class="a">al_set_config_value</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_get_system_config"><span class="a">al_get_system_config</span></a><span class="k2">(</span><span class="k2">)</span>, <span class="s">"trace"</span>, <span class="s">"level"</span>, <span class="s">"debug"</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

It&#39;ll be useful to look at that log.</p><p>Additionally, try doing this before you create the display to force OpenGL mode (by default, Allegro uses Direct3D on Windows):</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/al_set_new_display_flags"><span class="a">al_set_new_display_flags</span></a><span class="k2">(</span>ALLEGRO_PROGRAMMABLE_PIPELINE <span class="k3">|</span> ALLEGRO_OPENGL<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

Lastly, it&#39;ll be helpful if you produced a tiny program that reproduced your issue, so we can verify it&#39;s not something wrong in your code.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (SiegeLord)</author>
		<pubDate>Thu, 08 Dec 2016 12:02:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I finally got this to work. There was a problem with the shaders i was using. /facepalm
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (paulwayne)</author>
		<pubDate>Fri, 09 Dec 2016 08:56:24 +0000</pubDate>
	</item>
</rss>
