<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>[A5] Motion Blur Effect</title>
		<link>http://www.allegro.cc/forums/view/610240</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sat, 19 May 2012 17:08:45 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I want to create motion blur effect with Allegro5. I simply created a blur bitmap for this effect.</p><p>My steps:</p><p>1-) Draw backbuffer to blur using<br />al_draw_tinted_bitmap(backbuffer, al_map_rgba_f(1,1,1,0.95), 0, 0, 0);</p><p>2-) Clear backbuffer using</p><p>3-) Draw blur to backbuffer using</p><p>4-) Draw sprites to backbuffer</p><p>5-) Flip display</p><p>But when my blurred pixels transparency goes 255, they become white. And i get something like this pictures.(fitsr pic is from starting of game. second picture is when im moving ... )<br /><a href="http://www.allegro.cc/files/attachment/606036">http://www.allegro.cc/files/attachment/606036</a><br /><a href="http://www.allegro.cc/files/attachment/606037">http://www.allegro.cc/files/attachment/606037</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (tolgagerekci)</author>
		<pubDate>Wed, 16 May 2012 05:28:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>1) clear your buffer to black at the start of the level/game<br />2) draw translucent black rectangle to the buffer<br />3) draw your sprites/scene to the buffer<br />4) draw the buffer to the screen backbuffer<br />5) repeat from step 2</p><p>Just make sure you draw an &quot;opaque-enough&quot; black rectangle to suit your desired trail length.</p><p>Not sure a good way to get motion blur on some parts and not on others.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Trent Gamblin)</author>
		<pubDate>Wed, 16 May 2012 05:38:53 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I create a cheap motion blur effect for certain sprites in one of my games by taking a few &quot;snapshots&quot; of the sprite going back into the past and drawing them with a lower opacity the older they are. The &quot;snapshot&quot; consists of a pointer to the bitmap to draw, positioning data, and a timer used to calculate the opacity.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Todd Cope)</author>
		<pubDate>Wed, 16 May 2012 06:09:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think you don&#39;t understand me. My code is:</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">//-----INIT PART---------------</span>
<span class="number">  2</span>
<span class="number">  3</span><a href="http://www.allegro.cc/manual/ALLEGRO_BITMAP"><span class="a">ALLEGRO_BITMAP</span></a> <span class="k3">*</span>tri <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_bitmap"><span class="a">al_create_bitmap</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_get_bitmap_width"><span class="a">al_get_bitmap_width</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_get_backbuffer"><span class="a">al_get_backbuffer</span></a><span class="k2">(</span>display<span class="k2">)</span><span class="k2">)</span>,<a href="http://www.allegro.cc/manual/al_get_bitmap_height"><span class="a">al_get_bitmap_height</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_get_backbuffer"><span class="a">al_get_backbuffer</span></a><span class="k2">(</span>display<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  4</span>
<span class="number">  5</span><a href="http://www.allegro.cc/manual/ALLEGRO_BITMAP"><span class="a">ALLEGRO_BITMAP</span></a> <span class="k3">*</span>blur <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_bitmap"><span class="a">al_create_bitmap</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_get_bitmap_width"><span class="a">al_get_bitmap_width</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_get_backbuffer"><span class="a">al_get_backbuffer</span></a><span class="k2">(</span>display<span class="k2">)</span><span class="k2">)</span>,<a href="http://www.allegro.cc/manual/al_get_bitmap_height"><span class="a">al_get_bitmap_height</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_get_backbuffer"><span class="a">al_get_backbuffer</span></a><span class="k2">(</span>display<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  6</span>
<span class="number">  7</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>tri<span class="k2">)</span><span class="k2">;</span>
<span class="number">  8</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>
<span class="number"> 11</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>blur<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 12</span>
<span class="number"> 13</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"> 14</span>
<span class="number"> 15</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><a href="http://www.allegro.cc/manual/al_get_backbuffer"><span class="a">al_get_backbuffer</span></a><span class="k2">(</span>display<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 16</span>
<span class="number"> 17</span><span class="c">//-----DRAWING PART------------</span>
<span class="number"> 18</span>
<span class="number"> 19</span><span class="c">//---------------------------------------</span>
<span class="number"> 20</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>blur<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 21</span>
<span class="number"> 22</span><a href="http://www.allegro.cc/manual/al_draw_tinted_bitmap"><span class="a">al_draw_tinted_bitmap</span></a><span class="k2">(</span>tri,<a href="http://www.allegro.cc/manual/al_map_rgba_f"><span class="a">al_map_rgba_f</span></a><span class="k2">(</span><span class="n">1</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">0</span>.<span class="n">95</span><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="number"> 23</span>
<span class="number"> 24</span><span class="c">//----------------------------------------</span>
<span class="number"> 25</span>
<span class="number"> 26</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>tri<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 27</span>      
<span class="number"> 28</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_rgba"><span class="a">al_map_rgba</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 29</span>      
<span class="number"> 30</span><a href="http://www.allegro.cc/manual/al_draw_bitmap"><span class="a">al_draw_bitmap</span></a><span class="k2">(</span>blur,<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="number"> 31</span>
<span class="number"> 32</span>cam.StartCamera<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 33</span>
<span class="number"> 34</span><span class="k1">int</span> j <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 35</span><span class="k1">for</span><span class="k2">(</span>j <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> j <span class="k3">&lt;</span> bullets.size<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 36</span><span class="k2">{</span>
<span class="number"> 37</span>  bullets<span class="k2">[</span>j<span class="k2">]</span><span class="k3">-</span><span class="k3">&gt;</span>Draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 38</span><span class="k2">}</span>
<span class="number"> 39</span><span class="k1">for</span><span class="k2">(</span>j <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> j <span class="k3">&lt;</span> enemybullets.size<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 40</span><span class="k2">{</span>
<span class="number"> 41</span>  enemybullets<span class="k2">[</span>j<span class="k2">]</span><span class="k3">-</span><span class="k3">&gt;</span>Draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 42</span><span class="k2">}</span>
<span class="number"> 43</span>spaceship.Draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 44</span>      
<span class="number"> 45</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> <a href="http://www.allegro.cc/manual/al_get_backbuffer"><span class="a">al_get_backbuffer</span></a><span class="k2">(</span>display<span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 46</span>
<span class="number"> 47</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"> 48</span>
<span class="number"> 49</span><a href="http://www.allegro.cc/manual/al_draw_bitmap"><span class="a">al_draw_bitmap</span></a><span class="k2">(</span>tri,<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="number"> 50</span>
<span class="number"> 51</span>gamemenu-&gt;Draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 52</span>
<span class="number"> 53</span>gameBar-&gt;Draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 54</span>
<span class="number"> 55</span>mouse-&gt;Draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 56</span>
<span class="number"> 57</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>

How can i draw &quot; translucent black rectangle&quot; with Allegro 5?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (tolgagerekci)</author>
		<pubDate>Wed, 16 May 2012 14:53:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><span class="source-code"><a href="http://www.allegro.cc/manual/al_draw_filled_rectangle"><span class="a">al_draw_filled_rectangle</span></a><span class="k2">(</span>left, top, right, bottom, <a href="http://www.allegro.cc/manual/al_map_rgba_f"><span class="a">al_map_rgba_f</span></a><span class="k2">(</span><span class="n">0</span>.<span class="n">0</span>, <span class="n">0</span>.<span class="n">0</span>, <span class="n">0</span>.<span class="n">0</span>, <span class="n">0</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></span></p><p>Replace the <span class="source-code"><span class="n">0</span>.<span class="n">5</span></span> with whatever value suits your needs. A lower value will produce more blurring. This works with fine with the default blender setting.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Todd Cope)</author>
		<pubDate>Wed, 16 May 2012 19:32:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Thanks thanks thanks million time thanks <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" /> I really appreciate it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (tolgagerekci)</author>
		<pubDate>Wed, 16 May 2012 21:25:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>can you upload the screenshot of your result? I&#39;d like to see motion blur in action using A5.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Hyena_)</author>
		<pubDate>Fri, 18 May 2012 11:19:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Results:<br /><span class="remote-thumbnail"><span class="json">{"name":"606044","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/6\/56f38fab2ac52b5560e00f2700482d01.png","w":1297,"h":1038,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/6\/56f38fab2ac52b5560e00f2700482d01"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/5/6/56f38fab2ac52b5560e00f2700482d01-240.jpg" alt="606044" width="240" height="192" /></span><br /><span class="remote-thumbnail"><span class="json">{"name":"606045","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/9\/59b88b15447e45bca01c2728a5b5b3b3.png","w":1293,"h":997,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/9\/59b88b15447e45bca01c2728a5b5b3b3"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/5/9/59b88b15447e45bca01c2728a5b5b3b3-240.jpg" alt="606045" width="240" height="185" /></span></p><p>Alpha values:</p><p>First 80<br />Second 50
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (tolgagerekci)</author>
		<pubDate>Sat, 19 May 2012 17:08:45 +0000</pubDate>
	</item>
</rss>
