Olá pessoal, hoje, com ajuda do meu amigo José Antônio (mais conhecido como Jalf da comunidade
SharpGames), consegui rodar o exemplo do XNA Touch no iPhone. É muito fácil. Para isso, você precisa necessariamente de um Mac com OS X e alguma determinação.
Veja uma tela para você se animar:
Mão na massa, para começar, é necessário instalar algumas coisas, sigam a ordem:
- Apple iPhone SDK (
clique aqui);
- Mono Framework for Mac OS X (
clique aqui);
- Mono Develop for Mac OS X (
clique aqui);
- Mono Touch Trial (
clique aqui);
Instalando isso tudo, precisamos baixar o XNA Touch, acessando esse site
clicando aqui e depois em Download.
Descompacte o arquivo e você vai ter a pasta do XNA Touch com a estrutura:
- Samples (pasta de exemplos de como utilizar)
- StarterKits (jogos pré-prontos)
- XNATouch.Framework (arquivos do XNA Touch)
Abra o Mono Develop na sua pasta de aplicativos e em "Open a Solution" procure a pasta que você descompactou, selecione "Visual Studio Solution" para conseguir abrir o arquivo .SLN da raiz.
Aberta a solução, vá na pasta (dentro do Mono Develop) StarterKits e com o segundo botão no AlienGame, selecione a opção "Run Item".
Pronto, agora o jogo deve abrir o simulador de iPhone e você pode sair matando aliens!
Agora se você já possui um jogo em XNA e quer portar, a dica do Jalf é a seguinte, crie um novo projeto com um arquivo desse conteúdo:
Código:
using MonoTouch.Foundation;
using MonoTouch.UIKit;
using XnaTouch;
using XnaTouch.Samples;
using XnaTouch.Samples.Storage;
namespace XnaTouch.Samples.Storage
{
[Register ("AppDelegate")]
class Program : UIApplicationDelegate
{
private Game1 game;
public override void FinishedLaunching (UIApplication app)
{
// Fun begins..
game = new Game1();
game.Run();
}
static void Main (string [] args)
{
UIApplication.Main (args,null,"AppDelegate");
}
}
}
Então, adicione todos os seus fontes já existentes para esse projeto. Você também pode adicionar "as link" se você quiser continuar mantendo uma única cópia compartilhada e substitua Microsoft.Xna.Framework por XnaTouch.Framework em todos os lugares do seu código.
Para maiores esclarecimentos, acesse:
http://xnatouch.codeplex.com/!
Não deixem de me seguir no twitter, estou sempre postando novidades sobre o assunto:
http://www.twitter.com/luizpestana/
Sucesso!