<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Does GlyphKeeper+OpenGL  work &lt; 32bit depth ?</title>
		<link>http://www.allegro.cc/forums/view/588697</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Thu, 23 Nov 2006 05:11:48 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Maybe the topic says it all, I tried my project on linux the other day under a driver that didn&#39;t support 32bit colour depths, most things worked, one of the things that didn&#39;t was any text rendered with GK.</p><p>I tried the same thing on windows in 16bit with the same results, is this a known problem?</p><p>I&#39;m guessing I&#39;m just doing something wrong because I assume there would be the same problem in OpenLayer?</p><p>Here&#39;s a test that doesn&#39;t work for me in &lt; 32bit, I know I&#39;m misusing makeacol but I don&#39;t think that matters, the alpha whould still be 255.???
</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="p">#include &lt;allegro.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;alleggl.h&gt;</span></td></tr><tr><td class="number">3</td><td><span class="p">#define GLYPH_TARGET GLYPH_TARGET_ALLEGGL</span></td></tr><tr><td class="number">4</td><td><span class="p">#include &lt;glyph.h&gt;</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">7</td><td><span class="k2">{</span></td></tr><tr><td class="number">8</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">9</td><td>   install_allegro_gl<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">10</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">11</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">12</td><td>  </td></tr><tr><td class="number">13</td><td>   allegro_gl_clear_settings<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td>   allegro_gl_set<span class="k2">(</span>AGL_COLOR_DEPTH, <span class="n">32</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">15</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">16</td><td>   allegro_gl_set<span class="k2">(</span>AGL_SUGGEST, AGL_DOUBLEBUFFER <span class="k3">|</span> AGL_COLOR_DEPTH <span class="k3">|</span> AGL_WINDOWED<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">17</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_WINDOWED, <span class="n">800</span>, <span class="n">600</span>, <span class="n">0</span>, <span class="n">0</span><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/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"Error initializing OpenGL!\n"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td>    <span class="k1">return</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>   <span class="k2">}</span></td></tr><tr><td class="number">21</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="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>&#160;</td></tr><tr><td class="number">23</td><td>   <span class="k1">char</span><span class="k3">*</span> fontfile <span class="k3">=</span> <span class="s">"Vera.TTF"</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td>   GLYPH_FACE<span class="k3">*</span> face<span class="k2">;</span></td></tr><tr><td class="number">25</td><td>   GLYPH_REND<span class="k3">*</span> rend<span class="k2">;</span></td></tr><tr><td class="number">26</td><td>   GLYPH_TEXTURE <span class="k3">*</span>texture<span class="k2">;</span></td></tr><tr><td class="number">27</td><td>&#160;</td></tr><tr><td class="number">28</td><td>   face <span class="k3">=</span> gk_load_face_from_file<span class="k2">(</span>fontfile,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">29</td><td>   <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>face<span class="k2">)</span> <span class="k2">{</span> <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">"Can't load font from \"%s\"\n"</span>,fontfile<span class="k2">)</span><span class="k2">;</span> <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> <span class="k2">}</span></td></tr><tr><td class="number">30</td><td>&#160;</td></tr><tr><td class="number">31</td><td>   rend <span class="k3">=</span> gk_create_renderer<span class="k2">(</span>face,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">32</td><td>   <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>rend<span class="k2">)</span> <span class="k2">{</span> <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">"Can't create renderer"</span><span class="k2">)</span><span class="k2">;</span> <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> <span class="k2">}</span></td></tr><tr><td class="number">33</td><td>&#160;</td></tr><tr><td class="number">34</td><td>   gk_rend_set_size_pixels<span class="k2">(</span>rend,<span class="n">30</span>,<span class="n">30</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">35</td><td>&#160;</td></tr><tr><td class="number">36</td><td>   texture <span class="k3">=</span> gk_create_texture<span class="k2">(</span> rend, <span class="n">32</span>, <span class="n">96</span> <span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">37</td><td>&#160;</td></tr><tr><td class="number">38</td><td>&#160;</td></tr><tr><td class="number">39</td><td>   <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></td></tr><tr><td class="number">40</td><td>   <span class="k2">{</span></td></tr><tr><td class="number">41</td><td>      glClear<span class="k2">(</span>GL_COLOR_BUFFER_BIT<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">42</td><td>&#160;</td></tr><tr><td class="number">43</td><td>      gk_rend_set_text_alpha_color<span class="k2">(</span> rend, <a href="http://www.allegro.cc/manual/makeacol" target="_blank"><span class="a">makeacol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span> <span class="c">// Note B G R A</span></td></tr><tr><td class="number">44</td><td>      gk_render_line_gl_utf8<span class="k2">(</span>texture, <span class="s">"Hello World"</span>,<span class="n">100</span>,<span class="n">100</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">45</td><td>&#160;</td></tr><tr><td class="number">46</td><td>&#160;</td></tr><tr><td class="number">47</td><td>      gk_rend_set_text_alpha_color<span class="k2">(</span> rend, <a href="http://www.allegro.cc/manual/makeacol" target="_blank"><span class="a">makeacol</span></a><span class="k2">(</span><span class="n">0</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> <span class="c">// Note B G R A</span></td></tr><tr><td class="number">48</td><td>      gk_render_line_gl_utf8<span class="k2">(</span>texture, <span class="s">"Hello World"</span>,<span class="n">100</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">49</td><td>&#160;</td></tr><tr><td class="number">50</td><td>      allegro_gl_flip<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> </td></tr><tr><td class="number">51</td><td>   <span class="k2">}</span></td></tr><tr><td class="number">52</td><td>&#160;</td></tr><tr><td class="number">53</td><td>   <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">54</td><td><span class="k2">}</span></td></tr><tr><td class="number">55</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><span class="k2">;</span></td></tr></tbody></table></div></div><p>

edit:<br /><s>is it just that    glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );
can&#39;t work with no alpha channel ?</s> that&#39;s source not dest, nevermind
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kikabo)</author>
		<pubDate>Thu, 23 Nov 2006 05:11:48 +0000</pubDate>
	</item>
</rss>
