<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1111786338355014455</id><updated>2024-09-12T08:29:45.688-03:00</updated><title type='text'>Deploy Games</title><subtitle type='html'>Jogos para Windows, Linux, Mac, IOS, Android e Web, Powered by &lt;a href=&quot;http://libgdx.badlogicgames.com/&quot;&gt;LibGDX&lt;/a&gt;</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>23</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-4119077592300188559</id><published>2014-07-17T16:24:00.000-03:00</published><updated>2014-07-17T16:24:29.476-03:00</updated><title type='text'>RPG Maker XP Converter - Janelas e mais Janelas</title><content type='html'>Salve Pessoas!&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Por aqui o trabalho continua. Mas de todas as implementações que eu sabia que seriam necessárias, não imaginei que as janelas de jogo fossem dar tanto trabalho. UFA!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Mas aí alguém pode dizer: &lt;b&gt;Ah, mas são só umas janelinhas, super simples. &lt;/b&gt;Bem, o principal é que as janelas tem que funcionar numa tela de toque, ou seja TODAS ELAS precisaram de ajustes. Acabei achando algumas formas de deixar isso bem bacana, e venho aqui mostrar hoje. Algumas ainda estão em andamento, mas acho que não vai demorar muito para que eu chegue na etapa mais esperada desse conversor: O sistema de batalha.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Janela de Menu (100%):&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRcsD4scimPzWWJjYa8oO9ddZSYy6_Dz9DCE7-ELg2XHDXxnUTqMgyHNp_sAG-guyLgOPmFsqJj8K-oCF29we5fjfUERxUcpJntPw-HvSCfsals4NAUI9_iTjhJuSuy2dgffhs4AK95kI/s1600/Snap1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRcsD4scimPzWWJjYa8oO9ddZSYy6_Dz9DCE7-ELg2XHDXxnUTqMgyHNp_sAG-guyLgOPmFsqJj8K-oCF29we5fjfUERxUcpJntPw-HvSCfsals4NAUI9_iTjhJuSuy2dgffhs4AK95kI/s1600/Snap1.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Janela de Itens (100%):&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKEa3Oj1cW8OZ4K_Qa3huErgWX6Wh_F2oR3WxDC67-3hk3g1O-V-BF1K0BKXKSdN_IxCLiNn-F1w8Qbo9IXaY3oeNStIUe9so0mRIIm7pu1RmHIgNtv-MV8S50AaJpdrwfnoYozfQv1H8/s1600/Snap2.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKEa3Oj1cW8OZ4K_Qa3huErgWX6Wh_F2oR3WxDC67-3hk3g1O-V-BF1K0BKXKSdN_IxCLiNn-F1w8Qbo9IXaY3oeNStIUe9so0mRIIm7pu1RmHIgNtv-MV8S50AaJpdrwfnoYozfQv1H8/s1600/Snap2.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf4Z7dn4ulwM2FLc_5QDgZCcQ2QxB0jqtW0ZkBqmd2gBnrTDnKUAFxkuQLGWR-TCRJvEB7S-nl8x8T8OkaErxNg_cO9YU5ZVP-W4zQZstMlaAbyMy9OAGLDTtU3tKWnZlmUPJn1fzDn4s/s1600/Snap3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf4Z7dn4ulwM2FLc_5QDgZCcQ2QxB0jqtW0ZkBqmd2gBnrTDnKUAFxkuQLGWR-TCRJvEB7S-nl8x8T8OkaErxNg_cO9YU5ZVP-W4zQZstMlaAbyMy9OAGLDTtU3tKWnZlmUPJn1fzDn4s/s1600/Snap3.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Janela de Habilidades (90%):&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijaWR0sLIc6Vv_E97XsHMkXSoEAXoDuK9FpsWV5R95YGdv6TfoLLmwh0lhAZWCRw0tP2NY8SytV96hPjzS5Fa17U2nOH2vh-R5vTVnrTVxYiuyQwo5cUQdK8TOad8HuuKUM2SKBm2aNDE/s1600/Snap4.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijaWR0sLIc6Vv_E97XsHMkXSoEAXoDuK9FpsWV5R95YGdv6TfoLLmwh0lhAZWCRw0tP2NY8SytV96hPjzS5Fa17U2nOH2vh-R5vTVnrTVxYiuyQwo5cUQdK8TOad8HuuKUM2SKBm2aNDE/s1600/Snap4.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Janela de Equipamento (100%):&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMIjWPkcNO5rVBtPW0ss25oSL2_gJt4yZB_kHtUDVoLkoEIWdxMHEfPzvRofADzPX0-WeEK95TB44DHaXDLUeNjRpm6Y3s8TXOztWNTYckhunX6N4Zi6gdyu9v_Xh6aUwU5zqXzjW3GGw/s1600/Snap5.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMIjWPkcNO5rVBtPW0ss25oSL2_gJt4yZB_kHtUDVoLkoEIWdxMHEfPzvRofADzPX0-WeEK95TB44DHaXDLUeNjRpm6Y3s8TXOztWNTYckhunX6N4Zi6gdyu9v_Xh6aUwU5zqXzjW3GGw/s1600/Snap5.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge2ybK6BxnF-su_1snMkvmiZKBqyPbashCNCbKnIGBYyGys5QV0IRNFOrhz9RhCtHuMOD0W_VyRZfPd5akPEpP0NxEGnB8lSrIiCnHGcgum4MtjFrzjizG3ELjnNEPLQ0w8V-OOX7Ea2U/s1600/Snap6.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge2ybK6BxnF-su_1snMkvmiZKBqyPbashCNCbKnIGBYyGys5QV0IRNFOrhz9RhCtHuMOD0W_VyRZfPd5akPEpP0NxEGnB8lSrIiCnHGcgum4MtjFrzjizG3ELjnNEPLQ0w8V-OOX7Ea2U/s1600/Snap6.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Janela de Status: (100%):&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgm2DxgkxzGkrgxuOHDBoDkUynj-IZN0r2PtYHrBycpXcslWVA1wGEevtJt5txZdOGs_JdbryKQVM_ZqnRBoAI2cn1QM4Ag4n-YNWD4lXOP2uUgLO6FDksJ3wZU9_W3CXzZlpI5rU4jrFI/s1600/Snap7.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgm2DxgkxzGkrgxuOHDBoDkUynj-IZN0r2PtYHrBycpXcslWVA1wGEevtJt5txZdOGs_JdbryKQVM_ZqnRBoAI2cn1QM4Ag4n-YNWD4lXOP2uUgLO6FDksJ3wZU9_W3CXzZlpI5rU4jrFI/s1600/Snap7.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Janela de Loja (50%):&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7d8g34hT0Wu1RvMKHoTJp5Z2PkVaYRcwIlCyoaw7RVd0QfH2laFnwOX7jru5mXV-2-PWcZ4f_MO3gGDamE_cUhfHfOIra5cNJ5D7cDhwDHgDiQm1hMEB63VcZ5EfwyMmp_T9Han8e0Z0/s1600/Snap8.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7d8g34hT0Wu1RvMKHoTJp5Z2PkVaYRcwIlCyoaw7RVd0QfH2laFnwOX7jru5mXV-2-PWcZ4f_MO3gGDamE_cUhfHfOIra5cNJ5D7cDhwDHgDiQm1hMEB63VcZ5EfwyMmp_T9Han8e0Z0/s1600/Snap8.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
Veja que precisei mudar algumas coisas principalmente nas janelas de Habilidades, equipamento e Status, acrescentando o seletor de herói na parte de baixo.&lt;br /&gt;
&lt;br /&gt;
Por enquanto é isso, vamo que vamo!&lt;br /&gt;
&lt;br /&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/4119077592300188559/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2014/07/rpg-maker-xp-converter-janelas-e-mais.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/4119077592300188559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/4119077592300188559'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2014/07/rpg-maker-xp-converter-janelas-e-mais.html' title='RPG Maker XP Converter - Janelas e mais Janelas'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRcsD4scimPzWWJjYa8oO9ddZSYy6_Dz9DCE7-ELg2XHDXxnUTqMgyHNp_sAG-guyLgOPmFsqJj8K-oCF29we5fjfUERxUcpJntPw-HvSCfsals4NAUI9_iTjhJuSuy2dgffhs4AK95kI/s72-c/Snap1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-5258069640337089710</id><published>2014-07-06T20:32:00.001-03:00</published><updated>2014-07-06T20:54:30.322-03:00</updated><title type='text'>RPG Maker XP Converter - O trabalho continua! - Parte 2</title><content type='html'>Salve amigos!&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Eu de novo por aqui. Eu sei que tem gente por aí torcendo pra que eu desista de fazer esta ferramenta. Mas vou dizer com todas as palavras: &lt;b&gt;Isto vai ser feito! &lt;/b&gt;É complicado sim, estou tendo dificuldade com muitas coisas, há muito o que portar ainda, mas como é um objetivo da equipe Deploy fazer um P#t@ jogo de RPG para Android, então é minha obrigação terminar essa ferramenta.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Boas notícias sobre os scripts:&lt;/span&gt;&lt;/b&gt; Já tenho uma forma de portar os scripts dos comandos &quot;&lt;b&gt;Chamar Script&lt;/b&gt;&quot; para serem executados na engine. É claro que no começo haverão certas restrições, mas com certeza conseguirei deixar muita coisa configurável via script através do comando!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
No mais, as coisas vão caminhando aos poucos, muita, mas muita coisa mesmo já funciona. Não vai demorar muito pra termos uma demo disponível por aí.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Segue um pouquinho a mais do que já está funcionando:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Engine em execução, Configuração de valores variáveis nas mensagens (cores, nome de herói, valor de variável, dinheiro):&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiShfaCVtuGOHXljPotyWhX7tzrz4e4zyGz-WN206SU4p3hoWNyqKPSQh3PFr41NcJgvwZ1zi4vVu4EyKU-ZbWGRgUqRQf0qWKSq_nyvu4btZebwsxoC3sJTZSTtkadz-Rt8_oxMFEefJg/s1600/Snap1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiShfaCVtuGOHXljPotyWhX7tzrz4e4zyGz-WN206SU4p3hoWNyqKPSQh3PFr41NcJgvwZ1zi4vVu4EyKU-ZbWGRgUqRQf0qWKSq_nyvu4btZebwsxoC3sJTZSTtkadz-Rt8_oxMFEefJg/s1600/Snap1.jpg&quot; height=&quot;428&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFyI3JEafREZqzjh_m_DrQeaOll-b8K0dbaCUa5C4AUh5Qnla5fOqGLB-2GQSUwvq8m1TX51GWAV4JbrZfORRLD-nNwuH8EzfRkSTk_GQ7kopJM_lhTSv2P3tEWUCEYDdJye-zODd5G7Q/s1600/Snap3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFyI3JEafREZqzjh_m_DrQeaOll-b8K0dbaCUa5C4AUh5Qnla5fOqGLB-2GQSUwvq8m1TX51GWAV4JbrZfORRLD-nNwuH8EzfRkSTk_GQ7kopJM_lhTSv2P3tEWUCEYDdJye-zODd5G7Q/s1600/Snap3.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Engine em execução, Configuração de Clima (Chuva, tempestade e Neve):&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVrcXeg8McI84ShFKA4OLG0Kocohmbe1IXU0StD8aAg4Rpe7WxGLQgLCGpYD1VU2WZNylX11rXhaT_KV_8gfY0qiMdbBBf7PegA9O9kSgCov7zqK-WTK5xNF8FRrY31uA9duIv2whYmqc/s1600/Snap4.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVrcXeg8McI84ShFKA4OLG0Kocohmbe1IXU0StD8aAg4Rpe7WxGLQgLCGpYD1VU2WZNylX11rXhaT_KV_8gfY0qiMdbBBf7PegA9O9kSgCov7zqK-WTK5xNF8FRrY31uA9duIv2whYmqc/s1600/Snap4.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Engine em execução, Tom de Tela, Flash e Efeito de Tremor:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh_hKiNyYZx4m1q22Lx2GLW0xoPODBR6dxWBYAl2dZISQe3Cr9Vmi5Us2ppGqZrOdG3-tsz9qLA2bZBlKnJVMmAyrrx3fWyxBDxhTTnq2BDNtH0IBmrRAnTP6Gl5plqQWrVX2VSVoex9E/s1600/Snap5.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh_hKiNyYZx4m1q22Lx2GLW0xoPODBR6dxWBYAl2dZISQe3Cr9Vmi5Us2ppGqZrOdG3-tsz9qLA2bZBlKnJVMmAyrrx3fWyxBDxhTTnq2BDNtH0IBmrRAnTP6Gl5plqQWrVX2VSVoex9E/s1600/Snap5.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Por enquanto é o que posso mostrar.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/5258069640337089710/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2014/07/rpg-maker-xp-converter-o-trabalho.html#comment-form' title='4 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/5258069640337089710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/5258069640337089710'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2014/07/rpg-maker-xp-converter-o-trabalho.html' title='RPG Maker XP Converter - O trabalho continua! - Parte 2'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiShfaCVtuGOHXljPotyWhX7tzrz4e4zyGz-WN206SU4p3hoWNyqKPSQh3PFr41NcJgvwZ1zi4vVu4EyKU-ZbWGRgUqRQf0qWKSq_nyvu4btZebwsxoC3sJTZSTtkadz-Rt8_oxMFEefJg/s72-c/Snap1.jpg" height="72" width="72"/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-7008671262564983214</id><published>2014-06-23T22:30:00.000-03:00</published><updated>2014-06-24T09:47:04.388-03:00</updated><title type='text'>RPG Maker XP Converter - O trabalho continua!</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;
Salve amigos!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Venho aqui falar sobre o projeto de forma genérica, por um motivo bem simples: Todo o trabalho envonvendo a construção da ferramenta não poderá ser descrito de forma técnica como eu estava planejando. Há muito trabalho. Só para se ter noção, os comandos de eventos são 96, ou seja, 96 implementações que precisam ser feitas, os comandos de mover evento são mais de 40, e tem toda a engine de batalha ainda.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Outro detalhe são os curiosos. Minha caixa de email está lotada de curiosos que, agora que viram que é possível fazer uma ferramenta desse porte, não param de perguntar como estou fazendo isto ou aquilo. Não é que eu queria esconder nada, mas tem muita coisa que eu só vou saber como fazer NA HORA DE FAZER, não tenho nada planejado para saber exatamente como as coisas irão funcionar.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Então, para não ficar parecendo que o projeto parou, eu vou postando screens e videos do andamento e, do jeito que as coisas estão, acho que rapidinho vou conseguir disponibilizar um beta pra vocês.&lt;/div&gt;
&lt;br /&gt;
Seguem algumas Screens do Andamento:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Conversor, tela principal (WIP):&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcXmHkKOBGBy6lFgu45kjoqTw8jjTNZ6DIyRON5KZKpClWk0aoD5WlgDUy6azSP47DlB5YylJ-E5yiKRggQi74LZTtttfQ-V60M6QsEJh7cofSqx2hEcf-VBlNh6ziEVjROVoZfg-T5ZQ/s1600/Snap1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcXmHkKOBGBy6lFgu45kjoqTw8jjTNZ6DIyRON5KZKpClWk0aoD5WlgDUy6azSP47DlB5YylJ-E5yiKRggQi74LZTtttfQ-V60M6QsEJh7cofSqx2hEcf-VBlNh6ziEVjROVoZfg-T5ZQ/s1600/Snap1.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Conversor, tela de customizações (WIP):&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4t74KBYb5JoNMBcAQK5yopCdzCMdQSUI7yxnBYgKgVppEdxl7i6eGA4XUG2QFGDu6d4k54tWr8E7SQI4B0mwOWGBsfN15O4TxC7zlkqfiXOFMjmDfxgnjvFRiDHDTJYbNzSTZP66WFIU/s1600/Snap2.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4t74KBYb5JoNMBcAQK5yopCdzCMdQSUI7yxnBYgKgVppEdxl7i6eGA4XUG2QFGDu6d4k54tWr8E7SQI4B0mwOWGBsfN15O4TxC7zlkqfiXOFMjmDfxgnjvFRiDHDTJYbNzSTZP66WFIU/s1600/Snap2.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Engine em execução, tela de Título:&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhre6-YCDhuLcS2uTmnZH9g5R14lh7J8MVqi4g3b-bUmANlHuxxFpVZbc7RT3J2llav1hCGfF00Tc3bKgUGWi9PzTbM7PZXBu5rKb8R8aRHA6-74f9ac25ufYF7FQ95biR01-jWd7eWK5I/s1600/Snap3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhre6-YCDhuLcS2uTmnZH9g5R14lh7J8MVqi4g3b-bUmANlHuxxFpVZbc7RT3J2llav1hCGfF00Tc3bKgUGWi9PzTbM7PZXBu5rKb8R8aRHA6-74f9ac25ufYF7FQ95biR01-jWd7eWK5I/s1600/Snap3.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Engine em execução, tela de Mapa:&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5750WeXNHi8UV8ZgCS13g48JI5X0OhmZ30MiVSNcjhdZw8wqw9OyOY8d4bcouHlT5BDIRhJKfFRiHz2c_F-9w5zRXG580eY6_kUxuqdLPHMTwopKhvQU8UW2OWNxYhCBUiOH5iImMxg8/s1600/Snap4.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5750WeXNHi8UV8ZgCS13g48JI5X0OhmZ30MiVSNcjhdZw8wqw9OyOY8d4bcouHlT5BDIRhJKfFRiHz2c_F-9w5zRXG580eY6_kUxuqdLPHMTwopKhvQU8UW2OWNxYhCBUiOH5iImMxg8/s1600/Snap4.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Engine em execução, tela de Menu Padrão:&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEuEd2yNZd1LwC01f3ocJax8Pl88_9UKXDcHvGuBgvOevhdI_RDO4XLXjfjw36W1ve7KTvI1tAoGQmzKBfkW9DPETIp09qv7mMnIc4aNLA9ryNggmcR2c3odGJ0TGaQQekPeR2ki-J_QE/s1600/Snap5.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEuEd2yNZd1LwC01f3ocJax8Pl88_9UKXDcHvGuBgvOevhdI_RDO4XLXjfjw36W1ve7KTvI1tAoGQmzKBfkW9DPETIp09qv7mMnIc4aNLA9ryNggmcR2c3odGJ0TGaQQekPeR2ki-J_QE/s1600/Snap5.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Engine em execução, Comando &quot;Teleporte&quot; já funcional (troca de mapa):&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgihMsWDRlTCy_9C9-CgSmdCmj_JasCE3Ixo5nXg9OhCyEnj8dQPm9sjZ3pizkpw-MJK7QlNxG6JjhVOMauZT_G8bb468xaPlE-4UVSFfdggkwREvyOwNkliacXzVHA_6S7erpYZkp6170/s1600/Snap6.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgihMsWDRlTCy_9C9-CgSmdCmj_JasCE3Ixo5nXg9OhCyEnj8dQPm9sjZ3pizkpw-MJK7QlNxG6JjhVOMauZT_G8bb468xaPlE-4UVSFfdggkwREvyOwNkliacXzVHA_6S7erpYZkp6170/s1600/Snap6.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Engine em execução, Comando &quot;Mostrar Mensagem&quot; já funcional:&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpDpCVOxW5Z34TK_5mWz11H-fv7QzneJCFwMgJIdUGEP_BSPE0AiUIJANoVAaQ0FwgteyzaoHBij8p1iVbYhHTzc-dzu09YbCDHcQogMyBnTm7ANKxm5jMcGliiCUJXOrXwUK9I-lHNqQ/s1600/Snap7.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpDpCVOxW5Z34TK_5mWz11H-fv7QzneJCFwMgJIdUGEP_BSPE0AiUIJANoVAaQ0FwgteyzaoHBij8p1iVbYhHTzc-dzu09YbCDHcQogMyBnTm7ANKxm5jMcGliiCUJXOrXwUK9I-lHNqQ/s1600/Snap7.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Engine em execução, Comando &quot;Armazenar Número&quot; já funcional:&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCNyhj1cU-f_-nVYY86Ka69S0QjzW4nZ-iX32jRfzVwxN3WeIxi8KSY9BVjqman07KeT1KQz4OQjZ4mEisMrFpxHE6rnTywMQVLev1sSVgYQq3ZR-163UzB4QOEdVCVl0LfSEIGqdyj9I/s1600/Snap8.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCNyhj1cU-f_-nVYY86Ka69S0QjzW4nZ-iX32jRfzVwxN3WeIxi8KSY9BVjqman07KeT1KQz4OQjZ4mEisMrFpxHE6rnTywMQVLev1sSVgYQq3ZR-163UzB4QOEdVCVl0LfSEIGqdyj9I/s1600/Snap8.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Por enquanto é isso. Vejam que já andei um tanto bom, mas tem muita coisa ainda pela frente!&lt;/div&gt;
&lt;br /&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/7008671262564983214/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2014/06/rpg-maker-xp-converter-o-trabalho.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/7008671262564983214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/7008671262564983214'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2014/06/rpg-maker-xp-converter-o-trabalho.html' title='RPG Maker XP Converter - O trabalho continua!'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcXmHkKOBGBy6lFgu45kjoqTw8jjTNZ6DIyRON5KZKpClWk0aoD5WlgDUy6azSP47DlB5YylJ-E5yiKRggQi74LZTtttfQ-V60M6QsEJh7cofSqx2hEcf-VBlNh6ziEVjROVoZfg-T5ZQ/s72-c/Snap1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-7104276211994684243</id><published>2014-06-16T09:23:00.001-03:00</published><updated>2014-06-16T09:23:36.878-03:00</updated><title type='text'>RPG Maker XP Converter - Conversão de Mapas para o Tiled - 1º Etapa</title><content type='html'>Salve Amigos!&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Estou empolgado em manter ativo este blog, e com este novo objetivo em andamento, acho que não terei problemas pra isso :D&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
No post anterior falei sobre a extração e conversão de dados do RPG Maker XP para um formato legível por outra ferramenta. Antes de qualquer outra coisa, seria preciso ter certeza que os Mapas de jogo do RMXP poderiam ser renderizados no LibGDX, já que há todo um aparato por trás (Tileset, SpritesetMap, Eventos) que fazem o mapa funcionar e, é óbvio, &lt;b&gt;não se tem um jogo de RMXP sem mapas!&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Para mim, a opção mais óbvia era usar o &lt;a href=&quot;http://www.mapeditor.org/&quot;&gt;Tiled&lt;/a&gt;. É uma ferramenta Free, extremamente bem cotada no mercado indie de jogos e o principal: É completamente compatível com o LibGDX! Como eu já havia feito um código de extração de mapas para XML (posso mudar isso para JSON a qualquer momento :P) usei este padrão para fazer a etapa de conversão de mapas. Veja um pouco do que é gerado pelo RGSS como saída para os mapas:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.4shared.com/document/q_MDt9omce/mapinfos.html&quot;&gt;MapInfos&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.4shared.com/document/0Uvp_ylhba/tilesets.html&quot;&gt;Tilesets&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Algumas coisas são bem parecidas, e facilitou muito, como por exemplo:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;RXMP e Tiled usam 0 para uma região vazia;&lt;/li&gt;
&lt;li&gt;RMXP e Tiled colocam os tiles como sequencia numérica, ou seja, não usam posição X/Y do tile e sim um ID que o identifica;&lt;/li&gt;
&lt;li&gt;O RMXP guarda os IDs de 1 a 383 para os Autotiles, independente de haver um configurado ou não. No Tiled, usando o parametro &lt;b&gt;firstgid &lt;/b&gt;é possível definir a partir de qual ID o tileset irá começar;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Até aqui tudo normal, consegui transformar o XML de saída do RMXP no XML de entrada do Tiled APENAS PARA O TILESET. &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;Certo, mas e os Autotiles?&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
Bom, sinseramente eu não imaginei que seria tão complicado. como é explicado neste &lt;a href=&quot;http://www.codeproject.com/Articles/106884/Implementing-Auto-tiling-Functionality-in-a-Tile-M&quot;&gt;post do CodeProject&lt;/a&gt;&amp;nbsp;o mapeamento por usando autotiling é bem complexo, e eu teria que desdobrar pra descobrir como fazer isso usando o Tiled. Daí pesquisando um pouco, descobri que o próprio RMXP desdobra os AutoTiles em uma imagem já mapeada e numerada, como a do exemplo abaixo:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3cH793gg-wHgtF7JA8Sl82INXjDq9YLI-pys66O_rtnCoINil6zhgjidvq1AQt0lR2kexxKdLHdy_5YUnZE6gtiXhuwh3K8MI8FnN9bnfNoCUjh8rbOdlKr2smQudY5Tv_EZdT21bh9c/s1600/base.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3cH793gg-wHgtF7JA8Sl82INXjDq9YLI-pys66O_rtnCoINil6zhgjidvq1AQt0lR2kexxKdLHdy_5YUnZE6gtiXhuwh3K8MI8FnN9bnfNoCUjh8rbOdlKr2smQudY5Tv_EZdT21bh9c/s1600/base.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Pensando nisso, foi questão de tempo até fazer uma ferramenta que transforma um arquivo de autotile comum e um arquivo com o mapeamento acima. Qual o ganho disso? Este arquivo entra como tileset no arquivo do Tiled, mapeado com o&amp;nbsp;&lt;b&gt;firstgid&amp;nbsp;&lt;/b&gt;baseado na sua posição (veja que usei como exemplo uma imagem que&amp;nbsp;começa no ID 48) e então, VOILA! Um mapa completo, incluindo Autotiles!&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://s8.postimg.org/78aepn945/Snap1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://s8.postimg.org/78aepn945/Snap1.jpg&quot; height=&quot;360&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
A primeira etapa esta completa, com isso seria possível construir um modelo usando o LibGDX que carregasse este mapa!&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;MAS...&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
O principal problema, que ainda não pensei a melhor forma de fazer é com o AutoTiles animados. O RMXP usa um algoritmo muito complexo que muda apenas os tiles daquela posição se o AutoTile for animado, e isso é bem complexo de fazer usando o Tiled + LibGDX. Como o foco é fazer funcionar bem básico e ir melhorando com o tempo, já tenho uma idéia de como fazer, espero que funcione.&lt;br /&gt;
Ainda falta muita coisa, pra falar aqui, mas já posso dar a dica:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Como a proposta é que funcione para Celulares, o movimento do Herói será usando Click-To-Move, ou movimento com o Mouse como muitos conhecem. Já tenho Know-how nisso (Chama-se A* PathFinding) e pelos meus testes vai funcionar bala;&lt;/li&gt;
&lt;li&gt;O Mapeamento de colisão vai ser básico por enquanto, ou seja, nada daquela mapeamento complexo que é feito no RMXP, apenas se colide ou não colide;&lt;/li&gt;
&lt;li&gt;Deslocamento do Mapa quando o Player Andar: No LibGDX isto é feito com cameras, já sei como fazer e já testei :D&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
No mais é isso. Próximo Post espero falar mais sobre os mapas, e quem sabe já falar sobre os eventos!&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/7104276211994684243/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2014/06/rpg-maker-xp-converter-conversao-de.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/7104276211994684243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/7104276211994684243'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2014/06/rpg-maker-xp-converter-conversao-de.html' title='RPG Maker XP Converter - Conversão de Mapas para o Tiled - 1º Etapa'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3cH793gg-wHgtF7JA8Sl82INXjDq9YLI-pys66O_rtnCoINil6zhgjidvq1AQt0lR2kexxKdLHdy_5YUnZE6gtiXhuwh3K8MI8FnN9bnfNoCUjh8rbOdlKr2smQudY5Tv_EZdT21bh9c/s72-c/base.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-423419711914796959</id><published>2014-06-15T20:01:00.002-03:00</published><updated>2014-06-15T20:01:36.463-03:00</updated><title type='text'>RPG Maker XP Converter - Extração e conversão de dados</title><content type='html'>Salve Pessoas!&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Assim como foi dito &lt;a href=&quot;http://deploygames.blogspot.com.br/2014/06/rpg-maker-xp-converter-o-inicio.html&quot;&gt;neste post&lt;/a&gt;&amp;nbsp;estou trabalhando numa ferramenta que vai aproveitar dados e recursos do RPG Maker XP, que roda apenas em Windows, para ser executado em várias plataformas como Android, IOS, Web, Linux e Mac.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Resolvi ir escrevendo sobre os passos e dificuldades, pois pretendo que esta seja uma ferramenta aberta para uso, nada de &quot;código fonte para estudos e blablabla&quot; de coisas que não funcionam ou dão um trampo maluco pra funcionar, aqui a coisa vai funcionar como o próprio LibGDX, é pegar, executar e ser feliz! :D&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Aqueles que já leram materiais meus tanto sobre RPG Maker, Game Maker ou LibGDX sabem que eu tento deixar a coisa o mais explicada possível, pra que qualquer um também se aventure a fazer. Vamos começar então:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
A etapa principal deste projeto maluco é bem mais a conversão dos dados que estão no banco de dados e nos mapas do RPG Maker para um formato que possa ser lido depois por outras ferramentas. Bem, o que temos de mais atual para isso é o &lt;a href=&quot;http://json.org/&quot;&gt;JSON&lt;/a&gt;, que na minha opinião supera o XML por um motivo simples: Tamanho e estrutura. Ainda sim, usar um pouco de XML para a transformação não faz mal nenhum.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;Mas o que foi preciso fazer?&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
A primeira coisa era entender o comportamento dos objetos do RPG Maker XP, ou seja, quais são, se possuem listas, outros objetos internos, etc. Para isso, nada melhor que uma mãozinha da própria Enterbrain. Para quem já mexeu com o RPG Maker XP em Inglês, sabe que o Help Oficial possui essa informação, no nó Game Library -&amp;gt; RPGXP Data Structure. Lá, todos os objetos internos do Banco de dados como Actors, Classes, Events, Maps, etc estão descritos de forma clara. Para facilitar sua vida, está &lt;a href=&quot;http://www.4shared.com/rar/LcIGJa35/rpgxp_-_help_-_ingles.html&quot;&gt;AQUI&lt;/a&gt; o download do Help em Inglês do RPG Maker XP para estudo/verificação/morte de curiosidade ou algo assim. :D&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Sabendo essas informações, o que precisei fazer foi um script em Ruby que transformasse os objetos internos do database em JSON / XML em arquivos .json ou .xml. para matar um pouco da curiosidade, olha como é simples gravar um arquivo texto usando RGSS:&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;div class=&quot;code&quot;&gt;
def write_file(nomeArquivo, conteudo)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; f = File.open(nomeArquivo, &quot;w&quot;)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; f.write(conteudo)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; f.close&lt;br /&gt;
end&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
No mais, para cada tipos de objetos (Actors, Classes, etc) eu criei um método e na sequencia, extraio o dado criado para um arquivo. Veja por exemplo o método que cria o script de Actors:&lt;br /&gt;
&lt;div class=&quot;code&quot;&gt;
&amp;nbsp; def export_actors_JSON&lt;br /&gt;
&amp;nbsp; &amp;nbsp; saida = &#39;&quot;actors&quot;:[&#39;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; v = &quot;&quot;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; $data_actors.each{ |actor|&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; if actor != nil then&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; #character_hue&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; #battler_hue&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; saida += v + &#39;{&quot;id&quot;:&#39; &amp;nbsp;+ actor.id.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;name&quot;:&quot;&#39; &amp;nbsp; &amp;nbsp; &amp;nbsp; + actor.name +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;&quot;,&quot;class_id&quot;:&#39; &amp;nbsp; + actor.class_id.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;char_name&quot;:&quot;&#39; &amp;nbsp;+ actor.character_name +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;&quot;,&quot;batt_name&quot;:&quot;&#39; + actor.battler_name +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;&quot;,&quot;exp_basis&quot;:&#39; &amp;nbsp;+ actor.exp_basis.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;char_hue&quot;:&#39; &amp;nbsp; &amp;nbsp;+ actor.character_hue.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;batt_hue&quot;:&#39; &amp;nbsp; &amp;nbsp;+ actor.battler_hue.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;exp_inflat&quot;:&#39; &amp;nbsp;+ actor.exp_inflation.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;lvl_ini&quot;:&#39; &amp;nbsp; &amp;nbsp; + actor.initial_level.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;lvl_fim&quot;:&#39; &amp;nbsp; &amp;nbsp; + actor.final_level.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;wn_id&quot;:&#39; &amp;nbsp; + actor.weapon_id.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;wn_fix&quot;:&#39; &amp;nbsp;+ (actor.weapon_fix ? &#39;1&#39; : &#39;0&#39;) +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;a1_id&quot;:&#39; &amp;nbsp; + actor.armor1_id.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;a1_fix&quot;:&#39; &amp;nbsp;+ (actor.armor1_fix ? &#39;1&#39; : &#39;0&#39;) +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;a2_id&quot;:&#39; &amp;nbsp; + actor.armor2_id.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;a2_fix&quot;:&#39; &amp;nbsp;+ (actor.armor2_fix ? &#39;1&#39; : &#39;0&#39;) +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;a3_id&quot;:&#39; &amp;nbsp; + actor.armor3_id.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;a3_fix&quot;:&#39; &amp;nbsp;+ (actor.armor3_fix ? &#39;1&#39; : &#39;0&#39;) +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;a4_id&quot;:&#39; &amp;nbsp; + actor.armor4_id.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;a4_fix&quot;:&#39; &amp;nbsp;+ (actor.armor4_fix ? &#39;1&#39; : &#39;0&#39;) +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;parameters&quot;:[&#39;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; temp = &quot;&quot;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; v1 = &quot;&quot;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for i in 0...6&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; temp += v1 + &#39;{&quot;type&quot;:&#39; + i.to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;values&quot;:[&#39;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; v2 = &quot;&quot;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for j in 1..99&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; temp += v2 + &#39;{&quot;vl&quot;:&#39; + actor.parameters[i, j].to_s +&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;,&quot;lvl&quot;:&#39; + j.to_s + &#39;}&#39;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; v2 = &quot;,&quot;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; end&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; temp += &#39;]}&#39;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; v1 = &quot;,&quot;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; end&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; saida += temp&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; saida += &#39;]}&#39;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; v = &quot;,&quot;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; end&lt;br /&gt;
&amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&amp;nbsp; &amp;nbsp; return saida + &quot;]&quot;&lt;br /&gt;
&amp;nbsp; end&lt;/div&gt;
&lt;br /&gt;
Como a minha intenção é apenas demonstrar como estou fazendo, não vou postar todo o código. Mas uma coisa é certa: No final, para o Maker que for usar a ferramenta, ele só precisará inserir um script que será disponibilizado por mim em seu projeto e toda a mágica acontecerá.&lt;br /&gt;
&lt;br /&gt;
Por enquanto é isso amigos. Na próxima prometo falar já sobre a conversão dos Mapas de RPG Maker XP para o &lt;a href=&quot;http://www.mapeditor.org/&quot;&gt;Tiled&lt;/a&gt;, uma das ferramentas suportadas pelo LibGDX para criação de mapas baseados em Tiles. Até lá!&lt;br /&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;/div&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/423419711914796959/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2014/06/rpg-maker-xp-converter-extracao-e.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/423419711914796959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/423419711914796959'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2014/06/rpg-maker-xp-converter-extracao-e.html' title='RPG Maker XP Converter - Extração e conversão de dados'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-3745689626773406426</id><published>2014-06-13T14:25:00.001-03:00</published><updated>2014-06-13T14:25:26.024-03:00</updated><title type='text'>RPG Maker XP Converter - O início</title><content type='html'>Salve Pessoas!&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
A tempos não escrevo nada por aqui. Muito se passou, novos jogos foram publicados, o LibGDX se tornou melhor em vários sentidos, e nós da Deploy Games também.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
A muito tempo atrás eu sonhei em poder levar tudo de bom que o RPG Maker tem para outros mundos, já que a Enterbrain ainda não decidiu fazer isso. No inicio, pensei que reinventar a roda seria a melhor forma, como pode ser visto &lt;a href=&quot;http://deploygames.blogspot.com.br/search?q=Deploy+Rpg+maker&quot;&gt;aqui&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Hoje, com toda a experiência que tenho, vejo que é completamente inviável fazer isso, já que no início a proposta era que um desenvolvedor de jogos de RPG Maker pararia de usar o mesmo e usaria minha ferramenta, como é o caso do &lt;a href=&quot;https://sites.google.com/site/irmproject/&quot;&gt;IRM Project&lt;/a&gt;.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Foi então que pensei: &lt;b&gt;Porque não aproveitar tudo que a IDE do RPG Maker tem de melhor, e usar isso para portar os jogos?&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Fazendo algumas análises, cheguei numa conclusão bem simples:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Todos os dados que são gerados pelo RPG Maker (Chars, Mapas, Classes, Animações, etc) poderiam ser exportados em um formato comum como XML ou JSON e lidos por outras ferramentas para uma pós-configuração ou diretamente por um interpretador;&lt;/li&gt;
&lt;li&gt;Mesmo que não seja possível usar Ruby como linguagem de programação (esqueça JRuby, não passa nem perto do que é preciso) posso converter código Ruby para outra linguagem como javascript e então usar o que foi programado pelo criador do jogo;&lt;/li&gt;
&lt;li&gt;A semelhança dos Mapas do RPG Maker com os Mapas criados pelo &lt;a href=&quot;http://www.mapeditor.org/&quot;&gt;Tiled&lt;/a&gt;, ferramenta com suporte total no LibGDX, é muito grande;&lt;/li&gt;
&lt;li&gt;Todas as plataformas que pretendo portar tem suporte a MIDI;&lt;/li&gt;
&lt;li&gt;Tudo que o Executor de Jogo do RPG Maker faz, é possível fazer com o LibGDX;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Olhando para tudo isso, só me veio uma pergunta: Por que não? É algo que eu quero a tempos, a comunidade Maker é enorme, há vários makers que não se importam com RGSS para fazer seus jogos e por fim, seria uma forma de tornar viável a construção de RPGs para a Deploy.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Depois de postar uma Enquete no Mundo RPG Maker e ver que a maioria dos Makers apoia a idéia, comecei o trabalho e espero conseguir ir postando o andamento por aqui. Minha idéia é que pelo menos o formato de PC/Linux/Mac e de Android seja possível converter sem maiores problemas. De cara já há algumas restrições:&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;AutoTiles Animados: Eu tenho uma idéia de como fazer, mas ainda não darei foco nisso;&lt;/li&gt;
&lt;li&gt;Programação RGSS: Não será possível customizar nada usando código ruby. Estou pensando em como fazer para que as principais telas de jogo (Menus, Mensagens, Título, Batalha, etc) possam ser customizadas mas nada usando ruby;&lt;/li&gt;
&lt;li&gt;Touch X Teclado: As duas opções estarão disponíveis, ou seja, um item de menu poderá ser tocado e clicado, o movimento do heróí se dará tanto pelas setas direcionais quanto pelo toque na tela, entre outras coisas;&lt;/li&gt;
&lt;li&gt;Audio no formato .ogg: Todas as plataformas suportam o ogg, exceto o IOS no qual o LibGDX ainda não conseguiu fazer funcionar. Como é uma restrição do Framework e não minha, nada pode ser feito;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
Por enquanto é isso. Espero que vire.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/3745689626773406426/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2014/06/rpg-maker-xp-converter-o-inicio.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/3745689626773406426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/3745689626773406426'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2014/06/rpg-maker-xp-converter-o-inicio.html' title='RPG Maker XP Converter - O início'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-5938172316915797677</id><published>2012-09-20T12:47:00.000-03:00</published><updated>2012-09-20T12:47:37.991-03:00</updated><title type='text'>LibGDX Tutoriais - Escrevendo texto / Criando BitmapFonts</title><content type='html'>Salve pessoas!&lt;br /&gt;
&lt;br /&gt;
Para quem ainda não conhece o início desses tutoriais pode acessá-los &lt;a href=&quot;http://deploygames.blogspot.com.br/2012/09/libgdx-tutoriais-inicio-basico-no-libgdx.html&quot; target=&quot;_blank&quot;&gt;aqui(1)&lt;/a&gt; e &lt;a href=&quot;http://deploygames.blogspot.com.br/2012/09/libgdx-tutoriais-configurando-o-projeto.html&quot; target=&quot;_blank&quot;&gt;aqui(2)&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Continuo eu aqui tentando ensinar sobre LibGDX. Vou falar sobre como escrever texto. Eu sei, parece bobagem, coisa simples, mas acaba não sendo, por um motivo bem simples: o OpenGL não interpreta diretamente fontes instaladas no OS para escrever texto. Para isso, é necessário haver um intermediário, que é o caso do LibGDX, onde usaremos o &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;BitmapFont&lt;/span&gt;&lt;/b&gt;.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Usando os projetos criados nos tutoriais anteriores, agora vamos escrever um pouco de texto. Abra o projeto &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore&lt;/span&gt;&lt;/b&gt;, o arquivo &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;GameRoot&lt;/span&gt;&lt;/b&gt;, e acrescente essa declaração:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;private BitmapFont currentFont;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
No método create(), adicione a Instancia do objeto:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentFont = new BitmapFont();&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
No método dispose(), adicione a descarga do objeto:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentFont.dispose();&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
E por fim, vamos escrever algum texto. Como eu detesto Hello World, que tal desenharmos os Frames for segundo da aplicação? É claro, o LibGDX facilita a vida e disponibiliza esse dado num método estático, bastando chamá-lo, o&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;Gdx.graphics.getFramesPerSecond()&lt;/span&gt;&lt;/b&gt;. No método render(), após a chamada begin() do spriteBatch, adicione a chamada para desenhar. Note que agora o SpriteBatch é passado como parametro para o Bitmapfont:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentFont.draw(currentBatch, &quot;FPS:&quot; + Gdx.graphics.getFramesPerSecond(), 20, 20);&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Até este ponto, sua classe deve estar assim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRZa4WUwM6AfUMfc1Lmpn1tPVZXU1jwXa86ydXDhs8PtOLoFDN7SXoTG218hEhsm-zEkHKsEXfKakhAUl7XBoIcn3FMByeCpMypMJQZ673xfzt1zp6wppD68VGECPj9hLU14CVAXzmL6U/s1600/1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;262&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRZa4WUwM6AfUMfc1Lmpn1tPVZXU1jwXa86ydXDhs8PtOLoFDN7SXoTG218hEhsm-zEkHKsEXfKakhAUl7XBoIcn3FMByeCpMypMJQZ673xfzt1zp6wppD68VGECPj9hLU14CVAXzmL6U/s320/1.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
E ao executar:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfGkZul_r68se81PGuzd0Gq4gsuqLHqAGrXjDV3JdZ2xRFwSE5yVHj4IiLtFVtV_5cTztW1dbuTK-qzcyDpEYEScEU7lUJ3xvYKww5R_zn422AQIhQFEJEopKFSvC57-64x3oFd2O-u2c/s1600/2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;269&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfGkZul_r68se81PGuzd0Gq4gsuqLHqAGrXjDV3JdZ2xRFwSE5yVHj4IiLtFVtV_5cTztW1dbuTK-qzcyDpEYEScEU7lUJ3xvYKww5R_zn422AQIhQFEJEopKFSvC57-64x3oFd2O-u2c/s320/2.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Você vai notar que vai ficar borrado e estranho. Bem, para processos de desenho que possuem variação, como esse caso, precisamos limpar o buffer. Para isso, adicione no método render(), como primeira linha, esta aqui:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT);&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Mas o que essa linha faz? ela informa ao openGL que ele deve limpar o buffer da GPU, usando a cor padrão, que pode ser alterada a qualquer hora pelo método abaixo:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;Gdx.gl.glClearColor(r, g, b, 1.0f);&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
R, G e B são os valores que você deve aplicar, de 0.0 a 1.0, para formar a cor desejada. Para exemplificar, coloque este código no método create():&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;Gdx.gl.glClearColor(0.5f, 0.5f, 0.5f, 1.0f);&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Ao executar, o resultado será esse:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj75EQ8jald247dOcMZvaS7BBDa2fnELGIZ2oZ1FfNuOh2BUY0yqhdp_rQkvbAU6_OMqFXHhpXsgbICbFW2xNuGIEeNB-b1u1rRAD50WdLB0XgIn8t1jiW46AUzcrP8O7gEfK3iIa9snTU/s1600/3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;269&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj75EQ8jald247dOcMZvaS7BBDa2fnELGIZ2oZ1FfNuOh2BUY0yqhdp_rQkvbAU6_OMqFXHhpXsgbICbFW2xNuGIEeNB-b1u1rRAD50WdLB0XgIn8t1jiW46AUzcrP8O7gEfK3iIa9snTU/s320/3.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Agora que brincamos um pouco com as cores de fundo, vamos voltar a falar das fontes. Quando um objeto&amp;nbsp;Bitmapfont é criado sem parametros, internamente o LibGDX cria uma instancia de uma fonte default que ele possui, do tipo Arial de 15 pontos. Você pode criar suas próprias fontes para usar em seus jogos, usando uma ferramenta que a equipe LibGDX fornece, o &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;Hiero&lt;/span&gt;&lt;/b&gt;. Para fazer o download do Hiero clique &lt;a href=&quot;http://libgdx.badlogicgames.com/downloads/hiero.jar&quot; target=&quot;_blank&quot;&gt;aqui&lt;/a&gt;. Não vou ficar aqui falando de como funciona, o que tem de mais e tal, basta ler no &lt;a href=&quot;http://www.badlogicgames.com/wordpress/?p=1247&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;blog da BadLogic&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Você escolhe a fonte, o tamanho, coloca efeitos, mais um monte de coisas. Crie uma fonte do tipo Verdana de 32, salve o arquivo como &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;verdana-32.fnt&lt;/span&gt;&lt;/b&gt;. Ao gravar, ele vai criar dois arquivos, o &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;.fnt&lt;/span&gt;&lt;/b&gt; e um &lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;.png&lt;/b&gt;&lt;/span&gt;. Copie os dois para o diretório assets do projeto de Android:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiAI-N1GyaOcu0pbnjKdv0f3CgZE8C9yrxwsIOJiTCwJcGWl6YBp3cQvIbcJiibf3LBCIyA7_SMjAAZqdqAWr5wPdBI91W91BFBcIKk9IXdFUuRChxZJPQuvq6KDgX85bcOkNHoAFTxJE/s1600/4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiAI-N1GyaOcu0pbnjKdv0f3CgZE8C9yrxwsIOJiTCwJcGWl6YBp3cQvIbcJiibf3LBCIyA7_SMjAAZqdqAWr5wPdBI91W91BFBcIKk9IXdFUuRChxZJPQuvq6KDgX85bcOkNHoAFTxJE/s1600/4.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Agora, na instancia do objeto&amp;nbsp;Bitmapfont, acrescentaremos os parametros necessários para a leitura do arquivo. Para isso, você deve usar o gerador de &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;FileHandle &lt;/span&gt;&lt;/b&gt;do LibGDX, como abaixo:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentFont = new BitmapFont(Gdx.files.internal(&quot;verdana-32.fnt&quot;), false);&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Também é necessário fazer um ajuste no desenho da fonte. Ah, a fonte o LibGDX usa como referencia o topo e não o fundo, ou seja, sempre na posição Y é necessário colocar no mínimo o tamanho da fonte para que ela apareça na tela:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentFont.draw(currentBatch, &quot;FPS:&quot; + Gdx.graphics.getFramesPerSecond(), 20, 40);&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
E por fim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVg_qOS1eRvfkcDKCPY3s5lwWLXUEVJ9jCuamqyjP4LXDCui0yUueE6GLn3UoUQmVm-9S6ZptuQ54JpBHpmoxvcDuP3fD7f1K0ZRq2rhDiqVq0R7iUqVA4Esdudd3aV0DIGKSGta99EB8/s1600/5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;269&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVg_qOS1eRvfkcDKCPY3s5lwWLXUEVJ9jCuamqyjP4LXDCui0yUueE6GLn3UoUQmVm-9S6ZptuQ54JpBHpmoxvcDuP3fD7f1K0ZRq2rhDiqVq0R7iUqVA4Esdudd3aV0DIGKSGta99EB8/s320/5.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
E é isso. Para facilitar a vida estou disponibilizando o arquivo &lt;a href=&quot;http://www.4shared.com/file/kcEL8Lqc/GameRoot.html&quot;&gt;GameRoot.java&lt;/a&gt;, para que você compare com o seu e ajuste o que for necessário.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Tem muita, mas muita coisa que o LibGDX facilita, e eu espero conseguir falar de pelo menos um décimo. No próximo tutorial pretendo falar de interação do usuário, toques, sensores, e mais algumas coisas.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/5938172316915797677/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/09/libgdx-tutoriais-escrevendo-texto.html#comment-form' title='7 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/5938172316915797677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/5938172316915797677'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/09/libgdx-tutoriais-escrevendo-texto.html' title='LibGDX Tutoriais - Escrevendo texto / Criando BitmapFonts'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRZa4WUwM6AfUMfc1Lmpn1tPVZXU1jwXa86ydXDhs8PtOLoFDN7SXoTG218hEhsm-zEkHKsEXfKakhAUl7XBoIcn3FMByeCpMypMJQZ673xfzt1zp6wppD68VGECPj9hLU14CVAXzmL6U/s72-c/1.JPG" height="72" width="72"/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-2635675715795034469</id><published>2012-09-19T12:48:00.001-03:00</published><updated>2012-09-19T12:48:47.847-03:00</updated><title type='text'>LibGDX Tutoriais - Configurando o projeto Android / Desenhando a primeira Textura</title><content type='html'>Salve Pessoas!&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Como eu disse no&lt;span style=&quot;color: lime;&quot;&gt; &lt;a href=&quot;http://deploygames.blogspot.com.br/2012/09/libgdx-tutoriais-inicio-basico-no-libgdx.html&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;tutorial anterior&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;, vou tentar ensinar o máximo sobre o LibGDX, um dos melhores frameworks de desenvolvimento de jogos para Android.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Continuando o tutorial anterior, vamos criar e configurar o projeto de Android para testarmos no emulador ou telefone, e desenharemos nossa primeira textura. O LibGDX facilita muito as coisas, e você vai ver que com poucas linhas de código vamos colocar uma imagem para ser exibida.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Primeiro, vamos criar e configurar o projeto de Android. Seguindo o que disse tutorial anterior, você já tem que ter pronto aí a IDE Eclipse já baixada e instalada, o ADT, que é o plugin do Eclipse para se programar para Android e a SDK do Android baixada e configurada.&lt;/div&gt;
Crie um novo projeto de Android no Eclipse, indo em &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;File -&amp;gt; New -&amp;gt; Android Application Project:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiygDwNldewVNiLcAYeCojtkWA4iQIcmL3xvovtyz6X0FF9c8Fi97A15uwgZ_kXnuu0tw-wxkmewEqHTV5n0iT_r5kL_qFsuu5fTIgE7tM8vvnwxrS5D9qpgg2747D_Ty07pND_6EmMrpU/s1600/1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;49&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiygDwNldewVNiLcAYeCojtkWA4iQIcmL3xvovtyz6X0FF9c8Fi97A15uwgZ_kXnuu0tw-wxkmewEqHTV5n0iT_r5kL_qFsuu5fTIgE7tM8vvnwxrS5D9qpgg2747D_Ty07pND_6EmMrpU/s320/1.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Configure-o, com o nome da aplicação de &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;ActivityPrincipal&lt;/span&gt;&lt;/b&gt;, o Project Name de &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxAndroid&lt;/span&gt;&lt;/b&gt; (Seguindo o padrão de nomenclatura que falei no tutorial anterior), o Package Name como&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;com.deploy.libgdx&lt;/span&gt;&lt;/b&gt;, e o Build SDK, coloque a versão que quiser. Eu costumo usar a 2.2 por causa do meu Galaxy 5.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVFFqSOIkoiDsdHa9DDx0IRnlIfvAzO16vZhqdL2rnDvT1nmVmQc0NRphyWEnOi5-dhF60AbQDDuNUwXLRMjxOBCn2HhfWZjXhkSjux0NLopR3A6kVF5MKZcCJjNZknsfXvt9SqPcbbxk/s1600/2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;292&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVFFqSOIkoiDsdHa9DDx0IRnlIfvAzO16vZhqdL2rnDvT1nmVmQc0NRphyWEnOi5-dhF60AbQDDuNUwXLRMjxOBCn2HhfWZjXhkSjux0NLopR3A6kVF5MKZcCJjNZknsfXvt9SqPcbbxk/s320/2.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Projeto criado, agora as configurações. Volte ao diretório do LibGDX que você baixou no primeiro tutorial, e copie os seguintes para o diretório libs:&lt;/div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Diretório&amp;nbsp;&lt;span style=&quot;color: lime;&quot;&gt;armeabi &lt;/span&gt;e seu conteúdo;&lt;/li&gt;
&lt;li&gt;Diretório&amp;nbsp;&lt;span style=&quot;color: lime;&quot;&gt;armeabi-v7a&lt;/span&gt; e seu conteúdo;&lt;/li&gt;
&lt;li&gt;gdx-backend-android.jar&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Vá no projeto Android,  (Botão Direito -&amp;gt; Properties), selecione Java Build Path, e vá na aba Libraries. Adicione o Jar que copiamos anteriormente  e o jar gdx.jar, como foi feito no tutorial anterior:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOPnzMsyZIBl0RhcJWoe6PJPUYmrcXdR2CAyT5APewMY8W374ZWhoyt5fNfknIYG_PAPM11U5B-lgDz4yKxeniqO0eFb-Vn8Sk3K-0g6dSS46rczCP44VFFk_EVgbsK0BeMLSuMcvA850/s1600/13.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOPnzMsyZIBl0RhcJWoe6PJPUYmrcXdR2CAyT5APewMY8W374ZWhoyt5fNfknIYG_PAPM11U5B-lgDz4yKxeniqO0eFb-Vn8Sk3K-0g6dSS46rczCP44VFFk_EVgbsK0BeMLSuMcvA850/s320/13.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;text-align: start;&quot;&gt;Vá na aba Projects, e adicione o projeto &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore&lt;/span&gt;&lt;/b&gt;, como foi feito no tutorial anterior:&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQePPEfR_tVYugKzobHd5Ol8ah0NdpQ73dpGYGCqZzmlpLXsjuPSN5avjpFvoPCEz7KWCgq4MX_WQDwiu0_fEitg4H980AAD-wd-omAii6hkXiKeet_Q6FH4WB_utamgKG0QLOda-xSSg/s1600/14.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQePPEfR_tVYugKzobHd5Ol8ah0NdpQ73dpGYGCqZzmlpLXsjuPSN5avjpFvoPCEz7KWCgq4MX_WQDwiu0_fEitg4H980AAD-wd-omAii6hkXiKeet_Q6FH4WB_utamgKG0QLOda-xSSg/s320/14.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Assim como fizemos nos outros projetos, crie o package inicial com o nome de&amp;nbsp;&lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;com.deploy.libgdx&amp;nbsp;&lt;/b&gt;&lt;/span&gt;:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGNkL1Xn3bJB2WxSwr2z9iLIifEN1mr0KB7qL1lZaxQOeqyNoQqFOCrK2KaEh5Tg1ytiKf9sncoG-90r2zZzx7nlGZi8RYR8NsUjlrOAM5qDKU2PtDwWy2V2C-JCAGJqEkqLM8N1DkPyM/s1600/3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGNkL1Xn3bJB2WxSwr2z9iLIifEN1mr0KB7qL1lZaxQOeqyNoQqFOCrK2KaEh5Tg1ytiKf9sncoG-90r2zZzx7nlGZi8RYR8NsUjlrOAM5qDKU2PtDwWy2V2C-JCAGJqEkqLM8N1DkPyM/s320/3.JPG&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
A próxima configuração é bem interessante. Como o foco do nosso desenvolvimento é o Android, todo e qualquer recurso, gráfico ou não, deve ser colocado no diretório assets por questões de padronização. Para que possamos utilizar estes mesmos recursos no projeto Desktop, basta fazermos referência ao diretório assets do projeto Android, e pronto! São esses detalhes que facilitam e muito o desenvolvimento usando a LibGDX. Vá nas propriedades do projeto &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxDesktop &lt;/span&gt;&lt;/b&gt;(Botão Direito -&amp;gt; Properties), selecione Java Build Path, e vá na aba &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;Source&lt;/span&gt;&lt;/b&gt;:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEil1NRW0Ld74HzS10GSbyI_mOlpc-ChUgMDQhFABli7iIyLdyS2HhlWWBhXUzYaO-jhD-17jB72H5BgEwuRzhhdXFCB1X30YGLLOhBhyphenhyphenlvHckCj8wjQpI-mlEW31GTfi7WXItBzPfxJK9Q/s1600/4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEil1NRW0Ld74HzS10GSbyI_mOlpc-ChUgMDQhFABli7iIyLdyS2HhlWWBhXUzYaO-jhD-17jB72H5BgEwuRzhhdXFCB1X30YGLLOhBhyphenhyphenlvHckCj8wjQpI-mlEW31GTfi7WXItBzPfxJK9Q/s320/4.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Clique no botão Link Source, e configure da seguinte forma:&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;Linked folder Location:&lt;/span&gt;&lt;/b&gt;&amp;nbsp;&lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;WORKSPACE_LOC\LibgdxAndroid\assets\&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;Folder Name:&lt;/span&gt;&lt;/b&gt; &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;assets&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrl43tWAtD0T0YVNc59g-l3z4T8KU1VazUOlXdZtjfMEdpVt28a7YKu58VpvSjFKEiJmJphFyY8y5QNrTO51uJ82usNWRN_lovEJbgT9VAGnlxQ9eFp554fcGqe0b2-HfW-tNjW-0J13c/s1600/5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;196&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrl43tWAtD0T0YVNc59g-l3z4T8KU1VazUOlXdZtjfMEdpVt28a7YKu58VpvSjFKEiJmJphFyY8y5QNrTO51uJ82usNWRN_lovEJbgT9VAGnlxQ9eFp554fcGqe0b2-HfW-tNjW-0J13c/s320/5.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
WORKSPACE_LOC é uma referência ao local atual do Workspace do Eclipse, e o restante do caminho aponta para o projeto de Android que criamos. Caso tenha problemas com isso (eu sempre tenho pois meus projetos não ficam no workspace) recupere o caminho real pelo Windows Explorer e coloque lá. Feito isso, nosso projeto Desktop agora possui mais um diretório disponível, o assets. Todo e qualquer recurso que for colocado agora lá no diretório assets do Android poderá ser utilizado aqui.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Por enquanto as configurações são essas, eu acho. Está na hora de codificar!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Primeiro, vamos colocar um recurso gráfico para podermos desenhá-lo. Eu vou usar esse, use o que quiser:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitv3TjWIo52-lmcBh9PCmsa7HaaObAEelJ2GxKxmqUPj6l17p0bJmRBXUU1Sj5IBha5ntc3PrHHjRDlQKalVabbBUW3jOYVVyRBnJKmVcUmQGGELfhETu7CKTKeu-K1FyfOVaoX8fANFQ/s1600/pikachu.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitv3TjWIo52-lmcBh9PCmsa7HaaObAEelJ2GxKxmqUPj6l17p0bJmRBXUU1Sj5IBha5ntc3PrHHjRDlQKalVabbBUW3jOYVVyRBnJKmVcUmQGGELfhETu7CKTKeu-K1FyfOVaoX8fANFQ/s1600/pikachu.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Coloque o recurso no diretório assets do projeto Android, como falamos anteriormente. Veja que ele ficará disponível no diretório linkado do projeto Desktop:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbLVGDIVRNq_la8KyEbHFk4x2wZ_FslJgNbv9c70VRTQfxkL27uurR0fyfG7GQx8pT1VtpbZWE7SZo_-CBIJ4l9Y6gkgMMdLWlnqDQBMiE8VW6stCc2kVkHalG8esRueigczNl0itQseI/s1600/6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbLVGDIVRNq_la8KyEbHFk4x2wZ_FslJgNbv9c70VRTQfxkL27uurR0fyfG7GQx8pT1VtpbZWE7SZo_-CBIJ4l9Y6gkgMMdLWlnqDQBMiE8VW6stCc2kVkHalG8esRueigczNl0itQseI/s320/6.JPG&quot; width=&quot;234&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Agora vamos ao código. Abra a classe GameRoot, que se encontra no projeto Core. Como eu disse anteriormente, implementando ApplicationListener ela é uma classe básica, muito boa para quem está começando a entender o LibGDX. Uma coisa boa do LibGDX é a facilidade de se fazer a maioria das coisas. Para se desenhar uma textura, vulgo imagem, só precisamos de algumas linhas de código. O grande responsável por isso é um objeto de nome &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;SpriteBatch&lt;/span&gt;&lt;/b&gt;, que faz o trabalho pesado de aplicar as texturas diretamente no GPU usando o openGL. O objeto de Textura também deve ser criado, para ser usado pelo SpriteBatch.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Na classe, declare nossos objetos Spritebatch e Texture:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;private SpriteBatch currentBatch;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;private Texture currentTexture;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Algumas informações aqui são necessárias. Toda e qualquer criação de instâncias deve ser feita no método &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;create&lt;/span&gt;&lt;/b&gt;, todos os objetos devem ser descartados no método &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;dispose &lt;/span&gt;&lt;/b&gt;e qualquer renderização deve ser feita no método &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;render&lt;/span&gt;&lt;/b&gt;. Então vamos lá. Instancie o SpriteBatch e a Texture, como abaixo, dentro do método create:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch = new SpriteBatch();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentTexture = new Texture(&quot;pikachu.png&quot;);&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Veja que passei diretamente o nome da imagem para a criação da textura. O LibGDX sabe que essa textura vai estar no diretório assets, então basta fazer assim. &amp;nbsp;Como eu disse, todo objeto criado deve ser descartado quando não for mais utilizado. Dentro do método dispose, coloque o descarte dos objetos como abaixo:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.dispose();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentTexture.dispose();&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Até esse momento, sua classe deve estar mais ou menos assim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5TSQlDTYsW0ShItzIm-wBu2LZURWXt7hWDirw550BlLCwofLRYKgK3vhji7ZvfKplUEWT1wZx222cuKdNENVG2aG0BsPdJkhEEmaRzkLKaq3f_Ct4abE0JoflPi_IvApfmO6ys3yVtT8/s1600/7.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;298&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5TSQlDTYsW0ShItzIm-wBu2LZURWXt7hWDirw550BlLCwofLRYKgK3vhji7ZvfKplUEWT1wZx222cuKdNENVG2aG0BsPdJkhEEmaRzkLKaq3f_Ct4abE0JoflPi_IvApfmO6ys3yVtT8/s320/7.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Estamos quase lá. Agora vamos renderizar esse pikachu logo! no método render, temos alguns passos importantes: &amp;nbsp;o SpriteBatch deve ser iniciado com a chamada do método &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;begin()&lt;/span&gt;&lt;/b&gt;, desenhar o que for para desenhar com a chamada do método &lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;draw()&lt;/b&gt;&lt;/span&gt; e por fim fechar a renderização com o método &lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;end()&lt;/b&gt;&lt;/span&gt;. Modifique o método render como abaixo:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.begin();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.draw(currentTexture, 0, 0);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.end();&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Os parametros 0,0 são respectivamente a posição X e Y onde a textura será desenhada dentro da janela. Um detalhe importante sobre o LibGDX é que ele usa a direção do Y de baixo para cima, como no plano cartesiano padrão, diferente do que já vimos em outras formas de se desenhar:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUvmm5OwYqcG1PP9k3ibcWIRtbsMLwhUYGo3Kxo0fwweBxcdeLVxITz_EPepfJlWvCXBYxtN9MaxarwdrbNrntxw52wYjcRf7sCac-R9F1FtJYQOLbikIhhPHh2YZsKskcAIHnmOL3izQ/s1600/8.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;269&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUvmm5OwYqcG1PP9k3ibcWIRtbsMLwhUYGo3Kxo0fwweBxcdeLVxITz_EPepfJlWvCXBYxtN9MaxarwdrbNrntxw52wYjcRf7sCac-R9F1FtJYQOLbikIhhPHh2YZsKskcAIHnmOL3izQ/s320/8.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Então, o Y sendo zero será sempre no lado de baixo da janela e quanto maior, mais para cima. Mais uma vez olhando a classe ela deve estar assim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6os0Y8-0zDFlLa4S5Jrq0I8__RNFI0gRvHmux2WT_j7Y4rZzKp2RCeekxoy5FjeGngPiPLQpRQAowO2xpNOM6huYPo5u8BLUJBe-z8aGcX_wW7wZvJuICKW74zO2xeLg44689T5eKP9s/s1600/9.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6os0Y8-0zDFlLa4S5Jrq0I8__RNFI0gRvHmux2WT_j7Y4rZzKp2RCeekxoy5FjeGngPiPLQpRQAowO2xpNOM6huYPo5u8BLUJBe-z8aGcX_wW7wZvJuICKW74zO2xeLg44689T5eKP9s/s320/9.JPG&quot; width=&quot;275&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div&gt;
Agora, só executar a classe&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxGame &lt;/span&gt;&lt;/b&gt;no projeto desktop, e nosso Pikachu estará lá:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpwbGoUeN2rWa2Kn8a76TT848QQyr1J0IjoXaUEHSAn1IjGlrzMFf2kHOIOK3Fu0Tnob2utfs3azqHZpoTDZ7hNrP33OCsK9Axbic-J4-0PxnWjeLhTZprSLD_GFujg0hxneUWtwWHhsA/s1600/10.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;269&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpwbGoUeN2rWa2Kn8a76TT848QQyr1J0IjoXaUEHSAn1IjGlrzMFf2kHOIOK3Fu0Tnob2utfs3azqHZpoTDZ7hNrP33OCsK9Axbic-J4-0PxnWjeLhTZprSLD_GFujg0hxneUWtwWHhsA/s320/10.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Você pode brincar com a posição, e desenhar mais vezes a mesma textura! Lembre-se que a ordem de desenho no código influencia diretamente na saída, ou seja, o ultimo a ser desenhado sempre ficará por cima do anterior e por aí vai. Outra coisa que é possível fazer com o SpriteBatch é aplicar coloração na textura, mudando como a mesma será renderizada. O código abaixo é uma experiência desenhando mais uma vez a textura em outra posição e mudando sua cor:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.begin();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.setColor(1, 1, 1, 1);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.draw(currentTexture, 0, 0);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.setColor(1, 0, 1, 1);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.draw(currentTexture, 200, 20);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;currentBatch.end();&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
E o resultado:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioSiNbYS5AgBEkep-sV2Tl3rySnlsvxmTg-9VwMFJyRYcpgi3OfF3hoB0qPR7JulUS1u7Wql8xmqvFly-TFGGxWOICt-3VEZUsqiJ1I9cOyCzjdyVafRH5EIu6XI8tUPR1hTy39Dlm78M/s1600/11.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;269&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioSiNbYS5AgBEkep-sV2Tl3rySnlsvxmTg-9VwMFJyRYcpgi3OfF3hoB0qPR7JulUS1u7Wql8xmqvFly-TFGGxWOICt-3VEZUsqiJ1I9cOyCzjdyVafRH5EIu6XI8tUPR1hTy39Dlm78M/s320/11.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Parece complicado, mas tudo isso que foi feito até agora, dependendo do framework ou biblioteca utilizados, gastaria toneladas de linhas de código e horas de programação. Para encerrar, vamos construir a classe base do Android? Vamos lá.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Vá no projeto Android, no pacote que foi criado e crie uma classe de nome &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxActivity &lt;/span&gt;&lt;/b&gt;que&amp;nbsp;estenda a classe&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;AndroidApplication&lt;/span&gt;&lt;/b&gt;:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB0XHS4jI4-rSl4Y_zOR6Tf-mQIhKkq4SUqEkurgF7_M7nZ-XCyrsLjtPKe31eBDpqX-_G0j04Ttn2NlizsVfFcsMmIX25TpbA10U3gOL5L59anOFtwIJO31OOB7R9HspXXkXDsaBekuU/s1600/12.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB0XHS4jI4-rSl4Y_zOR6Tf-mQIhKkq4SUqEkurgF7_M7nZ-XCyrsLjtPKe31eBDpqX-_G0j04Ttn2NlizsVfFcsMmIX25TpbA10U3gOL5L59anOFtwIJO31OOB7R9HspXXkXDsaBekuU/s320/12.JPG&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Sobreponha o método&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;onCreate&lt;/span&gt;&lt;/b&gt;. Assim como fizemos com o projeto desktop, precisamos criar um objeto de configuração, neste caso o &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;AndroidApplicationConfiguration&lt;/span&gt;&lt;/b&gt;. Altere o método como abaixo:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.useAccelerometer = false;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.useCompass = false;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.useWakelock = false;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.useGL20 = true;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.numSamples = 2;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
E por fim, instanciar a classe GameRoot, usando desta vez o método&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;initialize&amp;nbsp;&lt;/span&gt;&lt;/b&gt;da classe:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;this.initialize(new GameRoot(), config);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Até este ponto, sua classe deve estar assim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSg6a42qgkD0I1wP1lzq5euxba8-dCqc2iIIVgKRZv7_J8LQWyGiszUmUbPYPT8xqF-f1d1waBGxOI0ZDAhaUV7KDgOzZpw9lxbXUcMxZGuO2KGA-Yxtgge9VTlkwgp-dIg_97B013XFk/s1600/15.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;186&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSg6a42qgkD0I1wP1lzq5euxba8-dCqc2iIIVgKRZv7_J8LQWyGiszUmUbPYPT8xqF-f1d1waBGxOI0ZDAhaUV7KDgOzZpw9lxbXUcMxZGuO2KGA-Yxtgge9VTlkwgp-dIg_97B013XFk/s320/15.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Todos os parametros de configurações eu poderei explicar aos poucos, não se preocupe com isso agora. &amp;nbsp;Agora vamos para as configurações finais, que são muito importantes para o funcionamento da aplicação no Android. Se você criou uma Activity durante a criação do projeto, o que vou mostrar agora deve sobrescrever tudo que estiver no arquivo.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
No projeto Android, abra o arquivo&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;AndroidManifest.xml&lt;/span&gt;&lt;/b&gt;. Deixe seu conteúdo como abaixo:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjE4sYJDEKa6NwP_xIpeajHoc202KWiCxLcNnhJK0INw-VeErZyvOntrf8NmA8ACZlPeECVcLlFwUesJm8BUmyNuqqJNMfB6WGXXXF57xNOZvSbm_Iecz7WHDqZ93eTMxblSaVehozJpA8/s1600/16.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;125&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjE4sYJDEKa6NwP_xIpeajHoc202KWiCxLcNnhJK0INw-VeErZyvOntrf8NmA8ACZlPeECVcLlFwUesJm8BUmyNuqqJNMfB6WGXXXF57xNOZvSbm_Iecz7WHDqZ93eTMxblSaVehozJpA8/s320/16.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
agora, adicione as tags abaixo logo abaixo da tag de fechamento de&amp;nbsp;&lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;uses-sdk&lt;/b&gt;&lt;/span&gt;:&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;lt;supports-screens android:largeScreens=&quot;true&quot; android:anyDensity=&quot;false&quot; /&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Agora, dentro da tag &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;application&lt;/span&gt;&lt;/b&gt;, coloque este bloco:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;lt;activity android:name=&quot;com.deploy.libgdx&lt;/span&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;.LibgdxActivity&quot;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;android:screenOrientation=&quot;landscape&quot;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;android:label=&quot;@string/app_name&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;intent-filter&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&amp;lt;action android:name=&quot;android.intent.action.MAIN&quot; /&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&amp;lt;category android:name=&quot;android.intent.category.LAUNCHER&quot; /&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&amp;lt;/intent-filter&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;&amp;lt;/activity&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Até este ponto, seu arquivo deve estar assim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCOPmgeujF8VDIEghl-FOHpnFAOlkhyphenhyphenAC0gT2K_mYcsAikD43C_38HpVOKWtZPajNYB04XYEpNsbKNnEKh44hAHOlsXGFJkw0Zp34OpLoZFZgMTc7NE3WugZ7YVT6qBiMEZ0g8Dtv7fQg/s1600/17.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;205&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCOPmgeujF8VDIEghl-FOHpnFAOlkhyphenhyphenAC0gT2K_mYcsAikD43C_38HpVOKWtZPajNYB04XYEpNsbKNnEKh44hAHOlsXGFJkw0Zp34OpLoZFZgMTc7NE3WugZ7YVT6qBiMEZ0g8Dtv7fQg/s320/17.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
E está pronto, pode publicar e ver a mágica.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
UFA! escrevi muito, e não fizemos tanto. Começar costuma dar mais trabalho, mas com o tempo fica simples e automático. Muita coisa ficou obscura, como as configurações, mas espero poder esclarecer a cada novo tutorial.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
No próximo eu pretendo falar sobre escrever na tela, e vamos conhecer o Hiero, o gerador de fontes do LibGDX.&lt;/div&gt;
&lt;br /&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/2635675715795034469/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/09/libgdx-tutoriais-configurando-o-projeto.html#comment-form' title='5 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/2635675715795034469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/2635675715795034469'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/09/libgdx-tutoriais-configurando-o-projeto.html' title='LibGDX Tutoriais - Configurando o projeto Android / Desenhando a primeira Textura'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiygDwNldewVNiLcAYeCojtkWA4iQIcmL3xvovtyz6X0FF9c8Fi97A15uwgZ_kXnuu0tw-wxkmewEqHTV5n0iT_r5kL_qFsuu5fTIgE7tM8vvnwxrS5D9qpgg2747D_Ty07pND_6EmMrpU/s72-c/1.JPG" height="72" width="72"/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-2639731107717235040</id><published>2012-09-18T23:45:00.004-03:00</published><updated>2012-09-18T23:45:53.572-03:00</updated><title type='text'>LibGDX Tutoriais - Inicio básico no LibGDX</title><content type='html'>Salve Pessoas!&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Me foi feito um pedido amigável no grupo &lt;a href=&quot;http://www.facebook.com/groups/programadoresandroid/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;Programadores Android&lt;/span&gt;&lt;/a&gt; do Facebook para que eu falasse ou ensinasse sobre o &lt;a href=&quot;http://code.google.com/p/libgdx/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibGDX&lt;/span&gt;&lt;/a&gt;, essa biblioteca fantástica para desenvolvimento de jogos. Eu não sou um exímio conhecedor dela, e uso muita coisa criada por mim, mas vou tentar abrir o caminho para esses prezados que querem começar nela.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Não pretendo ensinar como configurar ou Utilizar o Eclipse, então se você não sabe essa parte, eu aconselho a procurar por tutoriais na net que te ensinem isso.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
A grande vantagem do LibGDX é que não precisamos construir todo o jogo apenas para Android ou diretamente nele. A biblioteca permite que se construa e teste no PC e, com poucas linhas de código, se publique o mesmo jogo para Android e HTML5. O tempo de desenvolvimento é completamente aproveitado dessa forma, pois tanto testar quanto depurar usando o emulador do Android ou um telefone é demorado e doloroso. Chega de conversa e vamos lá.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Primeiramente você precisará estar com a IDE Eclipse já baixada e instalada, o ADT, que é o plugin do Eclipse para se programar para Android e a SDK do Android baixada e configurada.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Vá ao site do LibGDX e baixe a ultima versão, que na data desta matéria era a 0.9.6: &lt;a href=&quot;http://libgdx.googlecode.com/files/libgdx-0.9.6.zip&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;Download&lt;/span&gt;&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Deste pacote vamos precisar configurar algumas coisas. Como é um básico, eu vou explicar como criar um projeto de PC e nos próximos falaremos do projeto de Android. No Eclipse, crie um novo projeto Java(A screen pode variar de versão do Eclipse e de configurações do usuário, mas a nomenclatura é a mesma):&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwF4ouc255xZUkWLR9l4Fmxn7hyphenhyphenAvJesoRfaWDZKFb4DVEIJrxIdrX6U0tuP4_EkuMHsFDMDAjcgRpwNUaJiBUgOVFvSf2G1qF-m0migjIA3tBQ-ccgZeP0M_hxmrV73NsvuLQ5Wxln1A/s1600/0.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;41&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwF4ouc255xZUkWLR9l4Fmxn7hyphenhyphenAvJesoRfaWDZKFb4DVEIJrxIdrX6U0tuP4_EkuMHsFDMDAjcgRpwNUaJiBUgOVFvSf2G1qF-m0migjIA3tBQ-ccgZeP0M_hxmrV73NsvuLQ5Wxln1A/s320/0.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Coloque o nome de &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore&lt;/span&gt;&lt;/b&gt;. Seguiremos uma nomenclatura que gosto de usar para meus projetos.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIEOTrhdgRDHhKSkVuynZj6KN_Syu0rYf_K7Sjc9VbHrxghr91ACFdnOTkqiaerlIg8brvz487TXiqumvxjBCVFSSv9fWKpfSNNFJj-gklyV_HLt6A11nf_QkrGwcm_Ifj61vercVxqS0/s1600/2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIEOTrhdgRDHhKSkVuynZj6KN_Syu0rYf_K7Sjc9VbHrxghr91ACFdnOTkqiaerlIg8brvz487TXiqumvxjBCVFSSv9fWKpfSNNFJj-gklyV_HLt6A11nf_QkrGwcm_Ifj61vercVxqS0/s320/2.JPG&quot; width=&quot;238&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Seguindo os dois passos acima, crie outro projeto de nome &lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;LibgdxDesktop&lt;/b&gt;&lt;/span&gt;. eles aparecerão no workspace assim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3DHrZJAptuPMOhu48ID34BtljbNUL0FgoiLMbGf-yx1fBbfQ29RtVCdYMp_Mc08LdFIr3up9qO0IJj7wPw4aiKnmm65dm34yg1MrjLwdqM7GYG0BR29vrsgJ4seHEcf-X-eiz68Atrqc/s1600/3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3DHrZJAptuPMOhu48ID34BtljbNUL0FgoiLMbGf-yx1fBbfQ29RtVCdYMp_Mc08LdFIr3up9qO0IJj7wPw4aiKnmm65dm34yg1MrjLwdqM7GYG0BR29vrsgJ4seHEcf-X-eiz68Atrqc/s1600/3.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Nos dois projetos, siga os passos abaixo:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;Crie o pacote &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;com.deploy.ligbdx&lt;/span&gt;&lt;/b&gt;;&lt;/li&gt;
&lt;li&gt;crie um diretório de nome&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt; libs&lt;/span&gt;&lt;/b&gt;;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGoh5XLRsb3q7Lz1dDsOi2aEnGHHVi5alzhIoFPHssNrlhKinS6yo1m920RTJ8tE7r44jMnFzgn7yBsNCSm2hC0DOYVy8wwCN0eOZYshBHD0jOprrdb48d16f76uy8nSipK0K2AVwCVKQ/s1600/4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGoh5XLRsb3q7Lz1dDsOi2aEnGHHVi5alzhIoFPHssNrlhKinS6yo1m920RTJ8tE7r44jMnFzgn7yBsNCSm2hC0DOYVy8wwCN0eOZYshBHD0jOprrdb48d16f76uy8nSipK0K2AVwCVKQ/s1600/4.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Agora começaremos a configurar os projetos. Descompacte o pacote do Libgdx que você baixou. copie os seguintes arquivos para o diretório &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;libs&lt;/span&gt;&lt;/b&gt; dos projetos, como abaixo:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;gdx.jar&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;LibgdxDesktop:&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;gdx-backend-lwjgl-natives.jar&lt;/li&gt;
&lt;li&gt;gdx-backend-lwjgl.jar&lt;/li&gt;
&lt;li&gt;gdx-natives.jar&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHAeY_-XHfBeXlvW9W08QrueDR1rjUPIsPXhxPNPcBYZBxQffkrJeJ74MAvcmddeMvKfwnnKa9Gdgbn7wexkObElidD9LC-tznx98gvmfZeiljXDzMgLKi9h_Ieypphb-LD6nfVeXG0fE/s1600/5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHAeY_-XHfBeXlvW9W08QrueDR1rjUPIsPXhxPNPcBYZBxQffkrJeJ74MAvcmddeMvKfwnnKa9Gdgbn7wexkObElidD9LC-tznx98gvmfZeiljXDzMgLKi9h_Ieypphb-LD6nfVeXG0fE/s1600/5.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Botão direito no projeto&amp;nbsp;&lt;b style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore&lt;/span&gt;&lt;/b&gt;&amp;nbsp;e selecione &quot;Properties&quot;. Selecione o item &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;Java Build Path&lt;/span&gt;&lt;/b&gt;. Na aba &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;Libraries&lt;/span&gt;&lt;/b&gt;, Clique no botão &quot;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;Add JARs&lt;/span&gt;&lt;/b&gt;&quot;, selecione o &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;gdx.jar&lt;/span&gt;&lt;/b&gt; que está no libs do projeto.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFx4SdmwD_2342dODGn2Srmu9vjZUz_Iy8QrQCzksqprg-UcWvqCi0v9V6qsiywwVtOloMglqfX-4N4KsZoRfI6GfQteZfvAgUkihVSqj-40AJMZsW9rlUP74y5wWjk3LAf8zep_Uaz0k/s1600/6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFx4SdmwD_2342dODGn2Srmu9vjZUz_Iy8QrQCzksqprg-UcWvqCi0v9V6qsiywwVtOloMglqfX-4N4KsZoRfI6GfQteZfvAgUkihVSqj-40AJMZsW9rlUP74y5wWjk3LAf8zep_Uaz0k/s320/6.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Mesmo caminho no projeto&amp;nbsp;&lt;b style=&quot;color: lime; text-align: justify;&quot;&gt;LibgdxDesktop&lt;/b&gt;&amp;nbsp;, adicionando os três jars da libs dele. Aqui um detalhe, marque o projeto&amp;nbsp;&lt;b style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore&lt;/span&gt;&lt;/b&gt;&amp;nbsp;e selecione a&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;gdx.jar&lt;/span&gt;&lt;/b&gt;&amp;nbsp;dele, como abaixo:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgugScubz1hv67pMNznUA9L4OxRo57vnsxwtofWoiiFlxf-_eP0_qnc_wIq7TkwpyojKjHq3ijovJ6hVpUBfPqAdrs-1nFamCVPL71h-ocepmCj18ntNKUrPWdgUhYMEroU4_aQRHkJvBo/s1600/7.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgugScubz1hv67pMNznUA9L4OxRo57vnsxwtofWoiiFlxf-_eP0_qnc_wIq7TkwpyojKjHq3ijovJ6hVpUBfPqAdrs-1nFamCVPL71h-ocepmCj18ntNKUrPWdgUhYMEroU4_aQRHkJvBo/s320/7.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Ainda com a janela aberta, selecione a aba &quot;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;Projects&lt;/span&gt;&lt;/b&gt;&quot; e adicione o projeto&amp;nbsp;&lt;b style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore&lt;/span&gt;&lt;/b&gt;&amp;nbsp;, como abaixo:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0ohfs2r59d-UEhPxT0qyIfEoBGQr6tENURkE4e7og_frgFsGarB7qSwMLHWcKQlFSwbPp-2-iqV9t-uzn28MgILg16VmI76O22QeH5vqa1nvI6yl26KyP-qV60bgfYDEtZy42E-Sbwsk/s1600/8.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0ohfs2r59d-UEhPxT0qyIfEoBGQr6tENURkE4e7og_frgFsGarB7qSwMLHWcKQlFSwbPp-2-iqV9t-uzn28MgILg16VmI76O22QeH5vqa1nvI6yl26KyP-qV60bgfYDEtZy42E-Sbwsk/s320/8.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
As configurações básicas são essas. Mas porque essa estrutura? vou explicar... Toda a programação do jogo ficará no projeto&amp;nbsp;&lt;b style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore&lt;/span&gt;&lt;/b&gt;&amp;nbsp;, e os outros projetos, como o&amp;nbsp;&lt;b style=&quot;color: lime; text-align: justify;&quot;&gt;LibgdxDesktop&lt;/b&gt;&amp;nbsp;serão apenas executores dele, distinguindo a plataforma. Ou seja, quando fizermos um projeto para Android, referenciaremos o projeto Core e pronto!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Para não dizer que foi um tutorial apenas de configuração, vamos pelo menos fazer uma janela aparecer(nada de Hello world escrito, eu odeio isso). No projeto&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxCore&lt;/span&gt;&lt;/b&gt;&amp;nbsp;, crie uma classe de nome &lt;span style=&quot;color: lime; font-weight: bold;&quot;&gt;GameRoot &lt;/span&gt;. Ela deve implementar a interface&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;ApplicationListener &lt;/span&gt;&lt;/b&gt;do libgdx, como abaixo:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgF7nq-hyLveKtAUku__HBZMF69t0C1IvXU0og31zI0ZeCuCO-dCpRF2wXKpmzmbOQhKAB3kWqg0YwPdQ_-2uZ1p5xJ5AR1EyDSFOxaH6nvgnf6eJ3lLDnYsN78fvOC0EuiDivLDB8CLdA/s1600/9.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgF7nq-hyLveKtAUku__HBZMF69t0C1IvXU0og31zI0ZeCuCO-dCpRF2wXKpmzmbOQhKAB3kWqg0YwPdQ_-2uZ1p5xJ5AR1EyDSFOxaH6nvgnf6eJ3lLDnYsN78fvOC0EuiDivLDB8CLdA/s320/9.JPG&quot; width=&quot;272&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Não precisamos escrever nada nela agora, ela apenas precisa implementar a interface padrão do Libgdx. Eu não faço usando AppListener, mas ela dá uma base melhor para quem está começando. No projeto&amp;nbsp;&lt;b style=&quot;color: lime; text-align: justify;&quot;&gt;LibgdxDesktop&lt;/b&gt;&amp;nbsp;crie uma classe com nome de &lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxGame&lt;/span&gt;&lt;/b&gt;, sem implementações ou especializações:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsrdifyW0lWqh3uiNbcqjptN2amN25cfUwsTXxPbWa2_AzT2qbiBZfgVBS4Cy3HgsOfxkX7K6jz7WwfnfW-GfXsquUMCha7vTpKEYod3KVfCMTK2QvAUupfpOwqenBGktmUa-qKxpwpf0/s1600/10.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsrdifyW0lWqh3uiNbcqjptN2amN25cfUwsTXxPbWa2_AzT2qbiBZfgVBS4Cy3HgsOfxkX7K6jz7WwfnfW-GfXsquUMCha7vTpKEYod3KVfCMTK2QvAUupfpOwqenBGktmUa-qKxpwpf0/s320/10.JPG&quot; width=&quot;272&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Estamos quase lá. Na classe criada, adicione os imports abaixo:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;import com.badlogic.gdx.backends.lwjgl.LwjglApplication;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;div&gt;
&lt;b&gt;&lt;span style=&quot;color: #cccccc;&quot;&gt;import com.badlogic.gdx.backends.lwjgl.LwjglApplicationConfiguration;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Depois, adicione o Main, para ser uma classe executável:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;public static void main (String[] args) {}&lt;/span&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Vamos criar um objeto de configuração. Ele dará forma à janela, com alguns detalhes como versão do openGL, título e tamanho.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.title = &quot;Jogo de Exemplo Libgdx&quot;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.fullscreen = false;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.resizable = false;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.width = 540;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.height = 430;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.samples = 2;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;config.useGL20 = true;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Agora por fim, a instancia da classe &lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;GameRoot&lt;/b&gt;&lt;/span&gt;, junto com a inicialização de um objeto do tipo&amp;nbsp;&lt;span style=&quot;color: lime;&quot;&gt;&lt;b&gt;LwjglApplication&lt;/b&gt;&lt;/span&gt;, que é a versão de PC de execução do Libgdx:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #cccccc;&quot;&gt;new LwjglApplication(new GameRoot(), config);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Se os passos foram seguidos certinho, sua classe&amp;nbsp;&lt;b&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxGame&lt;/span&gt;&lt;/b&gt;&amp;nbsp;deve estar assim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfP1Jp9d4Sqa0x27ZXvdVocDldOHMInT8CtkxZYz-iL3ufx4J71u-dUPZaFGCG_o0dA3i8kObfmktS8zu1Py_7Yl4O0a62PPv_BrbBKSUZxVBqsCTV2LWZAnRcDD6Vu7O9wrZiaBHCrdQ/s1600/11.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;178&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfP1Jp9d4Sqa0x27ZXvdVocDldOHMInT8CtkxZYz-iL3ufx4J71u-dUPZaFGCG_o0dA3i8kObfmktS8zu1Py_7Yl4O0a62PPv_BrbBKSUZxVBqsCTV2LWZAnRcDD6Vu7O9wrZiaBHCrdQ/s400/11.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Veja que estamos instanciando a classe&amp;nbsp;&lt;b style=&quot;color: lime; text-align: justify;&quot;&gt;GameRoot&lt;/b&gt;&amp;nbsp;, que se encontra no projeto Core. &amp;nbsp;Só para conferir, sua árvore no Eclipse deve estar assim:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTH1to7Ipxk8c6srTVw1_9-qGjj5AW2iBdl3AuLNEFPquNLhA-LZK4FczeUsiu0kKId3Y14emWdEI-COIqaK7Vmv1VsoLX9Vfp3ROeuo0OnTi8dfVE_w3eoyy_tZtMVQX9aC6wBKDqj1M/s1600/12.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTH1to7Ipxk8c6srTVw1_9-qGjj5AW2iBdl3AuLNEFPquNLhA-LZK4FczeUsiu0kKId3Y14emWdEI-COIqaK7Vmv1VsoLX9Vfp3ROeuo0OnTi8dfVE_w3eoyy_tZtMVQX9aC6wBKDqj1M/s320/12.JPG&quot; width=&quot;273&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
E pronto. Selecione a classe&amp;nbsp;&lt;b style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;color: lime;&quot;&gt;LibgdxGame&lt;/span&gt;&lt;/b&gt;&amp;nbsp;e execute (seta verde ou CTRL+F11). A janela preta com as configurações irá aparecer:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhG5nxwyFpdQpJGaJv3SkYJ9Rmza7KG5TV73uemdRDs8zpsLvB3J4L-mBGcJe50FmV46wmH1FlHOvfeDkd6IGlDAJUwl0LdKetvtjkhv1U39_Upww02T_TO9WTrgxsFbcYxboMaIoXKtm4/s1600/13.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;269&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhG5nxwyFpdQpJGaJv3SkYJ9Rmza7KG5TV73uemdRDs8zpsLvB3J4L-mBGcJe50FmV46wmH1FlHOvfeDkd6IGlDAJUwl0LdKetvtjkhv1U39_Upww02T_TO9WTrgxsFbcYxboMaIoXKtm4/s320/13.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Super simples. Eu darei continuidade a este tutorial, a partir desses projetos criados. Vou tentar ensinar o máximo que eu puder e souber. Na próxima, vamos direto para a criação e configuração do projeto de Android, e vamos desenhar uma textura. Espero que estes tutoriais facilitem sua vida com o uso do LibGDX, essa biblioteca fantástica.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;/div&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/2639731107717235040/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/09/libgdx-tutoriais-inicio-basico-no-libgdx.html#comment-form' title='5 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/2639731107717235040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/2639731107717235040'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/09/libgdx-tutoriais-inicio-basico-no-libgdx.html' title='LibGDX Tutoriais - Inicio básico no LibGDX'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwF4ouc255xZUkWLR9l4Fmxn7hyphenhyphenAvJesoRfaWDZKFb4DVEIJrxIdrX6U0tuP4_EkuMHsFDMDAjcgRpwNUaJiBUgOVFvSf2G1qF-m0migjIA3tBQ-ccgZeP0M_hxmrV73NsvuLQ5Wxln1A/s72-c/0.png" height="72" width="72"/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-12206876737109851</id><published>2012-09-12T12:17:00.000-03:00</published><updated>2012-09-12T12:17:09.531-03:00</updated><title type='text'>Deploy Games na Indie Game Magazine!</title><content type='html'>Salve amigos!&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
É eu sei, estou meio&amp;nbsp;atrasado, mas o tempo anda curto e as atividades não acabam! Para ficar registrado, fomos matéria no Indie Game Magazine, um dos maiores fóruns/blogs/outras coisas do mundo independente: &lt;a href=&quot;http://mobile.indiegamemag.com/deploy-games/&quot; target=&quot;_blank&quot;&gt;Deploy Games na Indie Game Magazine&lt;/a&gt;.&lt;/div&gt;
Que o mundo nos conheça, e descubra que no brasil tem muito mais que bunda e carnaval!&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://mobile.indiegamemag.com/files/2012/08/Deploy-Games-600x375.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;250&quot; src=&quot;http://mobile.indiegamemag.com/files/2012/08/Deploy-Games-600x375.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/12206876737109851/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/09/deploy-games-na-indie-game-magazine.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/12206876737109851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/12206876737109851'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/09/deploy-games-na-indie-game-magazine.html' title='Deploy Games na Indie Game Magazine!'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-7075925778810020785</id><published>2012-08-16T15:57:00.002-03:00</published><updated>2012-08-16T16:00:33.493-03:00</updated><title type='text'>Game Design - Construindo Sistemas de Jogo de Causa e Efeito - 1º Parte</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;
Olá amigos!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Esta é a tradução da postagem original feita no blog&amp;nbsp;&lt;a href=&quot;http://www.lostgarden.com/&quot; target=&quot;_blank&quot;&gt;The Lost Garden&lt;/a&gt;:&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;b&gt;Para jogar um jogo bem, um jogador deve dominar um modelo mental de causa e efeito.&lt;/b&gt; Você aprende que pressionar um botão específico move para a frente. Você descobre que uma seqüência de movimentos do controlador permite desviar de um foguete disparado. É possível observar uma pequena pausa antes de um ataque inimigo e acreditam que você pode disparar um tiro na cabeça naquele exato momento. Em cada fase de aprendizado, você cria uma hipótese, testa através de suas ações e aprimora seus modelos mentais da caixa preta no coração do jogo.

Este refinamento crescente e domínio de novos modelos mentais e ferramentas é essencial para o que faz um jogo entre muitos ser agradável. Tal maestria, obviamente, depende do jogador. No entanto, também é dependente do designer e dos sistemas que o constroem. Você pode acidentalmente criar uma caixa preta quebrada.

&lt;b&gt;Nem todos os sistemas são facilmente passíveis de formação intuitiva de modelos de causa e efeito.&lt;/b&gt; Como um Game designer, é seu trabalho criar sistemas que são intrigantes para dominar sem se tornar completamente desconcertante. Se o sistema é muito previsível, torna-se chato. Se não é previsível em tudo assumimos que o sistema é ou aleatório ou espiritual na natureza. Ambos são condições de falha, se você está tentando incentivar maestria.

&lt;/div&gt;
&lt;h1 style=&quot;text-align: justify;&quot;&gt;
Sistemas fortes e fracos&lt;/h1&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Eu sou um mecânico que conserta caixas-pretas quebradas. Um conceito importante que me serviu bem é pensar a relação entre os sistemas e os comentários que o jogo usa para descrever as interações com os sistemas como &#39;forte&#39; ou &#39;fraco&#39;. Um sistema forte define claramente a causa e o efeito. Já o sistema fraco é mais difícil distinguir essas relações.
Não há uma &#39;força&#39; correta de um loop. No entanto, existem métodos claros de aumento de qualquer força ou fraqueza.

&lt;/div&gt;
&lt;h1 style=&quot;text-align: justify;&quot;&gt;
Técnicas para ajustar dificuldade&lt;/h1&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Para seu prazer da leitura, eu coloquei uma lista de ferramentas que eu uso para ajustar a dificuldade de um sistema. Nem todas são aplicáveis ??a um determinado sistema, mas todos eles devem ser parte do conjunto de ferramentas de um designer especialista. Algumas das ferramentas são dignas de livros dedicados por isso peço desculpas antes de qualquer superficialidade óbvia. Por exemplo, a probabilidade tem tantos sabores sutis que alguns designers dedicam suas vidas a estudar como ela afeta a capacidade de um jogador para prever os resultados. Na melhor das hipóteses esta é apenas uma visão.
Para reforçar um sistema, deve-se tornar a causa e o efeito mais óbvios. Para afrouxar um sistema,&amp;nbsp; deve-se fazer a conexão entre causa e efeito menos óbvia.

&lt;/div&gt;
&lt;h2 style=&quot;text-align: justify;&quot;&gt;
Força da Opinião&lt;/h2&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbur67QXRuPJZuQvnlz6Ia9gtvuaBjfdkyFh4Ltp97VYeJDGIgv2AFCucCASLE-ihhtZ_G7lXg6BlVl7NArexekbunEb7eMPedVD7j-gdNEcOKLQWmPsTTierY_6NBY9EWIWb9Q0OPrwql/s1600/peggle.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbur67QXRuPJZuQvnlz6Ia9gtvuaBjfdkyFh4Ltp97VYeJDGIgv2AFCucCASLE-ihhtZ_G7lXg6BlVl7NArexekbunEb7eMPedVD7j-gdNEcOKLQWmPsTTierY_6NBY9EWIWb9Q0OPrwql/s400/peggle.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;Peggle&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Forte: Múltiplos canais de feedback alinhados, tais como cor, animação, som e toque que se reforçam mutuamente. O exemplo clássico é Peggle que utiliza partículas, arco-íris, Ode a Alegria dilatação e tempo para que você saiba que sim, o jogo é longo e gloriosos pontos estão sendo marcados.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Estou usando todos os canais possíveis que eu preciso para fazer um impacto?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;É o feedback seqüenciado corretamente para que o jogador pode lê-lo claramente?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;O feedback aproveita um esquema mental&amp;nbsp;existente, de modo que se torna mais impactante?&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Fraco: Um canal de feedback que é fracamente evidente. Em jogos FPS multiplayer muitas vezes o único sentido que você tem que outro jogador está perto vem do som fraco de seus passos. Jogadores experientes ganham imensa satisfação de ser capazes de prever a localização de seu oponente, combinando conhecimento dos níveis com pequenas sugestões de onde elas possam vir.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Será que o feedback tem nuances que não são compreensíveis em uma inspeção casual?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;O feedback pode ser combinado com informações não-óbvias para dar uma imagem clara de um usuário experiente?&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style=&quot;text-align: justify;&quot;&gt;
Barulheira&lt;/h2&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiGvil3d-OIaojeYpVYrHcxMb2squUhYdEZ8_jQw7KtlP-GYraWFdCwLuZZEUkhtVn2hF5S_fufYHYr_zGwpuH1bm3zXkFMMJobPLbaB7DkVDaMkG81qWqg1s7GhxknMMljP2cY_srAksh/s1600/Space-Giraffe-Xbox-360-_.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiGvil3d-OIaojeYpVYrHcxMb2squUhYdEZ8_jQw7KtlP-GYraWFdCwLuZZEUkhtVn2hF5S_fufYHYr_zGwpuH1bm3zXkFMMJobPLbaB7DkVDaMkG81qWqg1s7GhxknMMljP2cY_srAksh/s400/Space-Giraffe-Xbox-360-_.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;Space Giraffe&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Forte: Um sinal claro de efeito que está relacionado com a causa.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Qual é a peça mais importante de informação que o jogador precisa agora?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Já tirei elementos estranhos que distraem a atenção do jogador?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;É o meu feedback no centro da atenção do jogador?&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Fraco: A multiplicidade de sinais conflitantes e atenção não convergida que não estão relacionadas com a causa. Uma das habilidades críticas em Jeff Minter’s Space Giraffe é aprender a ver através do ruído visual dos fundos psicodélicos.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Existem elementos ambientais posso acrescentar que acrescentem distrair, mas sem causar irritação?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Pode o ruído criar um quebra-cabeça perceptual para o jogador?&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style=&quot;text-align: justify;&quot;&gt;
Tipo sensorial&lt;/h2&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifCfQwA4JFKtSAQk-rP3mlHUx-9g0f6cp9pu17ixtC17vvGdmC7gag1rAGcLkKvyHi_fbCA0PHVDp1i-jZKFhTB80k9MEG7OFnc26yympiKVcEcEXveJ_WaHfjn9J-Ux0Sz_Uz-YCUdbyB/s1600/assassins-creed-iii-20120326093914090.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifCfQwA4JFKtSAQk-rP3mlHUx-9g0f6cp9pu17ixtC17vvGdmC7gag1rAGcLkKvyHi_fbCA0PHVDp1i-jZKFhTB80k9MEG7OFnc26yympiKVcEcEXveJ_WaHfjn9J-Ux0Sz_Uz-YCUdbyB/s400/assassins-creed-iii-20120326093914090.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;Assassin&#39;s Creed 3:  Nice use of contrast and perspective&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Forte: Onde o feedback visual ou tátil é muitas vezes mais claramente percebido. Considere os muitos bilhões de dólares gastos na melhoria do feedback visual a cada ano para que possamos demonstrar aos jogadores o impacto visceral de uma bala na carne simulada com fidelidade cada vez maior. O Feedback visual forte é altamente funcional, ele comunica o efeito para o jogador de um modo elegante e eficiente. Não se trata apenas de fazer fotos bonitas. Em uma recente atualização de &quot;Triple Town&quot;, mudamos o esquema de cores para que o fundo realçasse os objetos em primeiro plano. O resultado era atraente, mas os jogadores estavam putos porque os ícones não eram quase tão visíveis como antes.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Estou usando o design visual de cor, movimento, contraste, linha, espaço em branco, sombra, volume, perspectiva, de modo que os meus visuais sejam claros?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Eu tive que fazer algo bonito quando eu precisava era de algo funcional?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;O feedback é funcional e o que é evocativo ou estética?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Devo investir mais em feedback visual?&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Fraco: Onde o feedback auditivo e do olfato são claramente menos percebidos. Não tem sido feito sempre, mas devido à fraqueza de tais sistemas parece que não há potenciais sistemas de mestria. É talvez irónico que a maioria dos jogos de música, um tema tipicamente associado com o domínio auditivo, pode ser jogado com o som desligado.

&lt;/div&gt;
&lt;h2 style=&quot;text-align: justify;&quot;&gt;
Usar Modelos Mentais existentes&lt;/h2&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDrXr9VtaSiI28nmdoQvB1e1-essdQkmCGZznRL0jpxPzqHeiz7EmlrWOz6xt0joj4rUlojduAPWYBBbbANaCt6dZtGDG_h_9f_EIgXi8d3u_6XkwcYJYvNshWUUx_H0YebU6HSBmjbLgh/s1600/pvz3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDrXr9VtaSiI28nmdoQvB1e1-essdQkmCGZznRL0jpxPzqHeiz7EmlrWOz6xt0joj4rUlojduAPWYBBbbANaCt6dZtGDG_h_9f_EIgXi8d3u_6XkwcYJYvNshWUUx_H0YebU6HSBmjbLgh/s400/pvz3.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;Plants vs Zombies&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Forte: Mapear intimamente o tema, feedback e sistema para os atuais modelos mentais. Devido a décadas de exposição à cultura pop, os jogadores sabem como zumbis se movem e que eles devem ser evitados. Uma simples forma de comunicação visual, onde um grupo de monstros se move lentamente, leva a identificá-los como zumbis.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Qual é o modelo de desenho que os jogadores têm em suas cabeças (vs do modelo realista de como o mundo real funciona)?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Como meu tema pode apoiar a mecânica do jogo?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Como meu tema pode inspirar variações úteis sobre a mecânica do meu núcleo?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Estou engajar no pecado original de diluir minha mecânica para caber o tema?&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Fraco: Afaste-se dos modelos existentes no mercado e introduza os jogadores a novos sistemas que eles nunca experimentaram. Considere as metáforas envolvidas no Tetris. Elementos em queda são coisas que nosso cérebro pode processar como razoavelmente familiar. Objetos que se encaixam em linhas que desaparecem para ganhar pontos, enquanto toca música russa? Isso não se enquadra em nenhuma metáfora conhecida, mas que resulta em um grande jogo.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Em que ponto já não é preciso de um esquema de gateway e o jogo pode ficar em sua própria consistência interna?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Existem oportunidades para o surrealismo ou desorientação intencional?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Podemos nos afastar dos clichês para novas experiências de síntese?&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style=&quot;text-align: justify;&quot;&gt;
Diferenciação&lt;/h2&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUfjZeuNMToP1fg1ag7oPcL-qtNvmg0EdHNriH9Bc_cxPsroX_vrGPqBt87BF05bumRQVykqiSCT0Us12zFRBVcOgVkzOF9RWPgdenY4lOMXz1HUo8r7zrzYP3h_ovWDv2BHh2YU1TyX4P/s1600/advancewars_1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUfjZeuNMToP1fg1ag7oPcL-qtNvmg0EdHNriH9Bc_cxPsroX_vrGPqBt87BF05bumRQVykqiSCT0Us12zFRBVcOgVkzOF9RWPgdenY4lOMXz1HUo8r7zrzYP3h_ovWDv2BHh2YU1TyX4P/s1600/advancewars_1.jpg&quot; width=&quot;360&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;Advance Wars:  Limited units and small numbers.&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Forte: Aplicar estados discretos ou números de baixo valor. O binário é o mais forte. Por exemplo, recentemente testamos com unidades movendo a velocidades diferentes, Tornando-os passar uma 1, 2 e 4 casas/seg, e de repente tornou-se muito evidente para o jogador de como cada tipo de unidade foi diferenciada. Esta é uma das minhas técnicas favoritas para a obtenção de sistemas indisciplinados sob controle.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Qual é o número mínimo de valores que eu preciso para criar escolhas significativas?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Pode o jogador distinguir claramente entre o efeito de cada incremento em valor?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;O que aconteceria se eu tivesse que reduzir essa variável para 3 valores discretos?&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Fraco: Aplicar valores analógicos ou números de valor muito alto. Por exemplo, em Angry Birds, você pode dar a seu pássaro uma grande variedade de ângulos e velocidades. Isto faz com que os resultados sejam surpreendentemente incertos. Pense em como previsível (e chato) o jogo seria se você pudesse escolher apenas dois tipos de ângulos e velocidades.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Eu tenho bastante intervalo para que os jogadores possam jogar de forma criativa?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Os meus valores adicionam uma incerteza interessante de escolhas?&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style=&quot;text-align: justify;&quot;&gt;
Estimulação&lt;/h2&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRTVsQmy3ZOTSc4f4UvUJaHKO_W0hcsLS6NST88b5-GyMpcWXNKTjLNol48noTCakXcEYgiLQ0UW1txVdxnlxwMSLdQV_T9qLfV8f7QXtNWzEK3ayaburq8fadepsj3ew3rnlDpUQOf1EN/s1600/Diablo-3-Players-Complain-of-Weak-Legendary-Items-2.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;229&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRTVsQmy3ZOTSc4f4UvUJaHKO_W0hcsLS6NST88b5-GyMpcWXNKTjLNol48noTCakXcEYgiLQ0UW1txVdxnlxwMSLdQV_T9qLfV8f7QXtNWzEK3ayaburq8fadepsj3ew3rnlDpUQOf1EN/s1600/Diablo-3-Players-Complain-of-Weak-Legendary-Items-2.jpg&quot; width=&quot;324&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;Diablo Loot Pacing&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Forte: Adicionar pequenos lapsos de tempo entre causa e efeito. Ao passar o mouse sobre caixas como você encontra em Diablo, um erro comum é adicionar um atraso entre quando o mouse está sobre o item de estoque e quando o diálogo aparece. Se o atraso for muito curto, o diálogo em foco aparece quando o jogador não espera. Se o atraso for muito longo, o diálogo parece com lag e não-responsivo. (Na minha experiência, 200ms parece ideal. É isso mesmo dentro da percepção de onde você decidiu fazer algo, mas para a sua mente consciente não foi reconhecido).
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Onde é que o jogo deve aplicar lag?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;O que acontece se eu acelerar o tempo de espera?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;O que acontece se desacelerar o sincronismo?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Quais são os sistemas permitem que haja variação de tempo de uma forma indireta?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Estou ajustando a estimulação através de arcos de conteúdo manuais quando eu poderia usar algoritmos com laços?&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Fraco: Adicionar grandes lapsos de tempo entre causa e efeito. É quando o tempo e que o jogador espera é demasiado e a causa se perde do efeito. Imagine um RPG onde você tem um interruptor e um temporizador. Se você acertar o interruptor, a porta abre-se 60 segundos depois. Surpreendentemente poucas pessoas vão descobrir que a porta está ligada ao interruptor. Por outro lado, o investimento da indústria no início de Alpha Centauri resultou em ataques alienígenas no final do jogo .Isto criou um rico sistema de trade off interessante para os jogadores de manipular mais de um longo período de tempo.
&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Quais são os longos laços de tempo no jogo?&lt;/li&gt;
&lt;li style=&quot;text-align: justify;&quot;&gt;Há muito tempo queimando efeitos que causam jogadores a reconsiderar os seus modelos para loops de jogo a longo prazo?&lt;/li&gt;
&lt;/ul&gt;
Esta matéria continua...</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/7075925778810020785/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/08/game-design-construindo-sistemas-de.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/7075925778810020785'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/7075925778810020785'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/08/game-design-construindo-sistemas-de.html' title='Game Design - Construindo Sistemas de Jogo de Causa e Efeito - 1º Parte'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbur67QXRuPJZuQvnlz6Ia9gtvuaBjfdkyFh4Ltp97VYeJDGIgv2AFCucCASLE-ihhtZ_G7lXg6BlVl7NArexekbunEb7eMPedVD7j-gdNEcOKLQWmPsTTierY_6NBY9EWIWb9Q0OPrwql/s72-c/peggle.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-5583810523841265503</id><published>2012-08-16T11:24:00.000-03:00</published><updated>2012-08-16T11:24:55.470-03:00</updated><title type='text'>Regras do Jogo (Rules of Play) lançado no Brasil pela editora Blucher</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;
Salve pessoas!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Como bom Game Developer a leitura de bons livros deve fazer parte do dia a dia. Segue uma excelente matéria do blog &lt;a href=&quot;http://gamedeveloper.com.br/&quot;&gt;GameDeveloper.com.br&lt;/a&gt;&amp;nbsp;que tenho o prazer de divulgar:&lt;/div&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #555555; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h2 class=&quot;title&quot; style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 24px; font-weight: bold; line-height: 24px; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify; vertical-align: baseline;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #555555; font-size: 13px; font-weight: normal; line-height: 20px;&quot;&gt;O livro&amp;nbsp;&lt;a href=&quot;http://www.blucher.com.br/livro.asp?Codlivro=06262c&quot; style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #c11927; font-size: 13px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: underline; vertical-align: baseline;&quot; target=&quot;_blank&quot; title=&quot;Blucher&quot;&gt;Regras do Jogo: Fundamentos do Design de Jogos&lt;/a&gt;&amp;nbsp;(&lt;a href=&quot;http://www.amazon.com/Rules-Play-Game-Design-Fundamentals/dp/0262240459/ref=sr_1_1?ie=UTF8&amp;amp;qid=1344992369&amp;amp;sr=8-1&amp;amp;keywords=rules+of+play&quot; style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #c11927; font-size: 13px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: underline; vertical-align: baseline;&quot; target=&quot;_blank&quot; title=&quot;Amazon&quot;&gt;Rules of Play: Game Design Fundamentals&lt;/a&gt;)&amp;nbsp;é uma obra famosa sobre Design de Jogos, uma referência em diversos cursos de desenvolvimento de jogos no mundo inteiro, e a&lt;a href=&quot;http://www.blucher.com.br/livro.asp?Codlivro=06262c&quot; style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #c11927; font-size: 13px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: underline; vertical-align: baseline;&quot; target=&quot;_blank&quot; title=&quot;Blucher&quot;&gt;editora Blucher&lt;/a&gt;&amp;nbsp;lançou no Brasil uma versão traduzida deste livro.&lt;/span&gt;&lt;/h2&gt;
&lt;div class=&quot;entry clearfix&quot; style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; display: block; font-size: 13px; line-height: 20px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;&quot;&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify; vertical-align: baseline;&quot;&gt;
&lt;span id=&quot;more-1471&quot; style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify; vertical-align: baseline;&quot;&gt;
Escrito por Katie Salen e Eric Zimmerman (ambos designers de jogos e professores em universidades americanas), este livro trata a criação de um jogo de forma lúdica, desde os conceitos básicos sobre o que é jogar, segundo o filósofo Johan Huizinga (que escreveu Homo Ludens), até conceitos mais atuais, todos aplicados a Design de Jogos.&lt;/div&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: center; vertical-align: baseline;&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-1476&quot; height=&quot;300&quot; src=&quot;http://gamedeveloper.com.br/blog/wp-content/uploads/2012/08/20120815_003113.jpg&quot; style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; display: block; font-size: 13px; margin-bottom: 10px; margin-left: auto; margin-right: auto; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;&quot; title=&quot;Regras do Jogo: Fundamentos do Design de Jogos&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify; vertical-align: baseline;&quot;&gt;
Sua abordagem é muito ampla, cobrindo tudo que um Game Designer precisa saber a respeito de criar conceitos e mecânicas de jogos.&amp;nbsp;Este livro também faz o leitor pensar e rever conceitos sobre a importância da atividade lúdica para o ser humano. Eles livro é um guia para o Designer de Jogos entender vários aspectos que um jogo possui, como sua influência cultural, e também ensina a explorar mais a capacidade lúdica que os jogos possuem.&lt;/div&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: center; vertical-align: baseline;&quot;&gt;
&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-1475&quot; height=&quot;300&quot; src=&quot;http://gamedeveloper.com.br/blog/wp-content/uploads/2012/08/20120815_003046.jpg&quot; style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; display: block; font-size: 13px; margin-bottom: 10px; margin-left: auto; margin-right: auto; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;&quot; title=&quot;Regras do Jogo: Fundamentos do Design de Jogos&quot; width=&quot;400&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify; vertical-align: baseline;&quot;&gt;
A editora Blucher dividiu o livro em 4 volumes, cada um com uma parte diferente do livro. Abaixo está o conteúdo de cada volume:&lt;/div&gt;
&lt;blockquote style=&quot;border-bottom-width: 0px; border-color: initial; border-left-color: rgb(202, 218, 231); border-left-style: solid; border-left-width: 3px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #666666; font-size: 13px; font-style: italic; margin-bottom: 20px; margin-left: 20px; margin-right: 20px; margin-top: 20px; overflow-x: hidden; overflow-y: hidden; padding-bottom: 0px; padding-left: 9px; padding-right: 0px; padding-top: 0px; quotes: none; vertical-align: baseline;&quot;&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;&quot;&gt;
Volume 1 – Principais Conceitos – tem como temas a interação lúdica significativa, o design, os sistemas, a interatividade, a definição de jogos e de jogos digitais, o circulo mágico e os esquemas primários.&lt;/div&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;&quot;&gt;
Volume 2 – Regras – tem como temas a definição das regras, as regras em três níveis e dos jogos digitais, os jogos como sistemas emergentes, de incerteza, de teoria da informação, de informação, cibernéticos, da teoria dos jogos e por fim como sistemas de conflitos, além de abordar a quebra das regras.&lt;/div&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;&quot;&gt;
Volume 3 – Interação Lúdica – tem como temas a definição de interação, os jogos como experiência lúdica e do prazer, os jogos como interação lúdica de significados, narrativa e da simulação, e ainda os jogos como experiência social.&lt;/div&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;&quot;&gt;
Volume 4 – Cultura – tem como temas a definição de cultura e os jogos como retórica cultural, cultura aberta, resistência cultural e ambiente cultural.&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div style=&quot;border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; margin-bottom: 20px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify; vertical-align: baseline;&quot;&gt;
A qualidade da tradução do livro está muito boa, e este é um livro obrigatório para estudantes e game designers! A leitura é bem tranquila, e o conteúdo é realmente bom para qualquer pessoa que gosta de desenvolvimento de jogos. Mesmo pesquisadores que desenvolvem trabalhos acadêmicos relacionados a video games podem aproveitar este livro, graças a visão única dos autores e de todo material que eles pesquisaram para criar este livro.&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
Postagem original:&amp;nbsp;&lt;a href=&quot;http://gamedeveloper.com.br/blog/2012/08/15/regras-do-jogo-editora-blucher/#more-1471&quot;&gt;http://gamedeveloper.com.br/blog/2012/08/15/regras-do-jogo-editora-blucher/#more-1471&lt;/a&gt;&lt;br /&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/5583810523841265503/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/08/regras-do-jogo-rules-of-play-lancado-no.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/5583810523841265503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/5583810523841265503'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/08/regras-do-jogo-rules-of-play-lancado-no.html' title='Regras do Jogo (Rules of Play) lançado no Brasil pela editora Blucher'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-4969698027435384503</id><published>2012-08-14T17:04:00.001-03:00</published><updated>2012-08-14T17:04:17.734-03:00</updated><title type='text'>Max the Gold Hunter no Game Music Brasil - Melhor Game Indie!</title><content type='html'>Salve pessoas!&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Depois de muito trabalho, empenho, ajuda dos amigos e noites sem dormir, finalmente o projeto&amp;nbsp;&lt;a href=&quot;http://www.deploy.net.br/maxthegoldhunter/&quot; target=&quot;_blank&quot;&gt;Max the Gold Hunter&lt;/a&gt;&amp;nbsp;está se tornando realidade, e pra deixar as coisas mais legais ainda, ele vai participar do Concurso&amp;nbsp;&lt;a href=&quot;http://www.gamemusicbrasil.com.br/?page_id=456&amp;amp;v=196&quot; target=&quot;_blank&quot;&gt;Game Music Brasil - Melhor Game Indie!&lt;/a&gt;&lt;/div&gt;
As votações vão até 16/09/2012, então quem puder, vote lá!&lt;br /&gt;
Para aqueles que não tem acesso a Youtube, segue o vídeo no Vimeo:&lt;br /&gt;
&lt;center&gt;
&lt;iframe allowfullscreen=&quot;allowfullscreen&quot; frameborder=&quot;0&quot; height=&quot;250&quot; mozallowfullscreen=&quot;mozallowfullscreen&quot; src=&quot;http://player.vimeo.com/video/47369324&quot; webkitallowfullscreen=&quot;webkitallowfullscreen&quot; width=&quot;500&quot;&gt;&lt;/iframe&gt; &lt;br /&gt;
&lt;a href=&quot;http://vimeo.com/47369324&quot;&gt;Max the Gold Hunter - Puzzle Game for Android&lt;/a&gt; from &lt;a href=&quot;http://vimeo.com/user12906302&quot;&gt;DeployGamesVideos&lt;/a&gt; on &lt;a href=&quot;http://vimeo.com/&quot;&gt;Vimeo&lt;/a&gt;.&lt;/center&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/4969698027435384503/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/08/max-gold-hunter-no-game-music-brasil.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/4969698027435384503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/4969698027435384503'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/08/max-gold-hunter-no-game-music-brasil.html' title='Max the Gold Hunter no Game Music Brasil - Melhor Game Indie!'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-123384334260526024</id><published>2012-05-30T16:56:00.000-03:00</published><updated>2012-05-30T16:56:59.164-03:00</updated><title type='text'>libGDX - Vale a pena?</title><content type='html'>Salve pessoas!&lt;br /&gt;
A muito estou afastado, e o maior motivo é o trabalho. Quem dera fazer jogos desse dinheiro no Brasil, e Uberlândia /MG tivesse gente interessada nisso. Deixando as chatisses de lado, hoje quero falar sobre a Engine na qual eu tenho focado todos os meus estudos, o libGDX: &lt;a href=&quot;http://code.google.com/p/libgdx/&quot;&gt;http://code.google.com/p/libgdx/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
libGDX é um Framework de desenvolvimento de jogos em Java. Sendo em Java é multiplataforma, e com alguns diferenciais:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Trabalha diretamente em cima do openGL, ou seja, é possível fazer maravilhas em 2D e em 3D;&lt;/li&gt;
&lt;li&gt;É possível escrever um &quot;core&quot; sem se preocupar com a saída de publicação (Desktop, HTML5, Android) o que facilita e muito para quem não quer morrer de tédio em cima do emulador do Android;&lt;/li&gt;
&lt;li&gt;É livre, e pode ser extendida com coisas suas!&lt;/li&gt;
&lt;li&gt;Editor de Fontes: o openGL não trabalha com fontes locais (arquivos .ttf por exemplo) então para isso a equipe do libGDX criou o HIERO: &lt;a href=&quot;http://code.google.com/p/libgdx/downloads/detail?name=hiero.jar&quot;&gt;http://code.google.com/p/libgdx/downloads/detail?name=hiero.jar&lt;/a&gt;. Com ele, você cria e modela a fonte como desejar, e depois utiliza dentro do libGDX, bem fácil;&lt;/li&gt;
&lt;/ul&gt;
Agora na ultima versão (atualmente 0.9.3) vem junto com o pacote uma ferramenta para criação de projetos de Eclipse, já preparados para rodar o libGDX. Técnicamente há uma grande vantagem, pois as partes que precisam de muito processamento (Ex: Física com Box2D) são compiladas em JNI, linguagem nativa que provê uma melhoria significativa na performance.&lt;br /&gt;
Depois de tudo isso, vem a pergunta: E aí, o&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt; libGDX vale a pena?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
Se olharmos pelo lado técnico, sim. A quantidade de funcionalidades e padrões disponíveis é impressionante, com muita, mas muita coisa pronta para faciltiar o desenvolvimento, inclusive para 3D.&lt;br /&gt;
Se olharmos pelo lado do Game Designer, não serve para nada, pois apenas as ferramentas de apoio são visuais, o resto é tudo código.&lt;br /&gt;
&lt;br /&gt;
Eu tenho me empenhado em aprender cada vez mais sobre este framework, já que meu foco é dev e não design. Se o seu também é, fica a dica, vale muito a pena.&lt;br /&gt;
&lt;br /&gt;
É isso. Espero voltar em breve, com algumas boas notícias.&lt;br /&gt;
&lt;br /&gt;
E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;br /&gt;
Até a próxima !</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/123384334260526024/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/05/libgdx-vale-pena.html#comment-form' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/123384334260526024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/123384334260526024'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/05/libgdx-vale-pena.html' title='libGDX - Vale a pena?'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-6999084383763255233</id><published>2012-02-21T14:18:00.003-02:00</published><updated>2012-02-21T20:19:56.570-02:00</updated><title type='text'>Out There Somewhere - Nostalgia pura !</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Como vai pessoal !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Estou aqui de novo, desta vez para falar do fruto de muito trabalho da galera do &lt;a href=&quot;http://studiominiboss.com/?lang=pt&quot; target=&quot;_blank&quot;&gt;Studio MiniBoss&lt;/a&gt;. : &lt;strong&gt;&lt;a href=&quot;http://studiominiboss.com/category/out-there-somewhere/?lang=pt&quot; target=&quot;_blank&quot;&gt;Out There Somewhere&lt;/a&gt;.&lt;/strong&gt; &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://studiominibossdotcom.files.wordpress.com/2012/02/promotional-art_voskhod.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://studiominibossdotcom.files.wordpress.com/2012/02/promotional-art_voskhod.jpg&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Como eu sou alguém que ADORA jogos antigos (Diga-se jogos de NES, Master System, SNES, etc.) eu me interessei por este jogo quando eles começaram a divulgar vídeos e imagens. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Durante o Pre-Order eu comprei, esperando para ver o que viria. Hoje, no dia do seu lançamento, finalmente eu constatei: FANTÁSTICO !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Gráficos excelentes, som impecável, mecânica extremamente&amp;nbsp;funcional e bem produzida. Destaque para a &lt;strong&gt;Teleport Gun&lt;/strong&gt;, uma idéia sensacional para aumentar a dificuldade do jogo. E sim, é difícil ! vou ter que comprar pilhas pro meu controle de Xbox de PC para conseguir jogar ele! hauahuahauahua !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;O jogo me lembrou o quanto eu me diverti com os jogos de NES principalmente (Naquela época Master System, Mega Drive, Etc era coisa de rico, pobre tinha &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrYl9YudAda4cdZXYF_U77t4cjQd-Rbyz0C8DlsqHmjRdVMYeuar9eeLjj0x_wvWUYub-fGFbhEYQIzqGank0ji-BNlfh5WupoK8vB9uHeg8EdvX0b9Jzy3mqkPMAdCUT3O3j__kl-nQ0/s1600/topgameccesystem.jpg&quot; target=&quot;_blank&quot;&gt;Top Game&lt;/a&gt;) e o quanto os jogos eram realmente divertidos.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Como eu comprei durante o Pre-Order, o pacote veio completo: OST, Manuais, Artworks e uma versão do jogo em português.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Indico e recomendo, &lt;a href=&quot;http://studiominiboss.com/category/out-there-somewhere/?lang=pt&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Out There Somewhere&lt;/strong&gt;&lt;/a&gt;&amp;nbsp;é uma excelente demonstração de como os Indies são poderosos, e de como a união faz a força. Parabéns novamente aos amigos &lt;a href=&quot;https://twitter.com/#!/saint11&quot; target=&quot;_blank&quot;&gt;Santo&lt;/a&gt; e &lt;a href=&quot;https://twitter.com/#!/amora_b&quot; target=&quot;_blank&quot;&gt;Amora&lt;/a&gt; pelo excelente trabalho feito neste projeto. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Até a próxima !&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/6999084383763255233/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/02/out-there-somewhere-nostalgia-pura.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/6999084383763255233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/6999084383763255233'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/02/out-there-somewhere-nostalgia-pura.html' title='Out There Somewhere - Nostalgia pura !'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-2492486909960060725</id><published>2012-02-03T22:46:00.000-02:00</published><updated>2012-02-03T22:46:41.145-02:00</updated><title type='text'>Be Fast - Projeto de Game Educativo</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Como vão pessoas !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Hoje venho aqui falar sobre uma idéia &lt;strong&gt;ULTRA&lt;/strong&gt; legal na qual começei a trabalhar ontem (02/02/12). Fui me encontrar com a minha Irmã mais nova, power vocalista, sempre amiga e madrinha de casamento &lt;a href=&quot;http://oficinadesonhosbycarol.blogspot.com/&quot; target=&quot;_blank&quot;&gt;Carol Scarabucci&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Nosso assunto era óbvio, ou falaríamos de banda ou de jogos ! E não é que acabamos falando de jogos?! &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;A idéia é criar alguns títulos específicos para educação, no caso dela de crianças especiais. Já saí de lá com mil coisas na cabeça, mas o principal delas: &lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;Um novo projeto !&lt;span style=&quot;background-color: red;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt; Depois de falarmos sobre alguns possíveis títulos, concordamos com um : &lt;strong&gt;Be Fast&lt;/strong&gt; -&amp;gt; Seja Rápido. O Título é sugestivo, um jogo ao melhor estilo Time Attack voltado para educação.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Bom, por enquanto é o que eu posso falar, já que mal começamos. Uma coisa MARAVILHOSA disso é que a Carol será a ilustradora, e ela desenha&amp;nbsp;extremamente bem&amp;nbsp;!!! Finalmente eu posso me sentir tranquilo com relação a um projeto, não existe nada mais frustante que começar projetos a 4 ou mais mãos e sempre terminar em duas, as minhas. :(.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;É isso, mais informações eu falo por aqui depois.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Até a próxima !&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/2492486909960060725/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/02/be-fast-projeto-de-game-educativo.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/2492486909960060725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/2492486909960060725'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/02/be-fast-projeto-de-game-educativo.html' title='Be Fast - Projeto de Game Educativo'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-4425901666003521492</id><published>2012-01-26T09:24:00.000-02:00</published><updated>2012-01-26T09:24:31.482-02:00</updated><title type='text'>Deploy RPG Maker - Comandos de Evento</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Olá de novo pessoas !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Desde o dia que postei o vídeo sobre o editor de mapas, tenho trabalhado bastante em vários aspectos da ferramenta, e posso dizer que já estou com uns 25% do projeto concluído. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Mas espere aí, 25%? &lt;span style=&quot;color: red;&quot;&gt;&lt;strong&gt;ENTÃO VOCÊ NÃO FEZ NADA AINDA ! &lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Fiz, e continuo fazendo, mas vale lembrar que o RPG Maker possui uma EQUIPE por trás, e eu sou só um né.. :).&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Eu calculo essa porcentagem porque eu começei a fazer parte do Interpretador em Java, pois como eu expliquei anteriormente eu acho, a ferramenta, assim como o RPG Maker, será composta por um Editor e um Interpretador.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;E como água e óleo não se misturam, pra fazer um XML em .Net ser lido no Java tá dando um trampo danado, estou focando meu empenho no Editor, pois quando este terminar eu posso ficar por conta do Interpretador.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Começei na segunda-feira (23/01/2012)&amp;nbsp; a construção e edição de eventos no mapa. Como todo maker sabe, os eventos são a vida dos jogos no RMK. começou a caminhar bem:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi53IGRjokKcmMcf_HlcnYcuqexPtvGGsvi6Fsl6eL_A22QyP2rfgxSOJDdYWtJ80lgJYiRsNZDWOqOw4Aga-i_RT3xW5FBDQll74MDTGlFxEgQTCSFsPeN4T3FY7ygj45_EFij0YEPbdg/s1600/editorA.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;259&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi53IGRjokKcmMcf_HlcnYcuqexPtvGGsvi6Fsl6eL_A22QyP2rfgxSOJDdYWtJ80lgJYiRsNZDWOqOw4Aga-i_RT3xW5FBDQll74MDTGlFxEgQTCSFsPeN4T3FY7ygj45_EFij0YEPbdg/s320/editorA.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Mas agora estou fazendo o mais importante. A lista de comandos. E vou falar, vai dar um trabalhão danado.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Conforme o Helper do RPG Maker, a lista de comandos nada mais é do que um objeto que possui um código que representa aquele comando, para ser lido depois pelo interpretador e o mesmo saber do que se trata, e uma coleção de valores que, de acordo com o comando escolhido o interpretador tomará uma determinada decisão.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Parece bem simples, mas vamos à tela de comandos ro RMK:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhy6FcIRTNlIs2Mh6d14PjfhfIZCs6MRL47wVrPAiGKTQ86jVS4W3b4Yh0_0BcIQUWCp3SM8bmWspXswF9NRy3yYWMo6VOexUfqNlNLh2TevbXFkkM6dUa2Yfz2gqkH2NvJGJHv4faF5-s/s1600/editorB.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;152&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhy6FcIRTNlIs2Mh6d14PjfhfIZCs6MRL47wVrPAiGKTQ86jVS4W3b4Yh0_0BcIQUWCp3SM8bmWspXswF9NRy3yYWMo6VOexUfqNlNLh2TevbXFkkM6dUa2Yfz2gqkH2NvJGJHv4faF5-s/s320/editorB.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;A lista de comandos possível é ENORME, além de possuir o ulitmo botão &quot;Chamar Script&quot; onde um código ruby pode ser escrito. A probabilidade de se fazer um jogo burro ou um RPG fantástico está toda aqui, na combinação destes comandos.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Para o DRMK, eu iniciei organizando os botões por categorias e removendo aquilo que não faz parte do contexto:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY5uyVWaK4mzRo8d1OtZtgbJtN4RCcNQ5WJWHcu9XH4cx7gtFyIqtydhcI0V-1pCsuSgfi9XKXHEbkq9cpFT6Owqd4JWlBj3tfHuq33t47eMix-PwwNW_FOXEMMXKYNvYFJFQvWFvKQ3M/s1600/editorC.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;166&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY5uyVWaK4mzRo8d1OtZtgbJtN4RCcNQ5WJWHcu9XH4cx7gtFyIqtydhcI0V-1pCsuSgfi9XKXHEbkq9cpFT6Owqd4JWlBj3tfHuq33t47eMix-PwwNW_FOXEMMXKYNvYFJFQvWFvKQ3M/s320/editorC.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;É preciso lembrar que o DRMK construirá jogos para Android, então certos comandos como &quot;Opções de teclas&quot; estão completamente fora do contexto, e opções como &quot;Vibrar﻿ Device&quot; podem facilmente entrar na lista.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Continuo a trabalhar com empenho, pois cada botão destes representa uma janela que precisa ser construída, e nesse exato momento são 87 !!&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Ainda esta semana (Eu acho) eu devo falar sobre o lançamento do meu próximo jogo, &lt;strong&gt;Max the Gold Hunter.&lt;/strong&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;E como eu digo sempre : &lt;b&gt;Be Brave, Be Bold, Create !!&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Até a próxima !&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/4425901666003521492/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-comandos-de-evento.html#comment-form' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/4425901666003521492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/4425901666003521492'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-comandos-de-evento.html' title='Deploy RPG Maker - Comandos de Evento'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi53IGRjokKcmMcf_HlcnYcuqexPtvGGsvi6Fsl6eL_A22QyP2rfgxSOJDdYWtJ80lgJYiRsNZDWOqOw4Aga-i_RT3xW5FBDQll74MDTGlFxEgQTCSFsPeN4T3FY7ygj45_EFij0YEPbdg/s72-c/editorA.jpg" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-2377439648581448231</id><published>2012-01-17T13:30:00.000-02:00</published><updated>2012-01-17T13:30:15.261-02:00</updated><title type='text'>Deploy RPG Maker - Editor de Mapas</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Como vai Pessoal !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Estou eu aqui de novo pra falar mais um pouco do andamento do DRMK. Estou tentando fazer as coisas aos poucos, mas a vontade de ver pronto tá me deixando louco !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Depois do sucesso na construção do &lt;a href=&quot;http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-editor-de-tilesets.html&quot; target=&quot;_blank&quot;&gt;Editor de Tilesets&lt;/a&gt;&amp;nbsp;eu começei logo o Editor de Mapas. Este com certeza é bem mais complexo, e mais uma vez o WPF se sobresaiu. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Fiz um video para que vocês vejam o funcionamento básico:&lt;/div&gt;&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;400&quot; mozallowfullscreen=&quot;&quot; src=&quot;http://player.vimeo.com/video/35198657?title=0&amp;amp;byline=0&amp;amp;portrait=0&quot; webkitallowfullscreen=&quot;&quot; width=&quot;550&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;a href=&quot;http://vimeo.com/35198657&quot;&gt;Deploy RPG Maker - Tiled Map Editor&lt;/a&gt; from &lt;a href=&quot;http://vimeo.com/user10045306&quot;&gt;joaoneto&lt;/a&gt; on &lt;a href=&quot;http://vimeo.com/&quot;&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;Os comandos principais de edição já funcionam, com multipla seleção de tiles que é uma verdadeira Mão-na-roda. Um preenchimento e exclusão dos tiles da camada em Lote pra poder compensar algumas coisas que eu não conseguirei colocar, e o próximo passo é os atalhos de teclado e menu de contexto com o básico: Copiar, Colar, Excluir, etc.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;O editor de Eventos eu devo começar em breve, mas como ainda não decidi se o Interpretador vai ser em &lt;strong&gt;RGSS&lt;/strong&gt; ou &lt;strong&gt;BASIC&lt;/strong&gt;&amp;nbsp;estou deixando esse mais pra frente.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;É isso. Mais notícias eu voltarei aqui.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Até a próxima.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;﻿&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/2377439648581448231/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-editor-de-mapas.html#comment-form' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/2377439648581448231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/2377439648581448231'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-editor-de-mapas.html' title='Deploy RPG Maker - Editor de Mapas'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-6472364471654780870</id><published>2012-01-15T15:54:00.000-02:00</published><updated>2012-01-15T15:54:23.803-02:00</updated><title type='text'>Janken Game - O Primeiro de Muitos !</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Olá de novo pessoal !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Tenho falado muito da minha ferramenta pra RPG, e tenho esquecido de falar do mais importante, os Títulos !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Lá por meados de Agosto/2011, logo que me formei, com muitas glórias por causa desse projeto aqui, &lt;a href=&quot;http://www.youtube.com/watch?v=ANz5yCCYnHg&quot; target=&quot;_blank&quot;&gt;Over Horizon Tribute&lt;/a&gt;, Eu já estava estudando a plataforma Android a algum tempo. Começei a fazer um Framework pra me auxiliar (Meu foco é arquitetura, então fazer Framework faz parte do processo) a desenvolver um jogo bem simples. Eu pensei em várias coisas: Pipe Puzzles, Quebra-Cabeça de peças, e mais uma infinidade de coisas, até chegar num que parecia a solução: Janken-pô. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Dei uma pesquisada, e vi que haviam poucos títulos do gênero para a plataforma. Isso me animou a fazer pelo menos o Beta, onde não é possível jogar contra um amigo nem há contagem de pontos: &lt;a href=&quot;https://market.android.com/details?id=deploy.games.janken&quot; target=&quot;_blank&quot;&gt;Janken Game&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/vjYdrfX50QKnAk50c05b19gPXXz22FnmK7N3qU04FN4GdAH93cJfED3lp3PRmc5luQ&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://2.bp.blogspot.com/vjYdrfX50QKnAk50c05b19gPXXz22FnmK7N3qU04FN4GdAH93cJfED3lp3PRmc5luQ&quot; width=&quot;213&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://4.bp.blogspot.com/q-g81Vg4B2XulF-LNx-RTPW3hVgjisEp4K_3mKXP_2wunnEADs26W_-5oBtU6KxD5J0Y&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://4.bp.blogspot.com/q-g81Vg4B2XulF-LNx-RTPW3hVgjisEp4K_3mKXP_2wunnEADs26W_-5oBtU6KxD5J0Y&quot; width=&quot;213&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/eOBYS_3Gl0LjeHpxNTuB2DfnL4bgLOgHNQ20CL8eksmUs9As9UKsYZbTzX7fj_E9pQ&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://3.bp.blogspot.com/eOBYS_3Gl0LjeHpxNTuB2DfnL4bgLOgHNQ20CL8eksmUs9As9UKsYZbTzX7fj_E9pQ&quot; width=&quot;213&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Esses tempos atrás eu estava pensando em fazer um vídeo,&amp;nbsp;colocar pontuação, ser possível jogar por BlueTooth com um amigo e mais um monte de coisas, mas acabei focando em outros projetos como o&amp;nbsp; &lt;a href=&quot;http://www.deploy.net.br/Games/images/tomballa.jpg&quot; target=&quot;_blank&quot;&gt;Tom Balla Adventures&lt;/a&gt; e o &lt;a href=&quot;http://www.deploy.net.br/Games/images/maxgoldhunter.jpg&quot; target=&quot;_blank&quot;&gt;Max the Gold Hunter&lt;/a&gt;, que estão em andamento mas logo logo estarão disponíveis para download no Market.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Fazer jogos tem que ser paixão. Se for por dinheiro ou entretenimento apenas, não perca seu tempo.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;E como eu digo sempre : &lt;strong&gt;Be Brave, Be  Bold, Create !!&lt;/strong&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; Até a próxima !&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/6472364471654780870/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/01/janken-game-o-primeiro-de-muitos.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/6472364471654780870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/6472364471654780870'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/01/janken-game-o-primeiro-de-muitos.html' title='Janken Game - O Primeiro de Muitos !'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/vjYdrfX50QKnAk50c05b19gPXXz22FnmK7N3qU04FN4GdAH93cJfED3lp3PRmc5luQ=s72-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-928815767002164201</id><published>2012-01-15T15:36:00.000-02:00</published><updated>2012-01-15T15:36:48.884-02:00</updated><title type='text'>Deploy RPG Maker - Editor de Tilesets</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Como diria Steven Tyler: I&#39;m Back in the Saddle Again !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Hoje vou falar de uma parte do DRMK (Deploy RPG Maker) que tem me dado trabalho: O Editor de Tilesets. Para tentar seguir à risca o que o RMXP faz, eu tenho que tentar reproduzir ao máximo suas ferramentas, até porque meu foco é trazer os Makers do RMXP para este novo mundo.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;O maior de todos os desafios até agora é a configuração Tile by Tile dos seguintes itens:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Bloqueado:&lt;/strong&gt; Informa diretamente se aquele tile é passável ou não.&lt;/li&gt;
&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;strong&gt;Direções Bloqueadas: &lt;/strong&gt;Configura se um tile é Não passável em alguma direção, para que o próximo tile naquela direção seja passável por exemplo. É muito utilizado em pontes por exemplo, onde as laterais da ponte são bloqueadas mas no rio é livre.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;strong&gt;Prioridades: &lt;/strong&gt;Configura a prioridade de desenho, muito usada em objetos altos como copas de árvores.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;strong&gt;Gramado:&lt;/strong&gt;&amp;nbsp; Este é um item interessante: Se estiver configurado como Gramado o Tile é Half-Drawed, ou seja, tem só uma porção do mesmo desenhada com transparência sobre o objeto que está passando no momento, dando a impressão de que o objeto está mergulhado no tile.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;strong&gt;Balcão: &lt;/strong&gt;Outro item interessante: Ele bloqueia a passagem do lado de baixo do objeto, mas muda a prioridade de desenho de acordo com a direção a posição Y do mesmo.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;strong&gt;Terreno: &lt;/strong&gt;Configura até&amp;nbsp;8 tipos de terreno para o tile. isto pode ser usado por exemplo para criar terrenos com lama onde o objeto se move mais lentamente, ou terrenos venenosos, onde se o objeto tocar ele fica envenenado.&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Depois de muito apanhar do Winforms para fazer a configuração, apelei pro WPF. Com muito menos código e configurações o resultado já está satisfatório:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvY6sDy4TtHSSSLcUGfqvmaIcCUDz-c-robfrUJDA8bRhaVt-SA-ztXy9ChZGwDITpnhOYr8u1oGEZLuip9jSq2wrbKRJdHvcmqFREP1TV8jgiT_xCo_B9zM92PHur88Ad5CJeAGbIbyk/s1600/ev01.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;191&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvY6sDy4TtHSSSLcUGfqvmaIcCUDz-c-robfrUJDA8bRhaVt-SA-ztXy9ChZGwDITpnhOYr8u1oGEZLuip9jSq2wrbKRJdHvcmqFREP1TV8jgiT_xCo_B9zM92PHur88Ad5CJeAGbIbyk/s320/ev01.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHKB8goHL8LYE2suonmL3Y38GNcz90hErFqRNRLksc102KYstV-vsNUJQnGcHM3pJsQxBSeob9_9FRBxrcLiwtnjhBAgBmq7LaiTbz58AGvKmBHmbAM1_WCQcN8GO1aDKGIW5dDJi8Nck/s1600/ev02.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;191&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHKB8goHL8LYE2suonmL3Y38GNcz90hErFqRNRLksc102KYstV-vsNUJQnGcHM3pJsQxBSeob9_9FRBxrcLiwtnjhBAgBmq7LaiTbz58AGvKmBHmbAM1_WCQcN8GO1aDKGIW5dDJi8Nck/s320/ev02.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;A vantagem do uso do WPF está na facilidade de desenho de objetos com fundo transparente. Estou muito satisfeito com o resultado e pretendo mudar o editor de grupo de Inimigos para WPF também, além de fazer o Editor de Animações do mesmo modo.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Por enquanto é isso. Devo falar de outras coisas, como os jogos que já desenvolvi, mas continuo falando do DRMK assim que possível.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;E como eu digo sempre : &lt;strong&gt;Be Brave, Be  Bold, Create !!&lt;/strong&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Até a próxima !&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/928815767002164201/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-editor-de-tilesets.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/928815767002164201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/928815767002164201'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-editor-de-tilesets.html' title='Deploy RPG Maker - Editor de Tilesets'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvY6sDy4TtHSSSLcUGfqvmaIcCUDz-c-robfrUJDA8bRhaVt-SA-ztXy9ChZGwDITpnhOYr8u1oGEZLuip9jSq2wrbKRJdHvcmqFREP1TV8jgiT_xCo_B9zM92PHur88Ad5CJeAGbIbyk/s72-c/ev01.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-1766007653575314205</id><published>2012-01-04T21:19:00.000-02:00</published><updated>2012-01-04T21:19:19.196-02:00</updated><title type='text'>Deploy RPG Maker - Banco de dados</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Estou de volta, Feliz ano novo !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Enquanto estava por conta, começei a trabalhar no projeto pela parte mais importante: A modelagem de dados. Seguindo um velho Help do RPG Maker XP em inglês que eu tenho aqui (Disponível pra download no final do post) começei a analisar o que seria necessário pra dar andamento no projeto. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Fazer um &lt;strong&gt;RMXP Like &lt;/strong&gt;pode ter suas vantagens, e com certeza a principal delas é atrair os usuários dessa maravilhosa ferramenta para usar esta que está começando a nascer. Algumas imagens de como anda:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://img847.imageshack.us/img847/9573/ev01v.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;203&quot; src=&quot;http://img847.imageshack.us/img847/9573/ev01v.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://img267.imageshack.us/img267/8264/ev02m.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;204&quot; src=&quot;http://img267.imageshack.us/img267/8264/ev02m.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://img851.imageshack.us/img851/3892/ev03.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;176&quot; src=&quot;http://img851.imageshack.us/img851/3892/ev03.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Estou trabalhando com empenho, e no que mais vai interessar a todos: &lt;strong&gt;Código para customização&lt;/strong&gt;. A parte mais complicada, pois eu terei que construir o Parser do zero. Estou com vontade de fazer pra &lt;strong&gt;Ruby, &lt;/strong&gt;mesmo que o &lt;strong&gt;BASIC&lt;/strong&gt; também seja uma linguagem na qual eu tenho pensado.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Mais notícias no próximo post. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Como prometido, Segue o Link do Help em Inglês do Rpg Maker XP, uma mão na roda pra quem quiser aprender mais sobre RGSS: &lt;a href=&quot;http://www.4shared.com/rar/LcIGJa35/rpgxp_-_help_-_ingles.html&quot; target=&quot;_blank&quot;&gt;Help em Ingles do RMXP&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;E como eu digo sempre : &lt;strong&gt;Be Brave, Be Bold, Create !!&lt;/strong&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Até a próxima !&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/1766007653575314205/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-banco-de-dados.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/1766007653575314205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/1766007653575314205'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2012/01/deploy-rpg-maker-banco-de-dados.html' title='Deploy RPG Maker - Banco de dados'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-7584847549532499624</id><published>2011-12-16T10:02:00.000-02:00</published><updated>2011-12-16T10:02:11.318-02:00</updated><title type='text'>Deploy RPG Maker - When the code Begins!</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Há muito muito tempo atrás, lá por meados de 2001/2002, eu conheci uma ferramenta que mudaria a minha vida. Era o RPG Maker 2000. Com ela, além de entender melhor como funcionavam os jogos de RPG que tanto gosto, como Final Fantasy 6 e outros, começei a aprender programação. Entender variáveis, condições, loops. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Alguns anos mais tarde a Enterbrain, dona do RPG Maker, lançou uma versão que literalmente veio para ficar: RPG Maker XP. com ele, além de tudo que já era possível com o 2k/2k3, foi adicionada a opção de desenvolvimento usando a linguagem Ruby, o RGSS. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Hoje, quase 10 anos depois do meu primeiro contato com o RPG Maker, sou um profissional da área de Desenvolvimento de sistemas, mas minha paixão por jogos continua aqui, firme e forte.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Nos dias de hoje, programar para PC é programar para um grupo muito restrito de pessoas. Se houvesse uma forma de se fazer jogos, como no RPG Maker, mas para plataformas como Android, seria algo maravilhoso, certo? Pensando nisso há várias ferramentas hoje no mercado, que facilitam o desenvolvimento e a publicação para a plataforma, entre elas a grande &lt;a href=&quot;http://www.anscamobile.com/corona/&quot; target=&quot;_blank&quot;&gt;Corona SDK&lt;/a&gt;, o &lt;a href=&quot;http://sites.google.com/site/irmproject/&quot; target=&quot;_blank&quot;&gt;IRM Project,&amp;nbsp;&lt;/a&gt;entre outros.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;Mas então porque fazer uma ferramenta, já que o mercado está abarrotado delas?&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;1º detalhe:&lt;/strong&gt; A maioria das boas ferramentas são pagas e caras. &lt;br /&gt;
Eu concordo, passar anos fazendo algo pra colocar de graça na net e o povo ainda falar que é ruim é uma Me#$%. &lt;br /&gt;
&lt;strong&gt;2º detalhe:&lt;/strong&gt; Eu já vi jogos fantásticos feitos em no RM2K, ou seja, mesmo que o RGSS tenha vindo para mudar tudo, existem pessoas que com uma ferramenta sem codificação fazem milagres.&lt;br /&gt;
&lt;strong&gt;3º detalhe:&lt;/strong&gt; São poucas as ferramentas de mercado que usam o termo&lt;strong&gt; &quot;write once, run anywhere&quot;&lt;/strong&gt;, ou seja, no caso dos RPG Makers, o que é feito nele só roda em PC com Windows, então se um &quot;Maker&quot; fizer um grande jogo e quiser portá-lo já era.&lt;br /&gt;
&lt;br /&gt;
Estes são alguns dos detalhes que me levaram a querer fazer uma ferramenta assim. Estou começando a desenhar, e logo logo eu terei mais novidades.&lt;br /&gt;
&lt;br /&gt;
Até a próxima, e como eu digo sempre: &lt;strong&gt;Be Brave, Be Bold, Create !&lt;/strong&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/7584847549532499624/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2011/12/deploy-rpg-maker-when-code-begins.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/7584847549532499624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/7584847549532499624'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2011/12/deploy-rpg-maker-when-code-begins.html' title='Deploy RPG Maker - When the code Begins!'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1111786338355014455.post-4084886490037919994</id><published>2011-12-15T20:26:00.000-02:00</published><updated>2011-12-15T20:26:40.030-02:00</updated><title type='text'>Hora de Bloggar !</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;Olá pessoal ! &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Estou eu aqui começando um Blog do meu portal de jogos para Android e HTML5. Mas porque essas plataformas e porque jogos? &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Bem, os dois tem muito em comum: Estão na &quot;moda&quot; e hoje em dia as produções independentes estão cada vez mais ganhando mercado. Salve Google !&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Já tenho um game publicado, bem simples, mas foi a primeira boa impressão que tive tanto da plataforma: &lt;a href=&quot;https://market.android.com/details?id=deploy.games.janken&quot; target=&quot;_blank&quot;&gt;Janken Game&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;No portal já estão divulgados mais três títulos que estão em andamento, logo logo tem coisa nova por aí: &lt;a href=&quot;http://www.deploy.net.br/Games/Index.aspx&quot; target=&quot;_blank&quot;&gt;Deploy Games&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Bom, é isso. Espero estar de vez em quando por aqui para falar das novidades.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Até a próxima!&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deploygames.blogspot.com/feeds/4084886490037919994/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://deploygames.blogspot.com/2011/12/hora-de-bloggar.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/4084886490037919994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1111786338355014455/posts/default/4084886490037919994'/><link rel='alternate' type='text/html' href='http://deploygames.blogspot.com/2011/12/hora-de-bloggar.html' title='Hora de Bloggar !'/><author><name>João Neto</name><uri>http://www.blogger.com/profile/14960332944136706741</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>