<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Dissapearing vector</title>
		<link>http://www.allegro.cc/forums/view/590630</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Tue, 20 Mar 2007 20:12:13 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hello All!</p><p>I am currently writing a game that uses a double buffering system. It is a tile game and as such, I have tiles of bitmaps with a vector (hline, vline) grid. This works fine and dandy, except when I open my options menu. The options menu is a seperate class that recieves the buffer that I was using for my double buffering system to use as a background. After I pass the buffer (that may or may not be the problem) I can no longer see any of my vector graphics. I have tested this by drawing a big rect and before the options menu it appears, during and after the otpions menu it doesn&#39;t. Is there some form of incompatability that I am just not aware of?</p><p>Thanks
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (InfiniteLoop)</author>
		<pubDate>Tue, 20 Mar 2007 18:57:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I recommend you post the code relating to this problem.</p><p>--- Kris Asick (Gemini)<br />--- <a href="http://www.pixelships.com">http://www.pixelships.com</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kris Asick)</author>
		<pubDate>Tue, 20 Mar 2007 19:00:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Without code it is kind of difficult to understand what might be the problem.<br />Please post the code that deals is revelant to the menu switching.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (HoHo)</author>
		<pubDate>Tue, 20 Mar 2007 19:04:32 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It works until this point:</p><p>menu = new CMenu(filename, challenge, buffer);<br />int ret = menu-&gt;loop();<br />if(ret == OK)<br />{<br />	cleanUp();</p><p>        setupGame(menu-&gt;getChallenge());<br />	setupBitmap(menu-&gt;getFile());<br />}<br />delete menu;<br />menu = NULL;</p><p>This is the constructor of my CMenu class:</p><p>CMenu::CMenu(string name, int chal, BITMAP *back)<br />{<br />	background	= back;<br />	challenge	= chal;<br />	file		= name;<br />	state		= LOOP;	</p><p>	init();<br />}</p><p>From this point on, no vector graphics will appear.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (InfiniteLoop)</author>
		<pubDate>Tue, 20 Mar 2007 19:07:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Probably something to do with CMenu::Init(), but you should show the code for your bitmap tile class as well.</p><p>Or, if you don&#39;t mind, you should attach all of your code into a ZIP/RAR file and post that.</p><p>You&#39;d be surprised how completely unrelated a problem can be to where it occurs.</p><p>--- Kris Asick (Gemini)<br />--- <a href="http://www.pixelships.com">http://www.pixelships.com</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kris Asick)</author>
		<pubDate>Tue, 20 Mar 2007 19:29:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Also, use <a href="http://www.allegro.cc/mockup.html">code tags</a> when you post it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Tue, 20 Mar 2007 19:43:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here is my CMenu::init() function. If there is a problem, I assume that it is here. The only different thing about this is the use of alpha blending for effect, maybe I need to turn alpha mode off afterwards?</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="k1">void</span> CMenu::init<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">2</td><td><span class="k2">{</span></td></tr><tr><td class="number">3</td><td>  <span class="c">//bitmap init</span></td></tr><tr><td class="number">4</td><td>  okButton    <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">5</td><td>  cancelButton  <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">6</td><td>  imageText    <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">7</td><td>  challengeText  <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">8</td><td>  optionSquare  <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">9</td><td>  optionsBack    <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">10</td><td>  buffer      <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">11</td><td>  imageHighlight  <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">12</td><td>  easyText    <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">13</td><td>  mediumText    <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">14</td><td>  hardText    <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">15</td><td>&#160;</td></tr><tr><td class="number">16</td><td>  okButton    <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">"images/okButton.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">17</td><td>  cancelButton  <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">"images/cancelButton.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>  imageText    <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">"images/imageText.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td>  challengeText  <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">"images/challengeText.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>  easyText    <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">"images/challengeText.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td>  mediumText    <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">"images/challengeText.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>  hardText    <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">"images/challengeText.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">23</td><td>&#160;</td></tr><tr><td class="number">24</td><td>  <span class="c">//sprite sheet</span></td></tr><tr><td class="number">25</td><td>  imageSelect    <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">"images/sheet.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">26</td><td>&#160;</td></tr><tr><td class="number">27</td><td>  buffer      <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></td></tr><tr><td class="number">28</td><td>  optionsBack    <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></td></tr><tr><td class="number">29</td><td>  optionSquare  <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> <span class="k3">-</span> <span class="n">10</span>, <span class="n">200</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">30</td><td>  <a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>alpha  <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></td></tr><tr><td class="number">31</td><td>  imageHighlight  <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">130</span>, <span class="n">130</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">32</td><td>&#160;</td></tr><tr><td class="number">33</td><td>  <span class="c">//initialize them</span></td></tr><tr><td class="number">34</td><td>  <a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>buffer<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">35</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>alpha, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">200</span>, <span class="n">200</span>, <span class="n">200</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">36</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>optionSquare, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">82</span>, <span class="n">120</span>, <span class="n">189</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">37</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>imageHighlight, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">25</span>, <span class="n">25</span>, <span class="n">25</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">38</td><td>&#160;</td></tr><tr><td class="number">39</td><td>  <span class="c">//prep options for trans</span></td></tr><tr><td class="number">40</td><td>  <span class="k1">int</span> x, y, c, a<span class="k2">;</span></td></tr><tr><td class="number">41</td><td>  <span class="c">//set the alpha channel blend values</span></td></tr><tr><td class="number">42</td><td>  <a href="http://www.allegro.cc/manual/drawing_mode" target="_blank"><span class="a">drawing_mode</span></a><span class="k2">(</span>DRAW_MODE_TRANS, NULL, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">43</td><td>  <a href="http://www.allegro.cc/manual/set_write_alpha_blender" target="_blank"><span class="a">set_write_alpha_blender</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">44</td><td>  <span class="c">//blend the two bitmap alpha channels</span></td></tr><tr><td class="number">45</td><td>  <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>alpha-&gt;h<span class="k2">;</span> y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">46</td><td>    <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>alpha-&gt;w<span class="k2">;</span> x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span> <span class="k2">{</span></td></tr><tr><td class="number">47</td><td>      <span class="c">//grab the pixel color</span></td></tr><tr><td class="number">48</td><td>      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>alpha, x, y<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">49</td><td>      a <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="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="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></td></tr><tr><td class="number">50</td><td>      <span class="c">//find the middle alpha value</span></td></tr><tr><td class="number">51</td><td>      a <span class="k3">=</span> MID<span class="k2">(</span><span class="n">0</span>, a<span class="k3">/</span><span class="n">2</span><span class="k3">-</span><span class="n">128</span>, <span class="n">255</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">52</td><td>      <span class="c">//copy the alpha-enabled pixel to the sprite</span></td></tr><tr><td class="number">53</td><td>      <a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>optionsBack, x, y, a<span class="k2">)</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>  <span class="k2">}</span></td></tr><tr><td class="number">56</td><td>  <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>alpha<span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">57</td><td><span class="k2">}</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (InfiniteLoop)</author>
		<pubDate>Tue, 20 Mar 2007 19:46:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You haven&#39;t posted a single line of code that has anything to do with vectors.</p><p>[append]<br />But yeah, drawing_mode needs to be called again with <tt>DRAW_MODE_SOLID</tt>.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Tue, 20 Mar 2007 19:50:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
You haven&#39;t posted a single line of code that has anything to do with vectors.
</p></div></div><p>

Irrelevant. Me writing a line of code to draw a vector graphic will do nothing to show that it does not show up.</p><p>At any rate:</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
But yeah, drawing_mode needs to be called again with DRAW_MODE_SOLID.
</p></div></div><p> </p><p>this was the fix. Thank you
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (InfiniteLoop)</author>
		<pubDate>Tue, 20 Mar 2007 19:59:26 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Oh, my mistake. I thought &quot;vector&quot; referred to the STL container class, not the grid. But it&#39;s fixed <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Tue, 20 Mar 2007 20:12:13 +0000</pubDate>
	</item>
</rss>
