<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>[GL] Masked sprite in 16 bits.</title>
		<link>http://www.allegro.cc/forums/view/586613</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Mon, 24 Jul 2006 17:29:44 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hello all.</p><p>I would like to know if it&#39;s possible to display a masked sprite in 16 bits with Allegro GL.</p><div class="source-code snippet"><div class="inner"><pre><span class="c">/* the desktop is 16 bpp */</span>
<span class="k1">int</span> nColDepth<span class="k2">;</span>
GLuint tex_nb<span class="k2">;</span>

nColDepth <span class="k3">=</span> <span class="n">16</span><span class="k2">;</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>nColDepth<span class="k2">)</span><span class="k2">;</span>
allegro_gl_set<span class="k2">(</span>AGL_COLOR_DEPTH, nColDepth<span class="k2">)</span><span class="k2">;</span>  

tex_nb <span class="k3">=</span> allegro_gl_make_texture_ex<span class="k2">(</span>nFlags, bmpTex, internal_format<span class="k2">)</span><span class="k2">;</span>
<span class="c">/* I have tried with internal_format=GL_RGBA8 and =GL_RGB8 */</span>
</pre></div></div><p>

- With a 16 bit desktop, and with nColDepth=16, it crashes if nFlags contains the bit AGL_TEXTURE_HAS_ALPHA or AGL_TEXTURE_MASKED. Here are the last words of Allegro.log : 
</p><div class="source-code snippet"><div class="inner"><pre><span class="k3">*</span> Note <span class="k3">*</span> make_texture_ex: Preselected texture format: <span class="n">0x1907</span>, type: <span class="n">0x8363</span>
<span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Need to perform depth conversion from <span class="n">16</span> to <span class="n">16</span> bpp.
<span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Flipping bitmap.
<span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Copying bitmap.
<span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Inserting alpha channel.
</pre></div></div><p>
If i don&#39;t put any of these 2 bit-flags, it works, but obviously without alpha channel and without mask color (draw the rectangle entirely).<br />Maybe it has something to do with the internal_format value: GL_RGBA8,GL_RGB8,other: what would you suggest for a masked bitmap?</p><p>- With a 32 bit desktop, and with nColDepth=32, all works fine, regardless of the nFlags value.</p><p>You may wonder why 16 bpp, although 32 bpp works perfectly... The answer is that i want to test some other possibilities, to see how many FPS are saved this way, and if it does worth it...</p><p>Thank you in advance for your help.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (anto80)</author>
		<pubDate>Sat, 22 Jul 2006 16:34:43 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>If your bitmap does not actually contain an alpha channel (which is the case for 16-bit), you probably want to use the AGL_TEXTURE_MASKED flag. AGL_TEXTURE_HAS_ALPHA is only used on 32-bit bitmaps where the alpha channel contains actual alpha values (insetad of 0, which is what Allegro typically loads there).</p><p>However, the log you&#39;ve pasted does not match what the code should be doing for AGL_TEXTURE_MASKED. Is this correct?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Bob)</author>
		<pubDate>Sat, 22 Jul 2006 20:05:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
If your bitmap does not actually contain an alpha channel (which is the case for 16-bit), you probably want to use the AGL_TEXTURE_MASKED flag. AGL_TEXTURE_HAS_ALPHA is only used on 32-bit bitmaps where the alpha channel contains actual alpha values (insetad of 0, which is what Allegro typically loads there).
</p></div></div><p>
I agree with you totally. I am using 16 bit bitmaps in this case, with the mask-color equals to RGB(255,0,255), and the AGL_TEXTURE_MASKED flag.<br />For your information these bitmap are created internally by create_bitmap(), then cleared by clear_to_color(makecol(255,0,255));<br />for example I put a glyph on it like this textprintf(bmpTmp, font, 0,0, makecol(255,0,0), &quot;a&quot;);</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
However, the log you&#39;ve pasted does not match what the code should be doing for AGL_TEXTURE_MASKED. Is this correct?
</p></div></div><p>
The log file correspond to what is described just above. Even the line &quot;* Note * munge_bitmap: Inserting alpha channel.&quot;<br />Yes, it is the AGL_TEXTURE_MASKED flag.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (anto80)</author>
		<pubDate>Sun, 23 Jul 2006 16:43:21 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>This line can&#39;t be right:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Need to perform depth conversion from <span class="n">16</span> to <span class="n">16</span> bpp.
</pre></div></div><p>

The code in AGL is:
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td>&#160;</td></tr><tr><td class="number">2</td><td>  <span class="k1">int</span> depth <span class="k3">=</span> <a href="http://www.allegro.cc/manual/bitmap_color_depth" target="_blank"><span class="a">bitmap_color_depth</span></a><span class="k2">(</span>bmp<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">3</td><td>  <span class="k1">int</span> force_copy   <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">4</td><td>&#160;</td></tr><tr><td class="number">5</td><td><span class="k2">[</span>snip<span class="k2">]</span></td></tr><tr><td class="number">6</td><td>&#160;</td></tr><tr><td class="number">7</td><td>  <span class="c">/* We need a texture that can be used for masked blits.</span></td></tr><tr><td class="number">8</td><td><span class="c">   * Insert an alpha channel if one is not there.</span></td></tr><tr><td class="number">9</td><td><span class="c">   * If it's already there, replace it by 0/1 as needed.</span></td></tr><tr><td class="number">10</td><td><span class="c">   */</span></td></tr><tr><td class="number">11</td><td>  <span class="k1">if</span> <span class="k2">(</span><span class="k2">(</span>flags <span class="k3">&amp;</span> AGL_TEXTURE_MASKED<span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span><span class="k2">(</span>flags <span class="k3">&amp;</span> AGL_TEXTURE_ALPHA_ONLY<span class="k2">)</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">12</td><td>    need_alpha <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">13</td><td>&#160;</td></tr><tr><td class="number">14</td><td>    <span class="k1">switch</span> <span class="k2">(</span>depth<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">15</td><td>    <span class="k1">case</span> <span class="n">15</span><span class="k2">:</span></td></tr><tr><td class="number">16</td><td>      <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>allegro_gl_extensions_GL.EXT_packed_pixels<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">17</td><td>        depth <span class="k3">=</span> <span class="n">32</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>      <span class="k2">}</span></td></tr><tr><td class="number">19</td><td>      <span class="k1">break</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>    <span class="k1">case</span> <span class="n">8</span><span class="k2">:</span></td></tr><tr><td class="number">21</td><td>    <span class="k1">case</span> <span class="n">16</span><span class="k2">:</span></td></tr><tr><td class="number">22</td><td>    <span class="k1">case</span> <span class="n">24</span><span class="k2">:</span></td></tr><tr><td class="number">23</td><td>    <span class="k1">case</span> <span class="n">32</span><span class="k2">:</span></td></tr><tr><td class="number">24</td><td>      depth <span class="k3">=</span> <span class="n">32</span><span class="k2">;</span></td></tr><tr><td class="number">25</td><td>      <span class="k1">break</span><span class="k2">;</span></td></tr><tr><td class="number">26</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">27</td><td>    force_copy <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">28</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">29</td><td>&#160;</td></tr><tr><td class="number">30</td><td><span class="k2">[</span>snip<span class="k2">]</span></td></tr><tr><td class="number">31</td><td>  </td></tr><tr><td class="number">32</td><td>  <span class="c">/* Do we need to do a color depth conversion or bitmap copy? */</span></td></tr><tr><td class="number">33</td><td>  <span class="k1">if</span> <span class="k2">(</span>depth <span class="k3">!</span><span class="k3">=</span> <a href="http://www.allegro.cc/manual/bitmap_color_depth" target="_blank"><span class="a">bitmap_color_depth</span></a><span class="k2">(</span>bmp<span class="k2">)</span> <span class="k3">|</span><span class="k3">|</span> force_copy<span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">34</td><td>&#160;</td></tr><tr><td class="number">35</td><td>    <a href="http://www.allegro.cc/manual/TRACE" target="_blank"><span class="a">TRACE</span></a><span class="k2">(</span>PREFIX_I <span class="s">"munge_bitmap: Need to perform depth conversion from %i "</span></td></tr><tr><td class="number">36</td><td>          <span class="s">"to %i bpp.\n"</span>, <a href="http://www.allegro.cc/manual/bitmap_color_depth" target="_blank"><span class="a">bitmap_color_depth</span></a><span class="k2">(</span>bmp<span class="k2">)</span>, depth<span class="k2">)</span><span class="k2">;</span></td></tr></tbody></table></div></div><p>

As you can see, a depth of 16 should force AGL to upconvert the bitmap to 32 bits. That&#39;s not happening according to your log file.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Bob)</author>
		<pubDate>Sun, 23 Jul 2006 20:55:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I can assure you i didn&#39;t altered the code nor the log file.</p><p>I&#39;ll post my actual code in a few minutes so you will see.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (anto80)</author>
		<pubDate>Sun, 23 Jul 2006 21:39:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>In that case, please attach the source to a small program to demonstrate the problem. Also please attach the full allegro.log file.</p><p>Thanks.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Bob)</author>
		<pubDate>Sun, 23 Jul 2006 21:41:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Main example :</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="c">/* [edit] uptaded code. */</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;stdio.h&gt;</span></td></tr><tr><td class="number">3</td><td><span class="p">#include &lt;allegro.h&gt;</span></td></tr><tr><td class="number">4</td><td><span class="p">#include &lt;alleggl.h&gt;</span></td></tr><tr><td class="number">5</td><td><span class="p">#include &lt;winalleg.h&gt;</span></td></tr><tr><td class="number">6</td><td><span class="p">#include &lt;windows.h&gt;</span></td></tr><tr><td class="number">7</td><td>&#160;</td></tr><tr><td class="number">8</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k1">void</span><span class="k2">)</span></td></tr><tr><td class="number">9</td><td><span class="k2">{</span></td></tr><tr><td class="number">10</td><td>  <span class="k1">int</span>    nColDepth<span class="k2">;</span></td></tr><tr><td class="number">11</td><td>&#160;</td></tr><tr><td class="number">12</td><td>  nColDepth <span class="k3">=</span> <span class="n">16</span><span class="k2">;</span><span class="c">//32;</span></td></tr><tr><td class="number">13</td><td>&#160;</td></tr><tr><td class="number">14</td><td>  <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></td></tr><tr><td class="number">15</td><td>  install_allegro_gl<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td>&#160;</td></tr><tr><td class="number">17</td><td>        <a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>        <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></td></tr><tr><td class="number">19</td><td>  <a href="http://www.allegro.cc/manual/install_joystick" target="_blank"><span class="a">install_joystick</span></a><span class="k2">(</span>JOY_TYPE_AUTODETECT<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>  <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></td></tr><tr><td class="number">21</td><td>  <a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a><span class="k2">(</span>nColDepth<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>  <a href="http://www.allegro.cc/manual/set_trans_blender" target="_blank"><span class="a">set_trans_blender</span></a><span class="k2">(</span><span class="n">255</span>, <span class="n">255</span>, <span class="n">255</span>, <span class="n">128</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">23</td><td>  text_mode<span class="k2">(</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td>  </td></tr><tr><td class="number">25</td><td>  <span class="c">/*--- Alleg GL inits --------------------------------------------------*/</span></td></tr><tr><td class="number">26</td><td>  allegro_gl_clear_settings<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">27</td><td>  allegro_gl_set<span class="k2">(</span>AGL_COLOR_DEPTH, nColDepth<span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">28</td><td>  allegro_gl_set<span class="k2">(</span>AGL_Z_DEPTH, <span class="n">8</span><span class="k2">)</span><span class="k2">;</span> <span class="c">// for 3D polygon sorting</span></td></tr><tr><td class="number">29</td><td>  allegro_gl_set<span class="k2">(</span>AGL_WINDOWED, <span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">30</td><td>  allegro_gl_set<span class="k2">(</span>AGL_DOUBLEBUFFER, <span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">31</td><td>  allegro_gl_set<span class="k2">(</span>AGL_RENDERMETHOD, <span class="n">1</span><span class="k2">)</span><span class="k2">;</span>    </td></tr><tr><td class="number">32</td><td>  allegro_gl_set<span class="k2">(</span>AGL_SUGGEST, AGL_Z_DEPTH<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">33</td><td>  allegro_gl_set<span class="k2">(</span>AGL_REQUIRE, AGL_DOUBLEBUFFER<span class="k3">|</span>AGL_RENDERMETHOD<span class="k3">|</span>AGL_COLOR_DEPTH<span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">34</td><td>  </td></tr><tr><td class="number">35</td><td>  <span class="k1">if</span> <span class="k2">(</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_OPENGL,     </td></tr><tr><td class="number">36</td><td>    <span class="n">640</span>, <span class="n">480</span>,  </td></tr><tr><td class="number">37</td><td>    <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">)</span> </td></tr><tr><td class="number">38</td><td>  <span class="k2">{</span></td></tr><tr><td class="number">39</td><td>    <a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"Error initializing\n"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">40</td><td>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">41</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">42</td><td>  glMatrixMode<span class="k2">(</span>GL_PROJECTION<span class="k2">)</span><span class="k2">;</span>    <span class="c">/* I am setting a state where I am editing the projection matrix... */</span></td></tr><tr><td class="number">43</td><td>  glLoadIdentity<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>          <span class="c">/* Clearing the projection matrix... */</span>    </td></tr><tr><td class="number">44</td><td>  glOrtho<span class="k2">(</span><span class="n">0</span>, <span class="n">640</span>, <span class="n">0</span>, <span class="n">480</span>, <span class="k3">-</span><span class="n">1</span>, <span class="n">1</span><span class="k2">)</span><span class="k2">;</span>  <span class="c">/* Creating an orthoscopic view matrix going from -1 -&gt; 1 in each dimension on the screen (x, y, z).  we will always draw our 2D objects at z equal to zero. */</span> </td></tr><tr><td class="number">45</td><td>  glMatrixMode<span class="k2">(</span>GL_MODELVIEW<span class="k2">)</span><span class="k2">;</span>      <span class="c">/* Now editing the model-view matrix. */</span></td></tr><tr><td class="number">46</td><td>  glLoadIdentity<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>          <span class="c">/* Clearing the model-view matrix. */</span></td></tr><tr><td class="number">47</td><td>  glDisable<span class="k2">(</span>GL_DEPTH_TEST<span class="k2">)</span><span class="k2">;</span>      <span class="c">/* Disabling the depth test (z will not be used to tell what object will be shown above another, only the order in which I draw them.) */</span></td></tr><tr><td class="number">48</td><td>  glEnable<span class="k2">(</span>GL_TEXTURE_2D<span class="k2">)</span><span class="k2">;</span>      <span class="c">/* Enable texturing on all models for now on. */</span></td></tr><tr><td class="number">49</td><td>  glEnable<span class="k2">(</span>GL_BLEND<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">50</td><td>  </td></tr><tr><td class="number">51</td><td>        glClearColor<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">0</span><span class="k2">)</span><span class="k2">;</span>  <span class="c">/* Set the background color to black */</span></td></tr><tr><td class="number">52</td><td>&#160;</td></tr><tr><td class="number">53</td><td>  <a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> bmp1 <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><span class="n">32</span>, <span class="n">32</span><span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">54</td><td>  <a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>bmp1, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">55</td><td>  textprintf<span class="k2">(</span>bmp1, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">0</span>,<span class="n">0</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>, <span class="s">"ab"</span><span class="k2">)</span><span class="k2">;</span> <span class="c">/* blue */</span></td></tr><tr><td class="number">56</td><td>&#160;</td></tr><tr><td class="number">57</td><td>  GLuint tex_nb1 <span class="k3">=</span> allegro_gl_make_texture_ex<span class="k2">(</span></td></tr><tr><td class="number">58</td><td>                AGL_TEXTURE_FLIP<span class="k3">|</span>AGL_TEXTURE_MASKED,</td></tr><tr><td class="number">59</td><td>    bmp1, GL_RGBA8<span class="k2">)</span><span class="k2">;</span> <span class="c">// &lt;-- crashes HERE.</span></td></tr><tr><td class="number">60</td><td>&#160;</td></tr><tr><td class="number">61</td><td>        <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>bmp1<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">62</td><td>&#160;</td></tr><tr><td class="number">63</td><td>  <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">64</td><td><span class="k2">}</span></td></tr><tr><td class="number">65</td><td><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></td></tr></tbody></table></div></div><p>

The allegro.log:
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td>al-main INFO: Allegro initialised <span class="k2">(</span>instance <span class="n">1</span><span class="k2">)</span></td></tr><tr><td class="number">2</td><td>al-gfx INFO: Called <a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span><span class="n">1330072644</span>, <span class="n">640</span>, <span class="n">480</span>, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span>.</td></tr><tr><td class="number">3</td><td>al-gfx INFO: Firt call, remembering console state.</td></tr><tr><td class="number">4</td><td><span class="k3">*</span> Note <span class="k3">*</span> default_gfx_init: Trying to set up windowed mode...</td></tr><tr><td class="number">5</td><td><span class="k3">*</span> Note <span class="k3">*</span> win_init<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> Requested color depth: <span class="n">16</span>  Desktop color depth: <span class="n">16</span></td></tr><tr><td class="number">6</td><td><span class="k3">*</span> Note <span class="k3">*</span> win_init<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> Setting up window.</td></tr><tr><td class="number">7</td><td><span class="k3">*</span> Note <span class="k3">*</span> win_init<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> Driver selected fullscreen: No</td></tr><tr><td class="number">8</td><td><span class="k3">*</span> Note <span class="k3">*</span> win_init<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> Setting pixel format.</td></tr><tr><td class="number">9</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> Trying to set up temporary RC</td></tr><tr><td class="number">10</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> ChoosePixelFormat<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">11</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> SetPixelFormat<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">12</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> CreateContext<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">13</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> MakeCurrent<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">14</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> GetExtensionsStringARB<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">15</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> GetProcAddress<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">16</td><td><span class="k3">*</span> Note <span class="k3">*</span> get_num_pixel_formats<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> Attempting to use WGL_pf.</td></tr><tr><td class="number">17</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> <span class="n">42</span> formats.</td></tr><tr><td class="number">18</td><td><span class="k3">*</span> Note <span class="k3">*</span> select_pixel_format<span class="k2">(</span><span class="k2">)</span><span class="k2">:</span> Testing pixel formats:</td></tr><tr><td class="number">19</td><td>Format <span class="n">1</span><span class="k2">:</span></td></tr><tr><td class="number">20</td><td>&#160;</td></tr><tr><td class="number">21</td><td><span class="k2">[</span>...<span class="k2">]</span> <span class="c">/* formats 1 to 3 */</span></td></tr><tr><td class="number">22</td><td> </td></tr><tr><td class="number">23</td><td>Format <span class="n">4</span><span class="k2">:</span></td></tr><tr><td class="number">24</td><td> Decoding: </td></tr><tr><td class="number">25</td><td>  Acceleration: Yes RGBA: <span class="n">5</span>.<span class="n">6</span>.<span class="n">5</span>.<span class="n">0</span> Accum: <span class="n">16</span>.<span class="n">16</span>.<span class="n">16</span>.<span class="n">16</span></td></tr><tr><td class="number">26</td><td>  DblBuf: <span class="n">1</span> Zbuf: <span class="n">16</span> Stereo: <span class="n">0</span> Aux: <span class="n">0</span> Stencil: <span class="n">0</span> Shift: <span class="n">11</span>.<span class="n">5</span>.<span class="n">0</span>.<span class="n">0</span></td></tr><tr><td class="number">27</td><td>  Sample Buffers: <span class="n">0</span> Samples: <span class="n">0</span></td></tr><tr><td class="number">28</td><td>  Decoded bpp: <span class="n">16</span> </td></tr><tr><td class="number">29</td><td>  Score is <span class="k2">:</span> <span class="n">585</span></td></tr><tr><td class="number">30</td><td>&#160;</td></tr><tr><td class="number">31</td><td><span class="k2">[</span>...<span class="k2">]</span> <span class="c">/* formats 5 to 41 */</span></td></tr><tr><td class="number">32</td><td>&#160;</td></tr><tr><td class="number">33</td><td>Format <span class="n">42</span><span class="k2">:</span></td></tr><tr><td class="number">34</td><td> Decoding: </td></tr><tr><td class="number">35</td><td>  Can<span class="s">'t draw to window</span></td></tr><tr><td class="number">36</td><td><span class="s"></span></td></tr><tr><td class="number">37</td><td><span class="s">* Note * select_pixel_format(): Best config is: 4</span></td></tr><tr><td class="number">38</td><td><span class="s">Decoding: </span></td></tr><tr><td class="number">39</td><td><span class="s">  Acceleration: Yes RGBA: 5.6.5.0 Accum: 16.16.16.16</span></td></tr><tr><td class="number">40</td><td><span class="s">  DblBuf: 1 Zbuf: 16 Stereo: 0 Aux: 0 Stencil: 0 Shift: 11.5.0.0</span></td></tr><tr><td class="number">41</td><td><span class="s">  Sample Buffers: 0 Samples: 0</span></td></tr><tr><td class="number">42</td><td><span class="s">  Decoded bpp: 16 </span></td></tr><tr><td class="number">43</td><td><span class="s">  Score is : 841</span></td></tr><tr><td class="number">44</td><td><span class="s"></span></td></tr><tr><td class="number">45</td><td><span class="s">* Note * win_init(): GLScreen: 640x480x16</span></td></tr><tr><td class="number">46</td><td><span class="s"></span></td></tr><tr><td class="number">47</td><td><span class="s">OpenGL Version: 1.3.0 - Build 4.14.10.4342</span></td></tr><tr><td class="number">48</td><td><span class="s">Vendor: Intel</span></td></tr><tr><td class="number">49</td><td><span class="s">Renderer: Intel 845G</span></td></tr><tr><td class="number">50</td><td><span class="s"></span></td></tr><tr><td class="number">51</td><td><span class="s">GLU Version : 1.2.2.0 Microsoft Corporation</span></td></tr><tr><td class="number">52</td><td><span class="s"></span></td></tr><tr><td class="number">53</td><td><span class="s"></span></td></tr><tr><td class="number">54</td><td><span class="s">al-gfx INFO: The driver will wait for vsync.</span></td></tr><tr><td class="number">55</td><td><span class="s">al-gfx INFO: set_gfx_card success for 640x480x16.</span></td></tr><tr><td class="number">56</td><td><span class="s">* Note * make_texture_ex: flags: AGL_TEXTURE_FLIP|AGL_TEXTURE_MASKED|, bitmap 32x32, 16 bpp. internalformat: 0x8058</span></td></tr><tr><td class="number">57</td><td><span class="s">* Note * make_texture_ex: Preselected texture format: 0x1907, type: 0x8363</span></td></tr><tr><td class="number">58</td><td><span class="s">* Note * munge_bitmap: Need to perform depth conversion from 16 to 16 bpp.</span></td></tr><tr><td class="number">59</td><td><span class="s">* Note * munge_bitmap: Flipping bitmap.</span></td></tr><tr><td class="number">60</td><td><span class="s">* Note * munge_bitmap: Copying bitmap.</span></td></tr><tr><td class="number">61</td><td><span class="s">* Note * munge_bitmap: Inserting alpha channel.</span></td></tr></tbody></table></div></div><p>

Hmm..... now that i posted it, it seems there&#39;s something to do with the line &quot;Acceleration: Yes RGBA: 5.6.5.0 Accum: 16.16.16.16&quot;. That is to say, i think i have to change this bit arrangement [5-6-5-0] to something else with the &#39;A&#39; value&gt;0.<br />What do you think about that?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (anto80)</author>
		<pubDate>Sun, 23 Jul 2006 21:57:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Your code does not compile.</p><div class="source-code snippet"><div class="inner"><pre>$ gcc temp.c <span class="k3">-</span>o temp.exe <span class="k3">-</span>mwindows <span class="k3">-</span>W <span class="k3">-</span>Wall <span class="k3">-</span>Wno-unused <span class="k3">-</span>O2 <span class="k3">-</span>ffast-math <span class="k3">-</span>fomit-
frame-pointer <span class="k3">-</span>mtune<span class="k3">=</span>i686 <span class="k3">-</span>mno-cygwin <span class="k3">-</span>lagl  <span class="k3">-</span>lalleg <span class="k3">-</span>luser32 <span class="k3">-</span>lgdi32 <span class="k3">-</span>lglu32 <span class="k3">-</span>
lopengl32 <span class="k3">-</span>L<span class="k3">/</span>lib<span class="k3">/</span>mingw <span class="k3">-</span>lmoldname <span class="k3">-</span>lmsvcrt
temp.c: In function `_mangled_main<span class="s">':</span>
<span class="s">temp.c:22: warning: `text_mode'</span> is deprecated <span class="k2">(</span>declared at <span class="k3">/</span>usr<span class="k3">/</span>local<span class="k3">/</span>include<span class="k3">/</span>al
legro<span class="k3">/</span>alcompat.h:153<span class="k2">)</span>
temp.c:28: error: `nDisplayFlags<span class="s">' undeclared (first use in this function)</span>
<span class="s">temp.c:28: error: (Each undeclared identifier is reported only once</span>
<span class="s">temp.c:28: error: for each function it appears in.)</span>
<span class="s">temp.c:28: error: `DISPFLG_WINDOWED'</span> undeclared <span class="k2">(</span>first use in <span class="k1">this</span> function<span class="k2">)</span>
temp.c:43: error: `WINDOW_W<span class="s">' undeclared (first use in this function)</span>
<span class="s">temp.c:43: error: `WINDOW_H'</span> undeclared <span class="k2">(</span>first use in <span class="k1">this</span> function<span class="k2">)</span>
temp.c:54: warning: `textprintf<span class="s">' is deprecated (declared at /usr/local/include/a</span>
<span class="s">llegro/alcompat.h:175)</span>
</pre></div></div><p>

Also, can you attach the image file you are using?</p><p>Thanks.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Bob)</author>
		<pubDate>Sun, 23 Jul 2006 22:17:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sorry i had some defines in my MSVC project settings... My fault, sorry. I have updated the code. Should be correct now.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Also, can you attach the image file you are using?
</p></div></div><p>As i said in my 2nd post, the bitmap is created internally. the code is here:
</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> bmp1 <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><span class="n">32</span>, <span class="n">32</span><span class="k2">)</span><span class="k2">;</span>
<a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>bmp1, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
textprintf<span class="k2">(</span>bmp1, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">0</span>,<span class="n">0</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>, <span class="s">"ab"</span><span class="k2">)</span><span class="k2">;</span> <span class="c">/* blue */</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (anto80)</author>
		<pubDate>Sun, 23 Jul 2006 22:25:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It works for me.
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td>&#160;</td></tr><tr><td class="number">2</td><td>OpenGL Version: <span class="n">2</span>.<span class="n">0</span>.<span class="n">1</span></td></tr><tr><td class="number">3</td><td>Vendor: NVIDIA Corporation</td></tr><tr><td class="number">4</td><td>Renderer: GeForce FX <span class="n">5900</span><span class="k3">/</span>AGP<span class="k3">/</span>SSE<span class="k3">/</span><span class="n">3D</span>NOW<span class="k3">!</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td>GLU Version <span class="k2">:</span> <span class="n">1</span>.<span class="n">2</span>.<span class="n">2</span>.<span class="n">0</span> Microsoft Corporation</td></tr><tr><td class="number">7</td><td>&#160;</td></tr><tr><td class="number">8</td><td>&#160;</td></tr><tr><td class="number">9</td><td>al-gfx INFO: The driver will <a href="http://www.delorie.com/djgpp/doc/libc/libc_858.html" target="_blank">wait</a> <span class="k1">for</span> vsync.</td></tr><tr><td class="number">10</td><td>al-gfx INFO: set_gfx_card success <span class="k1">for</span> <span class="n">640x480x16</span>.</td></tr><tr><td class="number">11</td><td><span class="k3">*</span> Note <span class="k3">*</span> make_texture_ex: flags: AGL_TEXTURE_FLIP<span class="k3">|</span>AGL_TEXTURE_MASKED<span class="k3">|</span>, bitmap <span class="n">32x32</span>, <span class="n">16</span> bpp. internalformat: <span class="n">0x8058</span></td></tr><tr><td class="number">12</td><td><span class="k3">*</span> Note <span class="k3">*</span> make_texture_ex: Preselected texture format: <span class="n">0x1907</span>, type: <span class="n">0x8363</span></td></tr><tr><td class="number">13</td><td><span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Need to perform depth conversion from <span class="n">16</span> to <span class="n">32</span> bpp.</td></tr><tr><td class="number">14</td><td><span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Flipping bitmap.</td></tr><tr><td class="number">15</td><td><span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Copying bitmap.</td></tr><tr><td class="number">16</td><td><span class="k3">*</span> Note <span class="k3">*</span> munge_bitmap: Inserting alpha channel.</td></tr></tbody></table></div></div><p>

What version of AllegroGL do you have?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Bob)</author>
		<pubDate>Sun, 23 Jul 2006 22:30:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>AllegroGL : Latest (0.2.5CVS)</p><p>OpenGL: latest drivers for my video card (updated last week).
</p><div class="source-code snippet"><div class="inner"><pre>OpenGL Version: <span class="n">1</span>.<span class="n">3</span>.<span class="n">0</span> <span class="k3">-</span> Build <span class="n">4</span>.<span class="n">14</span>.<span class="n">10</span>.<span class="n">4342</span>
Vendor: Intel
Renderer: Intel <span class="n">845</span>G
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (anto80)</author>
		<pubDate>Sun, 23 Jul 2006 22:37:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
AllegroGL : Latest (0.2.5CVS)
</p></div></div><p>
0.4.0-RC4 is the latest. That said, this code in particular has not changed since.</p><p>The only thing I can recommend at this point is to step through the agl_make_texture_ex() call and try and find out why it thinks it needs to do a 16-&gt;16 conversion instead of 16-&gt;32.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Bob)</author>
		<pubDate>Sun, 23 Jul 2006 22:40:22 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Just be sure, try create_bitmap_ex(32, 32, 16) instead of create_bitmap.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Milan Mimica)</author>
		<pubDate>Mon, 24 Jul 2006 00:16:33 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You were right. create_bitmap_ex(32, w, h) prevents from crashing. The bitmap Thanks.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (anto80)</author>
		<pubDate>Mon, 24 Jul 2006 17:17:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I meant create_bitmap_ex(16, w, h), sorry. The create_bitmap_ex(32, w, h) prevents crashing because It creates a 32-bit bitmap and that&#39;s not what you want.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Milan Mimica)</author>
		<pubDate>Mon, 24 Jul 2006 17:29:44 +0000</pubDate>
	</item>
</rss>
