<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Smooth Animation</title>
		<link>http://www.allegro.cc/forums/view/560001</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Wed, 18 Jan 2006 05:26:20 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hi, i am doing the arkanoid game, an for the ball i am using a .bmp file.<br />I am using the double buffering tech, and for drawing the ball i am using the<br />draw_sprite(bmp, sprite, x, y) i draw the sprite to the buffer (for the double buffering) and then the buffer to the screen. <br />I am using  acquire_screen and acquire_bitmap before drawing and then releasing them, but i the animation of the ball does not look smooth....<br />i read that i may have to activate the GFX_HW_VRAM_BLIT_MASKED in the gfx_capabilities.<br />Is that the answer to my problem?,<br />if yes, HOW do i activate it and where do i put it?<br />if not, what can i do?</p><p>(i am using winxp and have an nvidia geforce 440go 32ram, pentium4)....</p><p>thanks....
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (miguel meza)</author>
		<pubDate>Tue, 17 Jan 2006 02:36:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>it&#39;s automagically activated if supported (or i&#39;m thinking wrong)</p><p>You can just check if it is or not.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Tue, 17 Jan 2006 02:37:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>if it is activated by default then that&#39;s not the solution <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" /><img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" /><br />and how is the code to activate it?, and how do i check it?</p><p>thanks....
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (miguel meza)</author>
		<pubDate>Tue, 17 Jan 2006 04:39:32 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You don&#39;t need to activate anything. Instead, to take advantage of hardware vram blitting, you must do the following:<br />1) Your back buffer must be a video bitmap. This is the case in all page flipping and triple buffering scenarios, but you can also implement a double buffer system with blit using a video back buffer.<br />2) Your sprites must be in VRAM. Allegro loads everything as memory bitmap by default, so you have to manually copy them to video bitmaps.</p><p>If your hardware supports it, all video-video blits are accelerated.</p><p>However, I don&#39;t think that this is your problem. Unless you&#39;re doing something horribly wrong (like loading bitmaps every frame), your machine should be perfectly capable of producing smooth output without hardware accel.<br />The problem can be:<br />- A timer issue. This is especially likely if you use allegro timers, which have a ~10ms granularity in windows, making them all but precise. Look into QueryPerformanceCounter() for windows, gettimeofday() for linux.<br />- It is also possible that your program layout isn&#39;t optimal. Your timing code may be generally off, you might be checking for input the wrong way, a thousand things can be wrong.<br />- You might have made a mistake implementing the double buffer.<br />- Maybe you are using game logic that produces glitches.</p><p>If it&#39;s not too large, I suggest you post your code here (use code tags).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tobias Dammers)</author>
		<pubDate>Tue, 17 Jan 2006 17:18:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, this is some part of the code:<br />(i do use allegro timers)</p><p>this is my main:
</p><div class="source-code snippet"><div class="inner"><pre><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>  
  <a href="http://www.delorie.com/djgpp/doc/libc/libc_739.html" target="_blank">srand</a><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_821.html" target="_blank">time</a><span class="k2">(</span>NULL<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
  Init<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>      
  MainLoop<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>  
  <span class="k1">return</span> <span class="n">0</span><span class="k2">;</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><span class="k2">;</span>
</pre></div></div><p>

this is the Init method
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">void</span> Init<span class="k2">(</span><span class="k2">)</span>
<span class="k2">{</span>  
       <span class="c">// all the graphics and sound initialization</span>
       <span class="c">// and TIMERS</span>
  InitializeAllegro<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>      

      <span class="c">// load the bitmaps</span>
  ball <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">"ball.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span> 
  bar <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">"barra.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span>    
  brick <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">"brick1.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span>
  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>SCREEN_WIDTH, SCREEN_HEIGHT<span class="k2">)</span><span class="k2">;</span>  
       
      <span class="c">// OTHER STUFF.....</span>
<span class="k2">}</span>
</pre></div></div><p>

this is the mainLoop
</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> MainLoop<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>  g_EndGame <span class="k3">=</span> <span class="k1">false</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="k1">while</span> <span class="k2">(</span> <span class="k3">!</span>g_EndGame<span class="k2">)</span></td></tr><tr><td class="number">6</td><td>  <span class="k2">{</span>    </td></tr><tr><td class="number">7</td><td>    <span class="c">// for the TIMER</span></td></tr><tr><td class="number">8</td><td>    <span class="k1">while</span><span class="k2">(</span> g_speed_counter <span class="k3">&gt;</span> <span class="n">0</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">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_ESC<span class="k2">]</span> <span class="k2">)</span></td></tr><tr><td class="number">11</td><td>      <span class="k2">{</span></td></tr><tr><td class="number">12</td><td>        g_EndGame <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>          </td></tr><tr><td class="number">13</td><td>      <span class="k2">}</span></td></tr><tr><td class="number">14</td><td>      </td></tr><tr><td class="number">15</td><td>      <span class="c">// all the logic, collisions and math of the game</span></td></tr><tr><td class="number">16</td><td>      DoGameLogic<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">17</td><td>      g_speed_counter--<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>&#160;</td></tr><tr><td class="number">20</td><td>            <span class="c">// draw everything</span></td></tr><tr><td class="number">21</td><td>    RenderScene<span class="k2">(</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">if</span> <span class="k2">(</span> g_EndGame <span class="k2">)</span></td></tr><tr><td class="number">24</td><td>      QuitGame<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>  <span class="c">// destroy sound and bitmaps    </span></td></tr><tr><td class="number">25</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">26</td><td><span class="k2">}</span></td></tr></tbody></table></div></div><p>


and this is the MOST important method called in my RenderScene
</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> Draw<span class="k2">(</span><span class="k1">float</span> barX, <span class="k1">float</span> barY, <span class="k1">float</span> ballX, <span class="k1">float</span> ballY<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">//acquire_screen();</span></td></tr><tr><td class="number">4</td><td>  <span class="c">//acquire_bitmap(bar);</span></td></tr><tr><td class="number">5</td><td>  <span class="c">//acquire_bitmap(ball);</span></td></tr><tr><td class="number">6</td><td>&#160;</td></tr><tr><td class="number">7</td><td>      <span class="c">// this will be draw to the buffer (for double buffering)</span></td></tr><tr><td class="number">8</td><td>  <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>buffer, bar, barX,barY<span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">9</td><td>  PaintBricks<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/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>buffer, ball, ballX, ballY<span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">11</td><td>  </td></tr><tr><td class="number">12</td><td>      <span class="c">// Draw the buffer to the screen </span></td></tr><tr><td class="number">13</td><td>  <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer, <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>,SCREEN_WIDTH,SCREEN_HEIGHT<span class="k2">)</span><span class="k2">;</span><span class="c">//</span></td></tr><tr><td class="number">14</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> <span class="c">// Clear the contents of the buffer bitmap </span></td></tr><tr><td class="number">15</td><td>  </td></tr><tr><td class="number">16</td><td>  <span class="c">//release_bitmap(ball);</span></td></tr><tr><td class="number">17</td><td>  <span class="c">//release_bitmap(bar);</span></td></tr><tr><td class="number">18</td><td>  <span class="c">//release_screen();  </span></td></tr><tr><td class="number">19</td><td><span class="k2">}</span></td></tr></tbody></table></div></div><p>


if i uncomment the the acquire and release bitmaps the result is the same.....<br />hope someone can help me....
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (miguel meza)</author>
		<pubDate>Wed, 18 Jan 2006 04:29:41 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I cant see anything wrong with that code, at least now - the acquire_screen and acquire_bitmap are bad. don&#39;t use them. Only use acquire_screen if you make more than one consecutive blit to video memory.</p><p>Anyway, how about posting the logic code and the actual init code?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jonatan Hedborg)</author>
		<pubDate>Wed, 18 Jan 2006 04:40:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>ok, here goes mi InitAllegro and Logic code.....</p><p>Here is the InitializeAllegro and the TIMER code called in &quot;init()&quot;
</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">volatile</span> <span class="k1">int</span> g_speed_counter <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">2</td><td><span class="k1">void</span> InitializeAllegro<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">3</td><td><span class="k2">{</span>  </td></tr><tr><td class="number">4</td><td>  <span class="k1">if</span><span class="k2">(</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="k3">!</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">5</td><td>    <span class="k1">return</span><span class="k2">;</span></td></tr><tr><td class="number">6</td><td>  </td></tr><tr><td class="number">7</td><td>  <a href="http://www.allegro.cc/manual/set_window_title" target="_blank"><span class="a">set_window_title</span></a><span class="k2">(</span> g_AppName <span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">8</td><td>  </td></tr><tr><td class="number">9</td><td>  <span class="k1">if</span><span class="k2">(</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="k3">!</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span></td></tr><tr><td class="number">10</td><td>    <span class="k1">return</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td>  </td></tr><tr><td class="number">12</td><td>  <span class="k1">if</span><span class="k2">(</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="k3">&lt;</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span></td></tr><tr><td class="number">13</td><td>    <span class="k1">return</span><span class="k2">;</span>  </td></tr><tr><td class="number">14</td><td>  </td></tr><tr><td class="number">15</td><td>  <span class="c">// load sounds</span></td></tr><tr><td class="number">16</td><td>  <span class="k1">if</span> <span class="k2">(</span> <a href="http://www.allegro.cc/manual/install_sound" target="_blank"><span class="a">install_sound</span></a><span class="k2">(</span>DIGI_AUTODETECT ,MIDI_AUTODETECT, <span class="n">0</span><span class="k2">)</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">17</td><td>  <span class="k2">{</span></td></tr><tr><td class="number">18</td><td>    music <span class="k3">=</span> <a href="http://www.allegro.cc/manual/load_midi" target="_blank"><span class="a">load_midi</span></a><span class="k2">(</span><span class="s">"LISZT2.mid"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_735.html" target="_blank">sound</a> <span class="k3">=</span> <a href="http://www.allegro.cc/manual/load_wav" target="_blank"><span class="a">load_wav</span></a><span class="k2">(</span><span class="s">"bong.wav"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>    sound1 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/load_wav" target="_blank"><span class="a">load_wav</span></a><span class="k2">(</span><span class="s">"loss.wav"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td>    sound2 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/load_wav" target="_blank"><span class="a">load_wav</span></a><span class="k2">(</span><span class="s">"gameover.wav"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>  <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">// get and set color depth</span></td></tr><tr><td class="number">25</td><td>  bpp <span class="k3">=</span> <a href="http://www.allegro.cc/manual/desktop_color_depth" target="_blank"><span class="a">desktop_color_depth</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>    </td></tr><tr><td class="number">26</td><td>  <span class="k1">if</span><span class="k2">(</span> bpp <span class="k3">!</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">27</td><td>  <span class="k2">{</span></td></tr><tr><td class="number">28</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>bpp<span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">29</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">30</td><td>  <span class="k1">else</span> </td></tr><tr><td class="number">31</td><td>  <span class="k2">{</span></td></tr><tr><td class="number">32</td><td>    bpp <span class="k3">=</span> <span class="n">16</span><span class="k2">;</span>    </td></tr><tr><td class="number">33</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>bpp<span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">34</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">35</td><td>&#160;</td></tr><tr><td class="number">36</td><td>  SCREEN_WIDTH<span class="k3">=</span><span class="n">800</span><span class="k2">;</span></td></tr><tr><td class="number">37</td><td>  SCREEN_HEIGHT<span class="k3">=</span><span class="n">600</span><span class="k2">;</span>  </td></tr><tr><td class="number">38</td><td>  </td></tr><tr><td class="number">39</td><td>  <span class="c">// set video mode</span></td></tr><tr><td class="number">40</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_AUTODETECT_FULLSCREEN, SCREEN_WIDTH , SCREEN_HEIGHT , <span class="n">0</span> ,       <span class="n">0</span> <span class="k2">)</span> <span class="k3">!</span><span class="k3">=</span> <span class="n">0</span> <span class="k2">)</span></td></tr><tr><td class="number">41</td><td>  <span class="k1">return</span><span class="k2">;</span></td></tr><tr><td class="number">42</td><td>&#160;</td></tr><tr><td class="number">43</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">44</td><td>&#160;</td></tr><tr><td class="number">45</td><td>  <a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>g_speed_counter<span class="k2">)</span><span class="k2">;</span>            </td></tr><tr><td class="number">46</td><td>  <a href="http://www.allegro.cc/manual/LOCK_FUNCTION" target="_blank"><span class="a">LOCK_FUNCTION</span></a><span class="k2">(</span>CheckForSpeed<span class="k2">)</span><span class="k2">;</span>              </td></tr><tr><td class="number">47</td><td>  <a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>CheckForSpeed , BPS_TO_TIMER<span class="k2">(</span><span class="n">60</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">48</td><td>&#160;</td></tr><tr><td class="number">49</td><td><span class="k2">}</span></td></tr><tr><td class="number">50</td><td>&#160;</td></tr><tr><td class="number">51</td><td><span class="c">// this is for the timer</span></td></tr><tr><td class="number">52</td><td><span class="k1">void</span> CheckForSpeed<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">53</td><td><span class="k2">{</span>  </td></tr><tr><td class="number">54</td><td>  g_speed_counter<span class="k3">+</span><span class="k3">+</span><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/END_OF_FUNCTION" target="_blank"><span class="a">END_OF_FUNCTION</span></a><span class="k2">(</span> CheckForSpeed <span class="k2">)</span><span class="k2">;</span></td></tr></tbody></table></div></div><p>


and here is the &quot;logic&quot; code:
</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> DoGameLogic<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="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></td></tr><tr><td class="number">4</td><td>    moveBall <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>  </td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td>  <span class="k1">if</span> <span class="k2">(</span> moveBall <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>    cBall.X <span class="k3">+</span><span class="k3">=</span> speedX<span class="k2">;</span></td></tr><tr><td class="number">9</td><td>    cBall.Y <span class="k3">+</span><span class="k3">=</span> speedY<span class="k2">;</span></td></tr><tr><td class="number">10</td><td>  <span class="k2">}</span>  </td></tr><tr><td class="number">11</td><td>&#160;</td></tr><tr><td class="number">12</td><td>  CheckCollision<span class="k2">(</span><span class="k2">)</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">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td>    CheckMovement<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>      </td></tr><tr><td class="number">16</td><td><span class="k2">}</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (miguel meza)</author>
		<pubDate>Wed, 18 Jan 2006 04:55:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>And checkcollision?  You could try and add a vsync(); before you blit to screen as well. just for fun...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Jonatan Hedborg)</author>
		<pubDate>Wed, 18 Jan 2006 05:02:41 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>my CheckCollision code is unclear, and i dont think that could be the problem because i only do simple math things there, so there is anything related with drawing....</p><p>i remove the acquire methods and added vsync() and the result is the same <img src="http://www.allegro.cc/forums/smileys/undecided.gif" alt=":-/" /><br />what can it be??? <img src="http://www.allegro.cc/forums/smileys/huh.gif" alt="???" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (miguel meza)</author>
		<pubDate>Wed, 18 Jan 2006 05:26:20 +0000</pubDate>
	</item>
</rss>
