1 Configuração do ambiente

Neste capítulo veremos como configurar o ambiente de desenvolvimento para realizar as atividades práticas no computador. Qualquer que seja a plataforma – Linux, macOS ou Windows – será necessário instalar as seguintes ferramentas e bibliotecas conforme as instruções que veremos nas próximas seções:

  • CMake, para automatizar a geração de scripts de compilação e ligação de forma independente de plataforma.
  • Emscripten, para compilar código C++ e gerar binário em WebAssembly de modo a executar as aplicações no navegador.
  • Git, para clonar do GitHub o repositório do SDK do Emscripten e da biblioteca de desenvolvimento que usaremos na disciplina. Também é recomendável usar o Git para o controle de versão das atividades que serão feitas ao longo do quadrimestre.
  • GLEW, para carregamento das funções da API gráfica OpenGL.
  • Simple DirectMedia Layer (SDL) 2.0, para gerenciamento de dispositivos de vídeo, dispositivos de entrada, áudio, entre outros componentes de hardware.
  • SDL_image 2.0, para leitura de arquivos de imagem.

Precisaremos também de um compilador recente com suporte a C++20, como o GCC 11, Clang 13, ou MSVC 19.

Acompanhe nas seções a seguir o passo a passo da instalação desses recursos de acordo com o sistema operacional utilizado:

  • Seção 1.1 para instalação no Linux;
  • Seção 1.2 para instalação no macOS;
  • Seção 1.3 para instalar no Windows.

Não é necessário usar um IDE ou editor específico de código-fonte para o desenvolvimento das atividades. A compilação pode ser disparada através de scripts de linha de comando. Entretanto, como um exemplo, veremos na seção 1.4 como fazer a configuração básica do Visual Studio Code para o desenvolvimento de aplicações C++ com CMake.

Na seção 1.5 veremos como instalar o framework (ABCg) criado especialmente para esta disciplina. O framework será utilizado em todas as atividades do curso para facilitar o desenvolvimento das aplicações gráficas.

Dica

Preferencialmente, configure o ambiente de desenvolvimento no sistema operacional nativo. Entretanto, caso o seu computador tenha recursos de processamento e memória suficientes, é possível configurar todo o ambiente em uma máquina virtual.

O VMware Workstation Player (Windows e Linux) e VMWare Fusion Player (macOS) possuem suporte a aceleração gráfica 3D e são adequados para desenvolver as atividades da disciplina. Tanto o VMWare Workstation Player quanto o Fusion Player podem ser utilizados gratuitamente através de uma licença de uso pessoal.

O Windows Subsystem for Linux 2 (WSL 2) também suporta aceleração gráfica através do Direct3D 12.

É possível configurar o ambiente de desenvolvimento em um container Docker. Entretanto, o suporte a gráficos com aceleração de hardware exige o uso do Linux e do NVIDIA Container Toolkit, que só funciona com GPUs da NVIDIA.