<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Developers BR</title>
	<atom:link href="http://devbr.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://devbr.wordpress.com</link>
	<description>Um Blog sobre XNA, SilverLight e CIA.</description>
	<lastBuildDate>Fri, 04 Dec 2009 22:38:18 +0000</lastBuildDate>
	<language>pt-br</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='devbr.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Developers BR</title>
		<link>http://devbr.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://devbr.wordpress.com/osd.xml" title="Developers BR" />
	<atom:link rel='hub' href='http://devbr.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Migração concluida</title>
		<link>http://devbr.wordpress.com/2009/12/04/migracao-concluida/</link>
		<comments>http://devbr.wordpress.com/2009/12/04/migracao-concluida/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 22:38:18 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[1]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/?p=180</guid>
		<description><![CDATA[O site finalmente foi lançado! Pode verificar o mesmo no endereço: www.devtuts.com.br Espero que aprecie o conteudo, que mesmo ainda sendo pouco, está sendo feito com muita dedicação! Peço também o apoio ao site que pode ser dado com a compra de uma conta premium que dá diversos tutoriais exclusivos! Obrigado a todos do devBR! [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=180&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>O site finalmente foi lançado! Pode verificar o mesmo no endereço:</p>
<p><a href="www.devtuts.com.br">www.devtuts.com.br</a></p>
<p>Espero que aprecie o conteudo, que mesmo ainda sendo pouco, está sendo feito com muita dedicação!</p>
<p>Peço também o apoio ao site que pode ser dado com a compra de uma conta premium que dá diversos tutoriais exclusivos!</p>
<p>Obrigado a todos do devBR! Nos vemos no novo site!</p>
<p>Obrigado!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/180/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=180&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/12/04/migracao-concluida/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>
	</item>
		<item>
		<title>Migração! Falta Pouco!</title>
		<link>http://devbr.wordpress.com/2009/12/02/migracao-falta-pouco/</link>
		<comments>http://devbr.wordpress.com/2009/12/02/migracao-falta-pouco/#comments</comments>
		<pubDate>Wed, 02 Dec 2009 14:57:58 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[1]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/?p=177</guid>
		<description><![CDATA[Olá! Como foi dito acima, falta bem pouco mesmo! Estamos trabalhando duro para fornecer conteudo de primeira! Será lançado o site e junto com ele, muitas aulas Gratuitas e Pagas. Para visualizar as aulas pagas, deve-se pagar uma taxa mensal de 25,00 reais. Pagamento realizado através do PagSeguro Mas, quem comprar até dia 10/12/2009 ganha [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=177&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Olá!</p>
<p>Como foi dito acima, falta bem pouco mesmo! Estamos trabalhando duro para fornecer conteudo de primeira!</p>
<p>Será lançado o site e junto com ele, muitas aulas Gratuitas e Pagas.</p>
<p>Para visualizar as aulas pagas, deve-se pagar uma taxa mensal de 25,00 reais. Pagamento realizado através do PagSeguro</p>
<p>Mas, quem comprar até dia 10/12/2009 ganha o mês de Janeiro de Graça!</p>
<p>Aguardem muitas novidades!</p>
<p>Obrigado!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/177/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=177&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/12/02/migracao-falta-pouco/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>
	</item>
		<item>
		<title>[Video-Aula] Reprodução de Videos no XNA 3.1 &#8211; Parte 1</title>
		<link>http://devbr.wordpress.com/2009/11/19/video-aula-reproducao-de-videos-no-xna-3-1-parte-1/</link>
		<comments>http://devbr.wordpress.com/2009/11/19/video-aula-reproducao-de-videos-no-xna-3-1-parte-1/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 16:50:43 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[1]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/?p=174</guid>
		<description><![CDATA[Como vão? Segue abaixo uma video-aula para adiantar enquanto o site não chega =) Descrição: Você irá aprender a reproduzir um video usando o XNA 3.1. De forma simples. LINK DOWNLOAD ARQUIVO DE VIDEO (.WMV) DE EXEMPLO LINK DOWNLOAD DA VIDEO-AULA Até e bom feriado! &#160; &#160;<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=174&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Como vão? Segue abaixo uma video-aula para adiantar enquanto o site não chega =)</p>
<p><strong>Descrição: </strong>Você irá aprender a reproduzir um video usando o XNA 3.1. De forma simples.</p>
<p><a href="http://devtuts.com.br/video/xna/videoplayback/videoSample.rar" target="_blank">LINK DOWNLOAD ARQUIVO DE VIDEO (.WMV) DE EXEMPLO</a></p>
<p><a href="http://devtuts.com.br/video/xna/videoplayback/videoProject.rar" target="_blank">LINK DOWNLOAD DA VIDEO-AULA</a></p>
<p>Até e bom feriado!</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/174/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=174&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/11/19/video-aula-reproducao-de-videos-no-xna-3-1-parte-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>
	</item>
		<item>
		<title>Video-Aula para Avaliação!</title>
		<link>http://devbr.wordpress.com/2009/10/07/video-aula-para-avaliacao/</link>
		<comments>http://devbr.wordpress.com/2009/10/07/video-aula-para-avaliacao/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 16:40:52 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[Geral]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/2009/10/07/video-aula-para-avaliacao/</guid>
		<description><![CDATA[Olá a todos! Encontrei uma hospedagem que vale a pena. Hospedei a primeira video-aula e ficaria agradecido se você comentar o que achou&#8230; Pode ser aqui mesmo! Segue o Link para a Video-Aula: Clique Aqui Lembrando que o site ainda está em desenvolvimento =D Obrigado! Até!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=168&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Olá a todos!</p>
<p>Encontrei uma hospedagem que vale a pena. Hospedei a primeira video-aula e ficaria agradecido se você comentar o que achou&#8230;</p>
<p>Pode ser aqui mesmo!</p>
<p>Segue o Link para a Video-Aula: <a href="http://www.devtuts.com.br/video/testeVideo.html" target="_blank">Clique Aqui</a></p>
<p>Lembrando que o site ainda está em desenvolvimento =D</p>
<p>Obrigado! Até!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/168/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/168/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/168/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/168/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/168/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/168/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/168/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/168/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/168/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/168/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/168/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/168/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/168/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/168/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=168&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/10/07/video-aula-para-avaliacao/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>
	</item>
		<item>
		<title>Aviso! Mudança em Breve!</title>
		<link>http://devbr.wordpress.com/2009/10/01/aviso-mudanca-em-breve/</link>
		<comments>http://devbr.wordpress.com/2009/10/01/aviso-mudanca-em-breve/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 22:40:16 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[1]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/?p=165</guid>
		<description><![CDATA[Olá. Vim aqui prestar algumas satisfações&#8230; Estou migrando para um servidor pago, onde poderei colocar as video-aulas e tudo mais&#8230; Esse processo deve levar alguns dias ( + ou &#8211; uns 2 dias), então peço paciencia =D Obrigado! E continue a nos visitar.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=165&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Olá. Vim aqui prestar algumas satisfações&#8230;</p>
<p>Estou migrando para um servidor pago, onde poderei colocar as video-aulas e tudo mais&#8230;</p>
<p>Esse processo deve levar alguns dias ( + ou &#8211; uns 2 dias), então peço paciencia =D</p>
<p>Obrigado! E continue a nos visitar.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/165/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/165/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/165/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/165/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/165/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/165/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/165/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/165/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/165/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/165/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/165/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/165/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/165/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/165/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=165&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/10/01/aviso-mudanca-em-breve/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>
	</item>
		<item>
		<title>Mudamos para video-aulas ou n&#227;o?</title>
		<link>http://devbr.wordpress.com/2009/09/20/mudamos-para-video-aulas-ou-no/</link>
		<comments>http://devbr.wordpress.com/2009/09/20/mudamos-para-video-aulas-ou-no/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 02:21:51 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[Geral]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/2009/09/20/mudamos-para-video-aulas-ou-no/</guid>
		<description><![CDATA[Decidi que para melhor aprendizado, video-aulas são as melhores opções. Mas preciso saber de sua opnião. Por isso peço que vote na enquete logo ao lado &#8212;&#8212;&#8212;&#8212;-&#62; Agradeço a colaboração de todos!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=162&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Decidi que para melhor aprendizado, video-aulas são as melhores opções. Mas preciso saber de sua opnião.</p>
<p>Por isso peço que vote na enquete logo ao lado &#8212;&#8212;&#8212;&#8212;-&gt;</p>
<p>Agradeço a colaboração de todos!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/162/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=162&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/09/20/mudamos-para-video-aulas-ou-no/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>
	</item>
		<item>
		<title>A import&#226;ncia da Matem&#225;tica em Jogos Digitais</title>
		<link>http://devbr.wordpress.com/2009/09/12/a-importncia-da-matemtica-em-jogos-digitais/</link>
		<comments>http://devbr.wordpress.com/2009/09/12/a-importncia-da-matemtica-em-jogos-digitais/#comments</comments>
		<pubDate>Sun, 13 Sep 2009 00:12:47 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[Matemática]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/?p=157</guid>
		<description><![CDATA[Olá. Neste artigo, falarei de como e de qual maneira a Matemática é importante na criação (principalmente na programação) de Jogos Digitais. Posso dizer que se você não souber matemática ou não ter interesse em aprender, não programará um bom jogo. O motivo de tal afirmação ser verdadeira, é que na programação, tudo é lógica [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=157&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Olá. Neste artigo, falarei de como e de qual maneira a Matemática é importante na criação (principalmente na programação) de Jogos Digitais.</p>
<p><span id="more-157"></span></p>
<p>Posso dizer que se você não souber matemática ou não ter interesse em aprender, não programará um bom jogo.</p>
<p>O motivo de tal afirmação ser verdadeira, é que na programação, tudo é lógica e matemática, a linguagem é apenas um meio para o programador se “expressar” para o computador.</p>
<p><strong>Matemática em Jogos 2D</strong></p>
<p>Vou citar aqui o porque de você não poder programar um jogo 2D sem a matemática.</p>
<p>Citarei como exemplo, um jogo clássico, <strong>Sonic</strong>, mas os conceitos se aplicam a qualquer jogo. Imagine o seguinte:</p>
<p>O computador coloca uma imagem em coordenadas especificadas por você, e advinhe o que você usa para posicionar um simples desenho na tela?</p>
<p>A resposta é <strong>Coordenadas, dadas pelo ponto Horizontal (X) e pelo ponto Vertical (Y)</strong>. Sem a matemática você não pode nem mesmo posicionar um desenho na tela.</p>
<p>Agora vamos partir para algo mais complexo que simplesmente colocar uma imagem na tela, vamos falar de Gravidade, Aceleração e Velocidade, Fricção (presente na maioria dos jogos)!</p>
<p>Começemos pela <strong>Gravidade:</strong></p>
<p>Gravidade é a força que puxa todos os corpos para o baixo (simplificadamente dizendo). Na Terra este valor é geralmente arredondado para 10 m/s².</p>
<p>Então significa que, em um jogo, você deve deixar o Personagem cair até que colida com algo. Nossa! Falamos de subtração de valores, ai entra a matemática, já que você deverá ter que fazer isso:</p>
<blockquote><p>Enquanto não colidiu com algo:</p>
<p>Subtraia (No caso das coordenadas do Computador, deve-se Adicionar) X_de_Gravidade da Posição atual do Personagem.</p></blockquote>
<p>Agora vamos falar de <strong>Aceleração e Velocidade:</strong></p>
<p>Velocidade é o quanto deverá ser adicionado ( se for positiva ) ou subtraida ( se for negativa ) da posição atual do jogar. Isso óbviamente inclui a matemática.</p>
<p>A Aceleração é o quanto sua velocidade irá aumentar ou diminuir, por exemplo, se sua velocidade é 10 e sua aceleração é –3, então você está parando, porque sua velocidade irá ir diminuindo de 3 em 3.</p>
<p>Então, não há movimento em jogo, sem a Matemática!</p>
<p>Agora vamos falar de <strong>Fricção:</strong></p>
<p>A Fricção é uma força que puxa em direção contraria ao movimento de um corpo. É essa força que pára um carro, onde há fricção entre a Pastilha do Freio e o Disco.</p>
<p>A fricção geralmente é maior ou igual que 0 e menor ou igual que 1 (Lembrando que 1 significa que não há nenhuma fricção e 0 significa que há fricção total. Por exemplo:</p>
<blockquote><p>Temos uma velocidade que é igual à 10, e um valor de fricção igual à 0. Então a velocidade final é 10 * 0 = 0! Ou seja, não há movimento.</p></blockquote>
<blockquote><p>Agora temos uma velocidade que é igual à 10, e um valor de fricção igual à 1. Então a velocidade final é 10 * 1 = 10. Não há fricção.</p></blockquote>
<blockquote><p>Agora, ao usar, por exemplo, um valor de fricção igual à 0.9, teremos 10 * 0.9 = 9, houve uma diminuição de 10%, então há fricção!</p></blockquote>
<p>Você deve ter conseguido entender que sem matemática, não há jogos 2D. Agora vamos dar uma olhada nos jogos 3D.</p>
<p><strong> </strong></p>
<p><strong>Matemática em Jogos 3D</strong></p>
<p>Em jogos 3D a matemática é intensamente, supremamente, e qualquer outro termo exagerado, indispensável! É impossivel fazer um jogo 3D sem usar a matemática.</p>
<p>A razão é que sem matemática, não há 3D, pois o computador simula o 3D em nossa tela, e para fazer isso, faz uso intenso de matrizes e não podemos nos esqueçer dos vetores também.</p>
<p>Matrizes e Vetores são elementos que apareçem sempre em um jogo 3D.</p>
<p>Os vetores marcam a posição dos pontos dos modelos 3D, além da posição, aceleração, velocidade, direção.</p>
<p>Para poder dizer ao computador a posição do observador e a projeção ( que inclui a perspectiva e tamanho do mundo 3D ) usa-se matrizes! Que é matemática pura.</p>
<p>Para rotacionar, transladar (mover) e escalar um modelo, usa-se multiplicações de matrizes.</p>
<p>Para se obter a direção de um corpo rotacionado e move-lo nesta direção, usa-se calculo vetorial e transformações com matrizes. Além disso existem os <strong>Quatérnios</strong>, que são estruturas matemáticas que ajudam ao realizar rotações de modelos 3D.</p>
<p>Então podesse concluir que sem a matemática, não há jogos digitais!</p>
<p><strong>Conclusão:</strong></p>
<p>Se você quiser programar jogos, mas não gostaria de ter que aprender matemática, então esqueça.</p>
<p>Abraços, Rafael S. Angeline</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/157/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=157&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/09/12/a-importncia-da-matemtica-em-jogos-digitais/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>
	</item>
		<item>
		<title>[Guia do Iniciante Dia #7] Movendo a imagem (A classe Keyboard)</title>
		<link>http://devbr.wordpress.com/2009/09/04/guia-do-iniciante-dia-7-movendo-a-imagem-a-classe-keyboard/</link>
		<comments>http://devbr.wordpress.com/2009/09/04/guia-do-iniciante-dia-7-movendo-a-imagem-a-classe-keyboard/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 18:31:33 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/?p=149</guid>
		<description><![CDATA[Olá! Hoje nós vamos avançar um pouco mais. Iremos mover uma imagem usando um teclado! Prepare o Visual Studio e vamos nessa! Antes de começar, queria pedir para participarem da enquete ai ao lado, seria muito bom ter a sua opinião. Vamos usar uma imagem pequena para testes. Salve a seguinte imagem: Agora você deve [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=149&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Olá! Hoje nós vamos avançar um pouco mais. Iremos mover uma imagem usando um teclado! Prepare o Visual Studio e vamos nessa!</p>
<p>Antes de começar, queria pedir para participarem da enquete ai ao lado, seria muito bom ter a sua opinião.</p>
<p><span id="more-149"></span></p>
<p>Vamos usar uma imagem pequena para testes. Salve a seguinte imagem:</p>
<p><a href="http://devbr.files.wordpress.com/2009/09/kakashinho.png"><img style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;" title="kakashinho" src="http://devbr.files.wordpress.com/2009/09/kakashinho_thumb.png?w=73&#038;h=80" border="0" alt="kakashinho" width="73" height="80" /></a></p>
<p>Agora você deve adicionar a imagem na pasta <strong>Content</strong>. (Você já deve saber fazer isso. Se ainda não sabe, veja o seguinte tutorial: <a href="http://devbr.wordpress.com/2009/07/18/guia-do-iniciante-dia-5-sua-primeira-imagem-na-tela-carregar-contedo-e-a-classe-texture2d/" target="_blank">Clique</a>! )</p>
<p>Após ter adicionado a imagem acima. Nós devemos criar o que já foi abordado no <a href="http://devbr.wordpress.com/2009/08/30/guia-do-iniciante-dia-6-aprodundando-no-posicionamento-de-imagens-2d-vector2/" target="_blank">ultimo tutorial</a>.</p>
<p>Ou seja, após criar um novo projeto, devemos criar uma variavel Vector2 (Posição) e Texture2D (Imagem) e por ultimo uma coisa nova, uma váriavel <strong>KeyboardState.</strong></p>
<blockquote><p>O que é KeyBoardState?</p></blockquote>
<p>Esta é a classe que irá permitir pegar o estado do teclado toda vez que precisarmos!</p>
<p>Então nosso topo da classe (antes do construtor) ficará assim:</p>
<blockquote><p>public class Game1 : Microsoft.Xna.Framework.Game<br />
{<br />
GraphicsDeviceManager graphics;<br />
SpriteBatch spriteBatch;</p>
<p><strong> Vector2 Posicao;<br />
Texture2D Textura;<br />
KeyboardState estadoTeclado</strong>;</p>
<p>public Game1()<br />
{</p>
<p><strong> …</strong></p></blockquote>
<p>A parte em negrito é o que você deverá adicionar, o que não está em negrito é só para você se localizar =D</p>
<p>Ok, vamos carregar a imagem e inicializar as posições no método <strong>LoadContent()</strong>.</p>
<blockquote><p>protected override void LoadContent()<br />
{<br />
// Create a new SpriteBatch, which can be used to draw textures.<br />
spriteBatch = new SpriteBatch(GraphicsDevice);</p>
<p><strong>Textura = Content.Load&lt;Texture2D&gt;(&#8220;kakashinho&#8221;);<br />
Posicao = new Vector2(100, 100);</strong></p>
<p><strong><br />
</strong> // TODO: use this.Content to load your game content here<br />
}</p></blockquote>
<p>Lembrando que o que está em negrito é o que deve ser digitado, o resto é só para se localizar.</p>
<p>Agora a novidade vem no método <strong>Update()</strong>. Não há segredos! Faremos o personagem se mover para a direita – esquerda E cima – baixo.</p>
<p>Antes vou passar a lógica para você, confira:</p>
<blockquote><p>-&gt; Pega o ultimo estado do teclado</p>
<p>-&gt; Se o botão para a Direita estiver sendo pressionado</p>
<p>&#8211; Adiciona 2 pixels na posição do personagem em X</p>
<p>-&gt; Mas se o botão para a Esquerda estiver sendo pressionado</p>
<p>&#8211; Diminui 2 pixels da posição do personagem em X</p>
<p>-&gt; Se o botão para Cima estiver sendo pressionado</p>
<p>&#8211; Diminui 2 pixels da posição do personagem em Y</p>
<p>-&gt; Mas se o botão para Baixo estiver sendo pressionado</p>
<p>&#8211; Aumenta 2 pixels na posição do personagem em Y</p></blockquote>
<p>Agora vamos passa isso para o código. No método <strong>Update() </strong>digite o seguinte:</p>
<blockquote><p>protected override void Update(GameTime gameTime)<br />
{<br />
<strong>estadoTeclado = Keyboard.GetState(); </strong></p>
<p><strong> if (estadoTeclado.IsKeyDown(Keys.Right) == true)<br />
{<br />
Posicao.X += 2;<br />
}<br />
else if (estadoTeclado.IsKeyDown(Keys.Left) == true)<br />
{<br />
Posicao.X -= 2;<br />
} </strong></p>
<p><strong> if (estadoTeclado.IsKeyDown(Keys.Up) == true)<br />
{<br />
Posicao.Y -= 2;<br />
}<br />
else if (estadoTeclado.IsKeyDown(Keys.Down) == true)<br />
{<br />
Posicao.Y += 2;<br />
} </strong></p>
<p>base.Update(gameTime);<br />
}</p></blockquote>
<p>É muito simples, para pegar o estado Atual do teclado você deve usar o seguinte método:</p>
<blockquote><p>estadoTeclado = <strong>Keyboard.GetState();</strong></p></blockquote>
<p>Ele irá retornar um Array com as teclas que estão sendo pressionadas e então passará o Array para “estadoTeclado” no nosso caso.</p>
<p>Tendo isso em mãos é só usar if’s e else’s para fazer as verificações.</p>
<p>Veja os métodos de uma váriavel KeyboardState e um exemplo de cada:</p>
<table border="0" cellspacing="0" cellpadding="2" width="400">
<tbody>
<tr>
<td width="200" valign="top">
<p align="center"><strong>Método</strong></p>
</td>
<td width="200" valign="top">
<p align="center"><strong>O que faz</strong></p>
</td>
</tr>
<tr>
<td width="200" valign="top">
<p align="center">IsKeyDown(Keys k)</p>
</td>
<td width="200" valign="top">
<p align="center">Verifica se k, no caso, está pressionado.</p>
</td>
</tr>
<tr>
<td width="200" valign="top">
<p align="center">IsKeyUp(Keys k)</p>
</td>
<td width="200" valign="top">
<p align="center">Verifica se k, no caso, <strong>NÃO </strong>está sendo pressionado.</p>
</td>
</tr>
</tbody>
</table>
<p>OBS: Ambas as funções retornam true ou false, então é fácil usa-las nos IF’s e ELSE’s.</p>
<p><strong>Exemplo IsKeyDown:</strong></p>
<blockquote><p>if (estadoTeclado.IsKeyDown(Keys.Up) == true)</p>
<p>// Verifica se a tecla está pressionada</p></blockquote>
<p><strong>Exemplo IsKeyUp:</strong></p>
<blockquote><p>if(estadoTeclado.IsKeyUp(Keys.Up) == true)</p>
<p>// Verifica se não está sendo pressionada</p></blockquote>
<p><strong>Voltando…</strong></p>
<p>Agora voltando ao exemplo … Só falta o código para desenhar na tela. Digite o seguinte no método <strong>Draw().</strong></p>
<blockquote><p>protected override void Draw(GameTime gameTime)<br />
{<br />
<strong>GraphicsDevice.Clear(Color.White); </strong></p>
<p><strong> spriteBatch.Begin(); </strong></p>
<p><strong> spriteBatch.Draw(Textura, Posicao, Color.White); </strong></p>
<p><strong> spriteBatch.End();</strong></p>
<p>base.Draw(gameTime);<br />
}</p></blockquote>
<p>Teste o programa (F5) e confira os resultados!</p>
<p>Controles: Setas para Direita, Esquerda, Cima e Baixo.</p>
<p>Irei tratar das teclas possiveis em um próximo tutorial, mas você pode explorar as possibilidades substituindo <strong>Keys.Up </strong>por <strong>Keys.A ou Keys.B. </strong>Acho que você já captou a mensagem =D</p>
<p>Até a próxima! Abraços.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/149/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=149&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/09/04/guia-do-iniciante-dia-7-movendo-a-imagem-a-classe-keyboard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>

		<media:content url="http://devbr.files.wordpress.com/2009/09/kakashinho_thumb.png" medium="image">
			<media:title type="html">kakashinho</media:title>
		</media:content>
	</item>
		<item>
		<title>Competi&#231;&#245;es Interessantes</title>
		<link>http://devbr.wordpress.com/2009/08/31/competies-interessantes/</link>
		<comments>http://devbr.wordpress.com/2009/08/31/competies-interessantes/#comments</comments>
		<pubDate>Mon, 31 Aug 2009 23:16:16 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[Geral]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/?p=142</guid>
		<description><![CDATA[Olá, hoje vim citar duas competições que vocês, caros leitores, podem aproveitar e faturar uma grana =D Vamos lá. Vou citar as que ainda dá tempo de se inscrever, então é melhor correr! 1. 2BeeGames - Data Final para Submissão de Jogos: 15 de Setembro de 2009 (CORRE!!!) - Prêmio: $10.000 para o grande vencedor. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=142&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Olá, hoje vim citar duas competições que vocês, caros leitores, podem aproveitar e faturar uma grana =D</p>
<p><span id="more-142"></span></p>
<p>Vamos lá. Vou citar as que ainda dá tempo de se inscrever, então é melhor correr!</p>
<p><strong>1. 2BeeGames </strong></p>
<p>- Data Final para Submissão de Jogos: 15 de Setembro de 2009 (CORRE!!!)</p>
<p>- Prêmio: $10.000 para o grande vencedor. $5.000 para o favorito da comunidade. E a possibilidade de contrato e publicação em consoles (me cheirou à XNA =))</p>
<p>- Mais detalhes no site: <a href="http://www.2beegames.com/" target="_blank">Clique aqui</a>.</p>
<p><strong>2. Concurso do Perdido – BrMaker</strong></p>
<p>- Comentários: O concurso é relativamente novo. Mas o prêmio até que é bom (pelo menos não é só troféu virtual =D).</p>
<p>- Prêmio: Ainda não foi decidido ao certo. Mas irá ser uma das seguintes opções, sendo a primeira a mais provavel.</p>
<blockquote><p>1º Opção: Prêmio de R$150,00 para o Campeão</p>
<p>2º Opção: Prêmio de R$75,00; R$50,00; R$25,00 respectivamente para 1º, 2º e 3º colocado.</p></blockquote>
<p>- Mais detalhes no tópico: <a href="http://brmaker.com.br/forum/index.php?showtopic=5369&amp;pid=42520&amp;st=0&amp;" target="_blank">Clique Aqui</a>.</p>
<p><strong>Conclusão.</strong></p>
<p>Sei que não foi o grande Post aqui da DevBR mas é interessante se manter antenado com os concursos para faturar uma grana, certo?</p>
<p>Irei citar mais competições e seus detalhes, como a Imagine Cup, Xna Challenge (Brasil) e a Dream Build Play quanto estiverem mais próximas =)</p>
<p>Até a próxima e boa sorte aos participantes!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/142/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/142/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/142/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=142&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/08/31/competies-interessantes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>
	</item>
		<item>
		<title>[Guia do Iniciante Dia #6] Aprodundando no posicionamento de imagens 2D (Vector2)</title>
		<link>http://devbr.wordpress.com/2009/08/30/guia-do-iniciante-dia-6-aprodundando-no-posicionamento-de-imagens-2d-vector2/</link>
		<comments>http://devbr.wordpress.com/2009/08/30/guia-do-iniciante-dia-6-aprodundando-no-posicionamento-de-imagens-2d-vector2/#comments</comments>
		<pubDate>Sun, 30 Aug 2009 17:23:04 +0000</pubDate>
		<dc:creator>rafaelangeline</dc:creator>
				<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://devbr.wordpress.com/?p=139</guid>
		<description><![CDATA[Olá. Faz um tempo que não trago novidades, mas hoje começo a dar continuação ao Guia do Iniciante. O tema de hoje é sobre Vector2. Uma das estruturas que você mais irá usar quando criar algo baseado em dois eixos (X e Y = 2D = 2 Dimensões). No ultimo capitulo do Guia do Iniciante, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=139&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Olá. Faz um tempo que não trago novidades, mas hoje começo a dar continuação ao Guia do Iniciante.</p>
<p>O tema de hoje é sobre Vector2. Uma das estruturas que você mais irá usar quando criar algo baseado em dois eixos (X e Y = 2D = 2 Dimensões).</p>
<p><span id="more-139"></span></p>
<p>No <a href="http://devbr.wordpress.com/2009/07/18/guia-do-iniciante-dia-5-sua-primeira-imagem-na-tela-carregar-contedo-e-a-classe-texture2d/" target="_blank">ultimo capitulo</a> do Guia do Iniciante, nós usamos apenas <strong>Vector2.Zero. </strong>Irei realizar uma explicação melhor e iremos deixar o ultimo exemplo bem mais avançado.</p>
<p>Vamos começar!</p>
<p>- “O que é um Vector2?”</p>
<p><strong>Resposta: </strong>Vector2 nada mais é do que uma estrutura/classe que armazena duas coordenadas : X e Y</p>
<p>- “Mas se só serve para armazenar X e Y, por que não uso a classe Point?”</p>
<p><strong>Resposta: </strong>As facilidades que Vector2 nos fornece são muitas. Temos funções como: Vector2.Lerp, Vector2.Subtract, Vector2.Mutiply que realizam calculos digamos que muito extensos e repetitivos.</p>
<p>Veja, por exemplo, como somar dois Points em um novo Point.</p>
<blockquote><p>Point ponto1 = new Point(200, 200);<br />
Point ponto2 = new Point(100, 100);<br />
Point pontoResultante = new Point();</p>
<p>pontoResultante.X = ponto1.X + ponto2.X;<br />
pontoResultante.Y = ponto1.Y + ponto2.Y;</p></blockquote>
<p>O resultado é X = 300; Y = 300. Agora veja o mesmo exemplo com Vector2:</p>
<blockquote><p>Vector2 vetor1 = new Vector2(200, 200);<br />
Vector2 vetor2 = new Vector2(100, 100);<br />
Vector2 resultado = new Vector2();</p>
<p>resultado = Vector2.Add(vetor1, vetor2);</p></blockquote>
<p>Isto produz exatamente o mesmo resultado, obiviamente a diferença não foi grande, mas ao realizarmos, por exemplo, uma interpolação linear, a classe estatica Vector2 é de grande utilidade.</p>
<p>Agora vamos ver o problema de hoje.</p>
<h3>O Problema</h3>
<p>Precisamos <span style="text-decoration:underline;">mover</span> a imagem <span style="text-decoration:underline;">de um lado para o outro</span> na tela em um <span style="text-decoration:underline;">loop interminável</span>.</p>
<p>Vamos analisar algumas palavras-chaves:</p>
<p><strong>-Mover:</strong> Isso significa que precisaremos posiciona-la, ou seja, usaremos Vector2.</p>
<p><strong>-De um lado para o Outro:</strong> Podemos usar velocidade para isso.</p>
<p><strong>-Loop Interminavel:</strong> Isto rima com o método Update() =D</p>
<p>Vamos agora resolver o problema.</p>
<h3>A Resolução</h3>
<p>Antes de tudo, vamos resumir os passos. <strong>Lembre-se de criar um novo projeto.</strong></p>
<blockquote><p><strong>-&gt; NÃO EXIGE CÓDIGO</strong></p>
<p>1. Salve a imagem abaixo:</p>
<p><a href="http://devbr.files.wordpress.com/2009/08/kakashi.png"><img style="display:inline;border-width:0;" title="Kakashi" src="http://devbr.files.wordpress.com/2009/08/kakashi_thumb.png?w=218&#038;h=239" border="0" alt="Kakashi" width="218" height="239" /></a></p>
<p>2. Adicione a imagem ao projeto.</p>
<p><strong>-&gt; CÓDIGO NO TOPO DA CLASSE</strong></p>
<p>3. Crie uma variavel Texture2D para armazenar a imagem</p>
<p>4. Crie uma variavel Vector2 para o posicionamento.</p>
<p>5. Crie uma variavel int para armazenar a velocidade.</p>
<p><strong>-&gt; CÓDIGO NO LOADCONTENT()</strong></p>
<p>6. Carregue a imagem</p>
<p>7. Inicialize a posição</p>
<p>8. Defina a velocidade inicial</p>
<p><strong>-&gt; CÓDIGO NO UPDATE()</strong></p>
<p>9. Defina o Loop principal</p>
<p><strong>-&gt; CÓDIGO NO DRAW()</strong></p>
<p>10. Desenhe a imagem</p></blockquote>
<p>Agora vamos ao Trabalho.</p>
<p><strong>1. </strong>Você já salvou a imagem, certo?</p>
<p><strong>2. </strong>Você já sabe adicionar imagem correto? Se não souber, <a href="http://devbr.wordpress.com/2009/07/18/guia-do-iniciante-dia-5-sua-primeira-imagem-na-tela-carregar-contedo-e-a-classe-texture2d/" target="_blank">Clique Aqui</a>.</p>
<p><a href="http://devbr.files.wordpress.com/2009/08/iniciante_6_content.png"><img style="border-right:0;border-top:0;display:block;float:none;margin-left:auto;border-left:0;margin-right:auto;border-bottom:0;" title="iniciante_6_Content" src="http://devbr.files.wordpress.com/2009/08/iniciante_6_content_thumb.png?w=150&#038;h=244" border="0" alt="iniciante_6_Content" width="150" height="244" /></a></p>
<p><strong>3. </strong>Crie a váriavel Texture2D no topo da classe (antes do Construtor)</p>
<blockquote><p>Texture2D t_Kakashi;</p></blockquote>
<p><strong>4. </strong>Agora criaremos a váriavel para posiciona-lo, adicione o seguinte logo abaixo de “Texture2D t_Kakashi;”</p>
<blockquote><p>Vector2 p_Kakashi;</p></blockquote>
<p><strong>5. </strong>Adicione logo abaixo, a variavel que armazenará a velocidade.</p>
<blockquote><p>int v_Kakashi;</p></blockquote>
<p><strong>6. </strong>Já no método <span style="text-decoration:underline;">LoadContent() </span>carregue a imagem do Kakashi-san. Lembre-se que você pode colocar uma de sua preferencia, só basta carregar e substituir “Kakashi” por “NOME_DA_IMAGEM”.</p>
<blockquote><p>t_Kakashi = Content.Load&lt;Texture2D&gt;(“Kakashi”);</p></blockquote>
<p><strong>7. </strong>Inicialize p_Kakashi, para fazer isso adicione logo abaixo:</p>
<blockquote><p>p_Kakashi = new Vector2( <strong>0 </strong>, <strong>150</strong>);</p></blockquote>
<p><strong>8. </strong>Agora dê um valor para a velocidade da imagem</p>
<blockquote><p>v_Kakashi = 2;</p></blockquote>
<p>Isso significa que a velocidade dele será 2 pixels por atualização da tela.</p>
<p><strong>9. </strong>No método <span style="text-decoration:underline;">Update()</span> adicione a lógica. Veja como o mesmo irá ficar:</p>
<blockquote><p><strong>protected override void Update(GameTime gameTime)<br />
{</strong><br />
if (v_Kakashi &gt; 0) <span style="color:#4a7012;">// Se a velocidade for maior que 0, ou seja positiva, significa que está indo para a direita</span><br />
{<br />
if (p_Kakashi.X &lt; (Window.ClientBounds.Width &#8211; t_Kakashi.Width) &#8211; v_Kakashi)<br />
{<br />
p_Kakashi.X += v_Kakashi;<br />
}<br />
else<br />
{<br />
v_Kakashi *= -1;<br />
}<br />
}<br />
else if (v_Kakashi &lt; 0) <span style="color:#6b8716;">// Se a velocidade for menor que 0, ou seja negativa, significa que está indo para a esquerda</span><br />
{<br />
if (p_Kakashi.X &gt; 0)<br />
{<br />
p_Kakashi.X += v_Kakashi;<br />
}<br />
else<br />
{<br />
v_Kakashi *= -1;<br />
}<br />
}</p>
<p><strong> base.Update(gameTime);<br />
}</strong></p></blockquote>
<p>Vou explicar a lógica envolvida neste loop que faz a mágica para nós. Siga o raciocinio:</p>
<p>Se estiver indo para a direita, ou seja, a velocidade é positiva…</p>
<blockquote><p>if (p_Kakashi.X &lt; (Window.ClientBounds.Width &#8211; t_Kakashi.Width) &#8211; v_Kakashi)<br />
{<br />
p_Kakashi.X += v_Kakashi;<br />
}</p></blockquote>
<p>Se a posição X do Kakashi for menor que a largura da tela – a largura da imagem do Kakashi – a velocidade, ele avança 2 pixels no caso.</p>
<p><strong>Nota: </strong>Lembre-se que no 2D começa-se a contar do canto esquerdo-superior, se você esqueçer de considerar a largura da imagem, a imagem vai sair da tela até o canto superior-esquerdo atingir o ponto desejado.</p>
<p>Então lembre-se que o espaço ocupado por uma imagem é igual à:</p>
<blockquote><p>EspaçoTotal.X = Posicao.x + Imagem.Largura</p>
<p>EspaçoTotal.Y = Posicao.y + Imagem.Altura</p></blockquote>
<p>Voltando…</p>
<p>else<br />
{<br />
v_Kakashi *= -1;<br />
}</p>
<p>Agora se já estiver no limite da tela, a velocidade é invertida. Lembre-se que o sinal pode ser invertido multiplicando-se um valor por –<strong>1</strong>.</p>
<p>Agora a velocidade é –2, ou seja, é menor que 0, portanto está indo para a direita:</p>
<blockquote><p>if (p_Kakashi.X &gt; 0)<br />
{<br />
p_Kakashi.X += v_Kakashi;<br />
}</p></blockquote>
<p>Se sua posição X for maior que 0 ele irá “adicionar” a velocidade, mas no caso, a velocidade é –2, então na verdade irá subtrair 2 pixels da posição.</p>
<p>Agora se a posição é 0, então novamente se inverte a velocidade.</p>
<p>Terminada a lógica envolvida.</p>
<p><strong>10. </strong>No método <span style="text-decoration:underline;">Draw()</span> simplemente desenhe a imagem em sua respectiva posição. Por questões de estética, mude a cor de fundo para White (Branco). Veja como ficou seu método Draw:</p>
<blockquote><p><strong>protected override void Draw(GameTime gameTime)<br />
{</strong><br />
GraphicsDevice.Clear(<strong>Color.White</strong>);</p>
<p>spriteBatch.Begin();</p>
<p>spriteBatch.Draw(t_Kakashi, p_Kakashi, Color.White);</p>
<p>spriteBatch.End();</p>
<p><strong>base.Draw(gameTime);<br />
}</strong></p></blockquote>
<p>Pressione F5 para realizar o Debug e veja o programa em ação!</p>
<p><a href="http://devbr.files.wordpress.com/2009/08/cenafinaldia6.png"><img style="border-right:0;border-top:0;display:block;float:none;margin-left:auto;border-left:0;margin-right:auto;border-bottom:0;" title="cenaFinalDia6" src="http://devbr.files.wordpress.com/2009/08/cenafinaldia6_thumb.png?w=617&#038;h=484" border="0" alt="cenaFinalDia6" width="617" height="484" /></a></p>
<p>Obrigado! E até a próxima!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/devbr.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/devbr.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/devbr.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/devbr.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/devbr.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/devbr.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/devbr.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/devbr.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/devbr.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/devbr.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/devbr.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/devbr.wordpress.com/139/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/devbr.wordpress.com/139/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/devbr.wordpress.com/139/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devbr.wordpress.com&amp;blog=8419788&amp;post=139&amp;subd=devbr&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devbr.wordpress.com/2009/08/30/guia-do-iniciante-dia-6-aprodundando-no-posicionamento-de-imagens-2d-vector2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ec2e3abada4ee8be87b3bb7914a566dc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">rafaelangeline</media:title>
		</media:content>

		<media:content url="http://devbr.files.wordpress.com/2009/08/kakashi_thumb.png" medium="image">
			<media:title type="html">Kakashi</media:title>
		</media:content>

		<media:content url="http://devbr.files.wordpress.com/2009/08/iniciante_6_content_thumb.png" medium="image">
			<media:title type="html">iniciante_6_Content</media:title>
		</media:content>

		<media:content url="http://devbr.files.wordpress.com/2009/08/cenafinaldia6_thumb.png" medium="image">
			<media:title type="html">cenaFinalDia6</media:title>
		</media:content>
	</item>
	</channel>
</rss>
