<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Allegro timers are laggy?</title>
		<link>http://www.allegro.cc/forums/view/606243</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sun, 30 Jan 2011 21:03:05 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;m using ALLEGRO_TIMER objects for my Object class. So every object will have a timer in order to control animation frames. But i am suspicious if too many allegro timers lag the game ? Should I use it ?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (xantier)</author>
		<pubDate>Sun, 30 Jan 2011 20:15:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think they should be fairly efficient. Just make sure that you handle the timer events as soon as you possibly can. Try not to let them pile up.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Sun, 30 Jan 2011 20:17:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>On each timer tick, i set the tick count 0 (so i can check it easily again). </p><div class="source-code snippet"><div class="inner"><pre>    <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span>Objects.size<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
    <span class="k2">{</span> 
      <span class="k1">if</span> <span class="k2">(</span>Objects<span class="k2">[</span>i<span class="k2">]</span><span class="k3">-</span><span class="k3">&gt;</span>GetSprite<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="k3">&gt;</span>IsAnimated<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
      <span class="k2">{</span>
      <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/al_get_timer_count"><span class="a">al_get_timer_count</span></a><span class="k2">(</span>Objects<span class="k2">[</span>i<span class="k2">]</span><span class="k3">-</span><span class="k3">&gt;</span>GetSprite<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="k3">&gt;</span>GetTimer<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span>
      <span class="k2">{</span>
      <a href="http://www.allegro.cc/manual/al_set_timer_count"><span class="a">al_set_timer_count</span></a><span class="k2">(</span>Objects<span class="k2">[</span>i<span class="k2">]</span><span class="k3">-</span><span class="k3">&gt;</span>GetSprite<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="k3">&gt;</span>GetTimer<span class="k2">(</span><span class="k2">)</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
      Objects<span class="k2">[</span>i<span class="k2">]</span><span class="k3">-</span><span class="k3">&gt;</span>GetSprite<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="k3">&gt;</span>Animate<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
      <span class="k2">}</span>
      <span class="k2">}</span>
    <span class="k2">}</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (xantier)</author>
		<pubDate>Sun, 30 Jan 2011 20:25:39 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Why do you need a separate timer for each of your objects? A single 60hz timer should be sufficient for most everything. All you have to do is track delta time in your animated object and set the frame number accordingly.</p><div class="source-code snippet"><div class="inner"><pre>frame_num <span class="k3">=</span> <span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span>frametime<span class="k3">*</span>frames_per_sec<span class="k2">)</span><span class="k2">;</span>
<span class="c">// check bounds of frame_num here...</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Sun, 30 Jan 2011 21:03:05 +0000</pubDate>
	</item>
</rss>
