sexta-feira, 17 de abril de 2015

Instalando SDL2 no Visual Studio 2013

Em algum post mais antigo, mostrei como configurar a biblioteca SDL2 no Code::Blocks 13 e aleguei que este era o melhor ambiente que existia. Realmente Code::Blocks continua sendo pra mim o melhor ambiente multiplataforma e grátis que existe, mas não podemos comparar ao seu concorrente pago (minha instalação expira a licença em 27 dias), Visual Studio, quando o assunto é integração de ambiente. A integração entre compilador, depurador, sistema operacional e ambiente de desenvolvimento lhe proporcionam maior imersão no desenvolvimento, sem precisar de muitos ajustes. Ou seja, facilidade, next, next, finish, plug-and-play, enjoy, etc...


Chega de papo, vamos começar a configurar. Primeiramente, baixe o arquivo SDL2-devel-2.0.3-VC.zip no site da biblioteca. Até o momento deste tutorial, a última versão era a 2.0.3. Caso tenha alguma versão mais recente, pode baixar sem medo de ser feliz. Descompacte os arquivos em um local estratégico, que você irá se lembrar e que não vai ficar na sua cara toda vez que for no Windows Explorer. Eu por exemplo, criei uma pasta chamada ExtLibs ao lado da pasta Projects, dentro da estrutura de pastas do Visual Studio 2013 no Meus Documentos.



O caminho completo de minha instalação ficou: C:\Users\Username\Documents\Visual Studio 2013\ExtLibs\SDL2-2.0.3 mas fica ao gosto do freguês escolher onde colocar os arquivos.

Seguindo, crie um novo Empty Project em C++ e dê o nome que quiser.


No Solution Explorer, clique com o botão direito sobre o projeto e vá em Propriedades (Properties). Na janela que irá se abrir, vá no nó C/C++ na árvore da esquerda, em General e adicione o caminho para a pasta include apontando para o diretório que você descompactou a SDL2.


Agora na mesma tela de propriedades, selecione o nó Linker na esquerda e em Additional Library Directories, acrescente o caminho para os arquivos da biblioteca. Mesmo minha máquina sendo 64bits (finalmente troquei!), eu apontei para o diretório x86 para manter a compatibilidade com meus projetos. E roda tanto em 32bits quanto 64bits.


Ainda na mesma tela, em Linker, selecione o nó Inputs e acrescente em Additional Dependencies "SDL2.lib; SDL2main.lib".


Agora no nó System dentro de Linker, selecione o campo SubSystem como "Windows (/SUBSYSTEM:WINDOWS)" e clique em OK.


Pronto, agora é só criar um novo arquivo no projeto como C++ File.


Acrescente o código para teste:
O código abaixo irá apenas criar uma janela e iniciar a SDL2, aguardar 10 segundos e fechar.

#include <SDL.h>

int main(int argc, char** argv)
{
    SDL_Window* window = NULL;
    window = SDL_CreateWindow ( "Bem vindo ao SDL2", SDL_WINDOWPOS_UNDEFINED,
                                SDL_WINDOWPOS_UNDEFINED,
                                640,
                                480,
                                SDL_WINDOW_SHOWN );

    SDL_Renderer* renderer = NULL;
    renderer = SDL_CreateRenderer(window, 0, SDL_RENDERER_ACCELERATED);

    SDL_SetRenderDrawColor(renderer, 0, 0, 0, 0);

    SDL_RenderClear(renderer);

    SDL_RenderPresent(renderer);

    SDL_Delay(10000);

    SDL_DestroyWindow(window);
    SDL_Quit();

    return 0;
}

E clique em RUN! Ops!


Se apareceu essa mensagem, não entre em pânico. Coloque o arquivo SDL2.dll no diretório onde está seu executável (Debug e Release) e seja feliz. Ah, não se esqueça que você deve distribuir essa dll junto ao seu projeto. Essa dll veio junto ao download e deve estar na pasta x86 ou x64, dependendo do que você escolheu lá em cima, 32 ou 64 bits.

Espero que tenha ajudado.

Breno.
Compartilhe:

0 comentários:

QuaseHard. Tecnologia do Blogger.