<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Replacing specific color range</title>
		<link>http://www.allegro.cc/forums/view/591087</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sat, 28 Apr 2007 02:14:16 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Take a look at the picture, all colors except hands are &#39;pure&#39; colors.</p><p><span class="remote-thumbnail"><span class="json">{"name":"591971","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/b\/8\/b8d1678789bd504182193c7391f1b202.png","w":320,"h":240,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/b\/8\/b8d1678789bd504182193c7391f1b202"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/b/8/b8d1678789bd504182193c7391f1b202-240.jpg" alt="591971" width="240" height="180" /></span></p><p>I need to replace each of these color by another one, but quickly.</p><p>What is the way , faster than getpixel, that I can use ?</p><p>Thanks
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Fri, 20 Apr 2007 01:06:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>If you&#39;re using 8bit I would go for palette changes, but something tells me you are not...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Johan Peitz)</author>
		<pubDate>Fri, 20 Apr 2007 01:21:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Use palettes. Or prerender, either using a graphic editor (great opportunity to discuss in this thread why Gimp sucks/is great) or during game setup.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Johan Halmén)</author>
		<pubDate>Fri, 20 Apr 2007 01:24:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Use palettes, prerender, or use OpenGL.</p><p>[append]<br />Next person to post has to add something to the list!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 20 Apr 2007 02:32:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Use palettes, prerender, or use OpenGL.
</p></div></div><p>
Or use getpixel to build an array and then use the array to putpixel back the colors with a given offset to change your colors, as long as your image doesn&#39;t...change.  <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Onewing)</author>
		<pubDate>Fri, 20 Apr 2007 02:42:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>There are gradients there... Ya good luck.  Easier to redo the art.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ImLeftFooted)</author>
		<pubDate>Fri, 20 Apr 2007 02:46:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Gradients can be overcome by converting to HSL and not using the lightness but there will be problems if any of the gradients fades to pure black.  The human brain is pretty good at putting imaginary boundries in images.</p><p>As far as I can think, getpixel is the only way and it will be slow.  I can think of a few ways to optimize but all sacrifice accuracy.</p><p>+1 for finding another way. </p><p>Matt.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matt Weir)</author>
		<pubDate>Fri, 20 Apr 2007 03:16:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Solder a switch to your monitor cable, which switches the r, g and b channels.<br />I win!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Johan Halmén)</author>
		<pubDate>Fri, 20 Apr 2007 12:07:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I made some tests, and it is working (as expected) with getpixel/putpixel. </p><p>I will perhaps try to use the &quot;block data transfer&quot; method.</p><p>Here is the result, the colors are random and take the gradient :<br />[img <a href="http://www.allegro.cc/files/attachment/591972">http://www.allegro.cc/files/attachment/591972</a>]</p><p>And here is the code :
</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="p">#include &lt;allegro.h&gt;</span>
<span class="number">   2</span>
<span class="number">   3</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>in , <span class="k3">*</span>out , <span class="k3">*</span>buf<span class="k2">;</span>
<span class="number">   4</span>
<span class="number">   5</span><span class="k1">int</span> x , y,  it , c , cc, r, g , b , r1 , b1 , g1 , c1 , c2 , c3 , c4 , c5 ,c6,c7 <span class="k2">;</span>
<span class="number">   6</span>
<span class="number">   7</span><span class="k1">int</span> main<span class="k2">(</span> <span class="k1">int</span> argc , <span class="k1">char</span> <span class="k3">*</span>argv<span class="k2">[</span><span class="k2">]</span> <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/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  10</span><a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  11</span><a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  12</span>
<span class="number">  13</span>
<span class="number">  14</span><a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a><span class="k2">(</span> <span class="n">32</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  15</span>
<span class="number">  16</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span> GFX_DIRECTX_WIN , <span class="n">320</span> , <span class="n">240</span> , <span class="n">0</span> , <span class="n">0</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  17</span>
<span class="number">  18</span>in <span class="k3">=</span> <a href="http://www.allegro.cc/manual/load_bitmap" target="_blank"><span class="a">load_bitmap</span></a><span class="k2">(</span> <span class="s">"test.bmp"</span> , NULL <span class="k2">)</span><span class="k2">;</span>
<span class="number">  19</span>
<span class="number">  20</span>out <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span> in <span class="k3">-</span><span class="k3">&gt;</span> w , in <span class="k3">-</span><span class="k3">&gt;</span> h <span class="k2">)</span><span class="k2">;</span>
<span class="number">  21</span>
<span class="number">  22</span>buf <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span> <a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a> , <a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  23</span>clear<span class="k2">(</span> buf <span class="k2">)</span><span class="k2">;</span>
<span class="number">  24</span>clear<span class="k2">(</span> out <span class="k2">)</span><span class="k2">;</span>
<span class="number">  25</span>  
<span class="number">  26</span>  c1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  27</span>  c2 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  28</span>  c3 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  29</span>  c4 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  30</span>  c5 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  31</span>  c6 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  32</span>  c7 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  33</span>  
<span class="number">  34</span>  <span class="k1">for</span><span class="k2">(</span> x <span class="k3">=</span> <span class="n">0</span> <span class="k2">;</span> x <span class="k3">&lt;</span> in <span class="k3">-</span><span class="k3">&gt;</span> w <span class="k2">;</span> x <span class="k3">+</span><span class="k3">+</span> <span class="k2">)</span>
<span class="number">  35</span>  <span class="k2">{</span>
<span class="number">  36</span>    <span class="k1">for</span><span class="k2">(</span> y <span class="k3">=</span> <span class="n">0</span> <span class="k2">;</span> y <span class="k3">&lt;</span> in <span class="k3">-</span><span class="k3">&gt;</span> h <span class="k2">;</span> y <span class="k3">+</span><span class="k3">+</span> <span class="k2">)</span>
<span class="number">  37</span>    <span class="k2">{</span>
<span class="number">  38</span>      cc <span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  39</span>      
<span class="number">  40</span>      c <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span> in , x , y <span class="k2">)</span><span class="k2">;</span>
<span class="number">  41</span>      r <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getr" target="_blank"><span class="a">getr</span></a><span class="k2">(</span> c <span class="k2">)</span><span class="k2">;</span>
<span class="number">  42</span>      g <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getg" target="_blank"><span class="a">getg</span></a><span class="k2">(</span> c <span class="k2">)</span><span class="k2">;</span>
<span class="number">  43</span>      b <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getb" target="_blank"><span class="a">getb</span></a><span class="k2">(</span> c <span class="k2">)</span><span class="k2">;</span>
<span class="number">  44</span>      
<span class="number">  45</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span> <span class="c">/* rouge tete */</span>
<span class="number">  46</span>         cc <span class="k3">=</span> c1 <span class="k2">;</span>
<span class="number">  47</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span>  <span class="c">/* roste cou */</span>
<span class="number">  48</span>         cc <span class="k3">=</span> c2 <span class="k2">;</span>
<span class="number">  49</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span> <span class="c">/* bleu manche */</span>
<span class="number">  50</span>         cc <span class="k3">=</span> c3 <span class="k2">;</span>
<span class="number">  51</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span> <span class="c">/* veste */</span>
<span class="number">  52</span>         cc <span class="k3">=</span> c4 <span class="k2">;</span>
<span class="number">  53</span>      <span class="k1">if</span><span class="k2">(</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> r <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span> <span class="c">/*pantalon*/</span>
<span class="number">  54</span>         cc <span class="k3">=</span> c5 <span class="k2">;</span>
<span class="number">  55</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span> <span class="c">/*mains*/</span>
<span class="number">  56</span>         cc <span class="k3">=</span> c6 <span class="k2">;</span>
<span class="number">  57</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> r <span class="k3">&lt;</span><span class="k3">=</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span>
<span class="number">  58</span>        cc <span class="k3">=</span> c7<span class="k2">;</span>
<span class="number">  59</span>      <span class="k1">if</span><span class="k2">(</span> cc <span class="k3">!</span><span class="k3">=</span> <span class="k3">-</span><span class="n">1</span> <span class="k2">)</span>
<span class="number">  60</span>      <span class="k2">{</span>
<span class="number">  61</span>      
<span class="number">  62</span>      r1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getr" target="_blank"><span class="a">getr</span></a><span class="k2">(</span> cc <span class="k2">)</span><span class="k2">;</span>
<span class="number">  63</span>      g1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getg" target="_blank"><span class="a">getg</span></a><span class="k2">(</span> cc <span class="k2">)</span><span class="k2">;</span>
<span class="number">  64</span>      b1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getb" target="_blank"><span class="a">getb</span></a><span class="k2">(</span> cc <span class="k2">)</span><span class="k2">;</span>
<span class="number">  65</span>      
<span class="number">  66</span>         
<span class="number">  67</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span>
<span class="number">  68</span>      <span class="k2">{</span>
<span class="number">  69</span>        it <span class="k3">=</span> r<span class="k2">;</span>
<span class="number">  70</span>      <span class="k2">}</span>
<span class="number">  71</span>      
<span class="number">  72</span>      <span class="k1">if</span><span class="k2">(</span> g <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span>
<span class="number">  73</span>      <span class="k2">{</span>
<span class="number">  74</span>        it <span class="k3">=</span> g <span class="k2">;</span>
<span class="number">  75</span>      <span class="k2">}</span>
<span class="number">  76</span>      
<span class="number">  77</span>      <span class="k1">if</span><span class="k2">(</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span>
<span class="number">  78</span>      <span class="k2">{</span>
<span class="number">  79</span>          it <span class="k3">=</span> b <span class="k2">;</span>
<span class="number">  80</span>      <span class="k2">}</span>
<span class="number">  81</span>      
<span class="number">  82</span>      r1 <span class="k3">=</span> <span class="k2">(</span>r1 <span class="k3">*</span> it<span class="k2">)</span><span class="k3">/</span><span class="n">255</span> <span class="k2">;</span>
<span class="number">  83</span>      g1 <span class="k3">=</span> <span class="k2">(</span>g1 <span class="k3">*</span> it<span class="k2">)</span><span class="k3">/</span><span class="n">255</span> <span class="k2">;</span>
<span class="number">  84</span>      b1 <span class="k3">=</span> <span class="k2">(</span>b1 <span class="k3">*</span> it<span class="k2">)</span><span class="k3">/</span><span class="n">255</span> <span class="k2">;</span>
<span class="number">  85</span>      
<span class="number">  86</span>      <span class="k1">if</span><span class="k2">(</span> r1 <span class="k3">&lt;</span> <span class="n">0</span> <span class="k2">)</span> r1 <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  87</span>      <span class="k1">if</span><span class="k2">(</span> g1 <span class="k3">&lt;</span> <span class="n">0</span> <span class="k2">)</span> g1 <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  88</span>      <span class="k1">if</span><span class="k2">(</span> b1 <span class="k3">&lt;</span> <span class="n">0</span> <span class="k2">)</span> b1 <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  89</span>      <span class="k1">if</span><span class="k2">(</span> r1 <span class="k3">&gt;</span> <span class="n">255</span> <span class="k2">)</span> r1 <span class="k3">=</span> <span class="n">255</span><span class="k2">;</span>
<span class="number">  90</span>      <span class="k1">if</span><span class="k2">(</span> g1 <span class="k3">&gt;</span> <span class="n">255</span> <span class="k2">)</span> g1 <span class="k3">=</span> <span class="n">255</span><span class="k2">;</span>
<span class="number">  91</span>      <span class="k1">if</span><span class="k2">(</span> b1 <span class="k3">&gt;</span> <span class="n">255</span> <span class="k2">)</span> b1 <span class="k3">=</span> <span class="n">255</span><span class="k2">;</span>
<span class="number">  92</span>      
<span class="number">  93</span>      <a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span> out , x , y , <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> r1 , g1 , b1 <span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number">  94</span>      <span class="k2">}</span>
<span class="number">  95</span>    <span class="k2">}</span>
<span class="number">  96</span>  <span class="k2">}</span>
<span class="number">  97</span><span class="k1">do</span><span class="k2">{</span>
<span class="number">  98</span>
<span class="number">  99</span><span class="k1">if</span><span class="k2">(</span> <a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_SPACE<span class="k2">]</span> <span class="k2">)</span>
<span class="number"> 100</span><span class="k2">{</span>
<span class="number"> 101</span>  clear<span class="k2">(</span> out <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 102</span>  
<span class="number"> 103</span>  c1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 104</span>  c2 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 105</span>  c3 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 106</span>  c4 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 107</span>  c5 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 108</span>  c6 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 109</span>  c7 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> , <a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%<span class="n">255</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 110</span>  
<span class="number"> 111</span>  <span class="k1">for</span><span class="k2">(</span> x <span class="k3">=</span> <span class="n">0</span> <span class="k2">;</span> x <span class="k3">&lt;</span> in <span class="k3">-</span><span class="k3">&gt;</span> w <span class="k2">;</span> x <span class="k3">+</span><span class="k3">+</span> <span class="k2">)</span>
<span class="number"> 112</span>  <span class="k2">{</span>
<span class="number"> 113</span>    <span class="k1">for</span><span class="k2">(</span> y <span class="k3">=</span> <span class="n">0</span> <span class="k2">;</span> y <span class="k3">&lt;</span> in <span class="k3">-</span><span class="k3">&gt;</span> h <span class="k2">;</span> y <span class="k3">+</span><span class="k3">+</span> <span class="k2">)</span>
<span class="number"> 114</span>    <span class="k2">{</span>
<span class="number"> 115</span>      cc <span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number"> 116</span>      
<span class="number"> 117</span>      c <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span> in , x , y <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 118</span>      r <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getr" target="_blank"><span class="a">getr</span></a><span class="k2">(</span> c <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 119</span>      g <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getg" target="_blank"><span class="a">getg</span></a><span class="k2">(</span> c <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 120</span>      b <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getb" target="_blank"><span class="a">getb</span></a><span class="k2">(</span> c <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 121</span>      
<span class="number"> 122</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span> <span class="c">/* rouge tete */</span>
<span class="number"> 123</span>         cc <span class="k3">=</span> c1 <span class="k2">;</span>
<span class="number"> 124</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span>  <span class="c">/* roste cou */</span>
<span class="number"> 125</span>         cc <span class="k3">=</span> c2 <span class="k2">;</span>
<span class="number"> 126</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span> <span class="c">/* bleu manche */</span>
<span class="number"> 127</span>         cc <span class="k3">=</span> c3 <span class="k2">;</span>
<span class="number"> 128</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span> <span class="c">/* veste */</span>
<span class="number"> 129</span>         cc <span class="k3">=</span> c4 <span class="k2">;</span>
<span class="number"> 130</span>      <span class="k1">if</span><span class="k2">(</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> r <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span> <span class="c">/*pantalon*/</span>
<span class="number"> 131</span>         cc <span class="k3">=</span> c5 <span class="k2">;</span>
<span class="number"> 132</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span> <span class="c">/*mains*/</span>
<span class="number"> 133</span>         cc <span class="k3">=</span> c6 <span class="k2">;</span>
<span class="number"> 134</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> r <span class="k3">&lt;</span><span class="k3">=</span> <span class="n">88</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> b <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> g <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span>
<span class="number"> 135</span>        cc <span class="k3">=</span> c7<span class="k2">;</span>
<span class="number"> 136</span>      <span class="k1">if</span><span class="k2">(</span> cc <span class="k3">!</span><span class="k3">=</span> <span class="k3">-</span><span class="n">1</span> <span class="k2">)</span>
<span class="number"> 137</span>      <span class="k2">{</span>
<span class="number"> 138</span>      
<span class="number"> 139</span>      r1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getr" target="_blank"><span class="a">getr</span></a><span class="k2">(</span> cc <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 140</span>      g1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getg" target="_blank"><span class="a">getg</span></a><span class="k2">(</span> cc <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 141</span>      b1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/getb" target="_blank"><span class="a">getb</span></a><span class="k2">(</span> cc <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 142</span>      
<span class="number"> 143</span>         
<span class="number"> 144</span>      <span class="k1">if</span><span class="k2">(</span> r <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span>
<span class="number"> 145</span>      <span class="k2">{</span>
<span class="number"> 146</span>        it <span class="k3">=</span> r<span class="k2">;</span>
<span class="number"> 147</span>      <span class="k2">}</span>
<span class="number"> 148</span>      
<span class="number"> 149</span>      <span class="k1">if</span><span class="k2">(</span> g <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span>
<span class="number"> 150</span>      <span class="k2">{</span>
<span class="number"> 151</span>        it <span class="k3">=</span> g <span class="k2">;</span>
<span class="number"> 152</span>      <span class="k2">}</span>
<span class="number"> 153</span>      
<span class="number"> 154</span>      <span class="k1">if</span><span class="k2">(</span> b <span class="k3">&gt;</span> <span class="n">0</span> <span class="k2">)</span>
<span class="number"> 155</span>      <span class="k2">{</span>
<span class="number"> 156</span>          it <span class="k3">=</span> b <span class="k2">;</span>
<span class="number"> 157</span>      <span class="k2">}</span>
<span class="number"> 158</span>      
<span class="number"> 159</span>      r1 <span class="k3">=</span> <span class="k2">(</span>r1 <span class="k3">*</span> it<span class="k2">)</span><span class="k3">/</span><span class="n">255</span> <span class="k2">;</span>
<span class="number"> 160</span>      g1 <span class="k3">=</span> <span class="k2">(</span>g1 <span class="k3">*</span> it<span class="k2">)</span><span class="k3">/</span><span class="n">255</span> <span class="k2">;</span>
<span class="number"> 161</span>      b1 <span class="k3">=</span> <span class="k2">(</span>b1 <span class="k3">*</span> it<span class="k2">)</span><span class="k3">/</span><span class="n">255</span> <span class="k2">;</span>
<span class="number"> 162</span>      
<span class="number"> 163</span>      <span class="k1">if</span><span class="k2">(</span> r1 <span class="k3">&lt;</span> <span class="n">0</span> <span class="k2">)</span> r1 <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 164</span>      <span class="k1">if</span><span class="k2">(</span> g1 <span class="k3">&lt;</span> <span class="n">0</span> <span class="k2">)</span> g1 <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 165</span>      <span class="k1">if</span><span class="k2">(</span> b1 <span class="k3">&lt;</span> <span class="n">0</span> <span class="k2">)</span> b1 <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 166</span>      <span class="k1">if</span><span class="k2">(</span> r1 <span class="k3">&gt;</span> <span class="n">255</span> <span class="k2">)</span> r1 <span class="k3">=</span> <span class="n">255</span><span class="k2">;</span>
<span class="number"> 167</span>      <span class="k1">if</span><span class="k2">(</span> g1 <span class="k3">&gt;</span> <span class="n">255</span> <span class="k2">)</span> g1 <span class="k3">=</span> <span class="n">255</span><span class="k2">;</span>
<span class="number"> 168</span>      <span class="k1">if</span><span class="k2">(</span> b1 <span class="k3">&gt;</span> <span class="n">255</span> <span class="k2">)</span> b1 <span class="k3">=</span> <span class="n">255</span><span class="k2">;</span>
<span class="number"> 169</span>      
<span class="number"> 170</span>      <a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span> out , x , y , <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span> r1 , g1 , b1 <span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 171</span>      <span class="k2">}</span>
<span class="number"> 172</span>    <span class="k2">}</span>
<span class="number"> 173</span>  <span class="k2">}</span>
<span class="number"> 174</span><span class="k2">}</span>
<span class="number"> 175</span>
<span class="number"> 176</span><a href="http://www.allegro.cc/manual/stretch_blit" target="_blank"><span class="a">stretch_blit</span></a><span class="k2">(</span> out , buf , <span class="n">0</span> , <span class="n">0</span> , out <span class="k3">-</span><span class="k3">&gt;</span> w , out <span class="k3">-</span><span class="k3">&gt;</span> h , <span class="n">0</span> , <span class="n">0</span> , buf <span class="k3">-</span><span class="k3">&gt;</span> w , buf <span class="k3">-</span><span class="k3">&gt;</span> h <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 177</span>
<span class="number"> 178</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span> buf , <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a> , <span class="n">0</span> , <span class="n">0</span> , <span class="n">0</span> , <span class="n">0</span> , buf-&gt;w , buf-&gt;h <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 179</span>
<span class="number"> 180</span><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span> <span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC <span class="k2">]</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 181</span>
<span class="number"> 182</span><a href="http://www.allegro.cc/manual/allegro_exit" target="_blank"><span class="a">allegro_exit</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 183</span>
<span class="number"> 184</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span>
</div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Fri, 20 Apr 2007 13:24:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I only skimmed over the code but I didn&#39;t see any rgb2hsv and vice versa conversions so I&#39;m guessing you&#39;re not doing it right. What you want to do is this:</p><p>For each pixel:</p><p>1. Read colour (RGB format)<br />2. Convert to HSV<br />3. Rotate H by a certain number of degrees.<br />4. Convert back to RGB.<br />5. Write colour back to image.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (miran)</author>
		<pubDate>Fri, 20 Apr 2007 16:33:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Thanks for your help, but there is no need for me to use any other conversion than makecol and getX :-) </p><p>The color value of the input picture is here for two reason: having the form to fill with a color, and picking the value as a percentage from 0 to 255.</p><p>The whole thing is working as expected, it just need some king of optimisation as it will cause some load time.</p><p>Here is the new version, where default replacement color is on screen for us to verify that it is using it correctly.</p><p>Before:<br /> <img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/0/b/0b633403e109e01b593afa0f070baec6.jpg" alt="591976" width="165" height="140" /></p><p>After:<br /> <span class="remote-thumbnail"><span class="json">{"name":"591975","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/c\/e\/cefcd7e9c42f3ac91cf96ab1e48b02b6.jpg","w":806,"h":625,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/c\/e\/cefcd7e9c42f3ac91cf96ab1e48b02b6"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/c/e/cefcd7e9c42f3ac91cf96ab1e48b02b6-240.jpg" alt="591975" width="240" height="186" /></span></p><p><a href="http://www.allegro.cc/files/attachment/591977">Executable + source (Win32)</a> ( 7z archive )</p><p>I am waiting for give the cookies. Please post me the answer ;-) huhuhu
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Fri, 20 Apr 2007 17:32:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>As requested, a post so you can hand out cookies.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Indeterminatus)</author>
		<pubDate>Fri, 20 Apr 2007 17:50:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>;-p
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Fri, 20 Apr 2007 17:57:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Your pictures look like they contain a large ammount of dead space.  If your checking every pixel in the large space perhaps you could divide and conquer.  Only check every nth pixel (in both dimensions) if the nth pixel is one that needs to be changed then go back n/2 and check that pixel (and so on).  You value for n would have to be one where you won&#39;t missed anything important so if your working on a picture with skinny lines it won&#39;t help but even at n=2 you&#39;ll save a lot of time.  Basically trading precision for speed.</p><p>Matt.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matt Weir)</author>
		<pubDate>Sat, 21 Apr 2007 05:21:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
What is the way , faster than getpixel, that I can use ?
</p></div></div><p>
<span class="source-code"><a href="http://www.allegro.cc/manual/_getpixel" target="_blank"><span class="a">_getpixel</span></a></span><br />If the colour-depth is known, you might want to use getr8, getr16, getr24, getr32 etc. instead of getr.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
r1 = (r1 * it)/255 ;
</p></div></div><p>
If you don&#39;t mind the result being in the range 0-254 instead of 0-255, you can divide by using a shift. The code would then become.<span class="source-code">r1 <span class="k3">=</span> <span class="k2">(</span>r1 <span class="k3">*</span> it<span class="k2">)</span><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">8</span><span class="k2">;</span></span>. While not as accurate as the /255 method, it will be a lot faster.</p><p>Also, you might want to consider using 8-bit graphics and using colour-map tables and draw_lit_sprite().</p><p>AE.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Andrei Ellman)</author>
		<pubDate>Sun, 22 Apr 2007 23:24:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Matt Weir: This is only a test picture extracted from an animation, the picture when in it final form is &#39;clipped&#39; to the nearest non-masked pixel. Anyway thanks for the tip ! </p><p>Andrei: I will try the _getpixel way. Also: the &gt;&gt;8 seems good too.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Mon, 23 Apr 2007 00:15:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>GIMP rules.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (James Stanley)</author>
		<pubDate>Fri, 27 Apr 2007 17:34:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yeah perhaps. But GIMP does not do real time painting in my code.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Sat, 28 Apr 2007 02:14:16 +0000</pubDate>
	</item>
</rss>
