Panda3D é um mecanismo de jogo, uma estrutura para renderização 3D e desenvolvimento de jogos para programas Python e C++. Panda3D é de código aberto e gratuito para qualquer finalidade, incluindo empreendimentos comerciais, graças à sua licença liberal. Para saber mais sobre os recursos do Panda3D, visite a galeria e a lista de recursos. Para aprender como usar o Panda3D, verifique os recursos de documentação. Se você tiver dúvidas, peça ajuda à nossa comunidade ativa.
Panda3D está licenciado sob a Licença BSD Modificada. Consulte o arquivo LICENSE para obter mais detalhes.
O SDK Panda3D mais recente pode ser baixado nesta página. Se você estiver familiarizado com a instalação de pacotes Python, poderá usar o seguinte comando:
pip install panda3d
A maneira mais fácil de instalar a versão de desenvolvimento mais recente do Panda3D em uma instalação existente do Python é usar o seguinte comando:
pip install --pre --extra-index-url https://archive.panda3d.org/ panda3d
Se este comando falhar, certifique-se de que sua versão do pip esteja atualizada.
Se você preferir instalar o SDK completo com todas as ferramentas, as versões de desenvolvimento mais recentes podem ser obtidas nesta página.
Eles são automaticamente atualizados com a versão mais recente do GitHub do Panda.
Você pode construir o Panda3D com o compilador Microsoft Visual C++ 2017, 2019 ou 2022, que pode ser baixado gratuitamente no site do Visual Studio. Você também precisará instalar o SDK do Windows e, se pretende direcionar o Windows Vista, também precisará do SDK do Windows 8.1.
Você também precisará das bibliotecas de dependência de terceiros disponíveis para uso dos scripts de construção. Eles estão disponíveis em um desses dois URLs, dependendo se você está em um sistema de 32 ou 64 bits, ou pode clicar aqui para obter instruções sobre como criá-los a partir do código-fonte.
Depois de adquirir essas dependências, você pode construir o Panda3D a partir do prompt de comando usando o seguinte comando. Altere a opção --msvc-version
com base na sua versão do Visual C++; 2022 é 14,3, 2019 é 14,2, 2017 é 14,1 e 2015 é 14. Remova a opção --windows-sdk=10
se precisar oferecer suporte ao Windows Vista, que requer o SDK do Windows 8.1.
makepanda m akepanda.bat --everything --installer --msvc-version=14.3 --windows-sdk=10 --no-eigen --threads=2
Quando a compilação for bem-sucedida, ela produzirá um arquivo .exe que você pode usar para instalar o Panda3D em seu sistema.
Nota: você pode optar por remover --no-eigen
e construir com suporte Eigen para melhorar o desempenho do tempo de execução. No entanto, isso fará com que a compilação leve horas para ser concluída, pois Eigen é uma biblioteca fortemente baseada em modelos e o compilador MSVC não funciona bem nessas circunstâncias.
Construir o Panda3D no Linux é fácil. Tudo que você precisa é invocar o script makepanda usando a versão do Python na qual deseja que o Panda3D seja construído.
Execute makepanda.py com a opção --help para ver quais opções estão disponíveis. Normalmente, você desejará especificar a opção --everything (que é construída com suporte para todos os recursos para os quais detecta as dependências de pré-requisito) e a opção --installer (que produz um arquivo .deb ou .rpm instalável para você instalar, dependendo da sua distribuição).
O comando a seguir ilustra como construir o Panda3D com algumas opções comuns:
python3 makepanda/makepanda.py --everything --installer --no-egl --no-gles --no-gles2 --no-opencv
Você provavelmente verá alguns avisos dizendo que não foi possível encontrar vários pacotes de dependências. Você deve determinar quais deseja incluir em sua construção e instalar os respectivos pacotes de desenvolvimento. Você pode visitar esta página de manual para uma visão geral das várias dependências.
Se você estiver no Ubuntu, este comando deve abranger os pacotes de terceiros usados com mais frequência:
sudo apt-get install build-essential pkg-config fakeroot python3-dev libpng-dev libjpeg-dev libtiff-dev zlib1g-dev libssl-dev libx11-dev libgl1-mesa-dev libxrandr-dev libxxf86dga-dev libxcursor-dev bison flex libfreetype6-dev libvorbis-dev libeigen3-dev libopenal-dev libode-dev libbullet-dev nvidia-cg-toolkit libgtk-3-dev libassimp-dev libopenexr-dev
Após a compilação do Panda3D, você pode instalar o pacote .deb ou .rpm produzido, dependendo de qual distribuição Linux você está usando. Por exemplo, para instalar o pacote no Debian ou Ubuntu, use isto:
sudo dpkg -i panda3d * .deb
Se você não estiver usando uma distribuição Linux que suporte pacotes .deb ou .rpm, talvez seja necessário usar o script installpanda.py, que copiará diretamente os arquivos nos locais apropriados em seu computador. Pode ser necessário executar a ferramenta ldconfig
para atualizar o cache da biblioteca após instalar o Panda3D.
Alternativamente, você pode adicionar a opção --wheel
, que produzirá um arquivo .whl que pode ser instalado em uma instalação do Python usando pip
.
No macOS, você precisará baixar um conjunto de pacotes pré-compilados de terceiros para compilar o Panda3D, que podem ser adquiridos aqui.
Depois de colocar o diretório de terceiros dentro do diretório de origem do panda3d, você pode construir o Panda3D usando um comando como o seguinte:
python makepanda/makepanda.py --everything --installer
Você pode direcionar uma versão mínima específica do macOS usando o sinalizador --osxtarget seguido do número da versão, por exemplo. 10,9 ou 10,14.
Se a compilação for bem-sucedida, o makepanda terá gerado um arquivo .dmg no diretório de origem que contém o instalador. Basta abri-lo e executar o arquivo do pacote para instalar o SDK em seu sistema.
Construir no FreeBSD é muito semelhante a construir no Linux. Você precisará instalar os pacotes necessários usando o gerenciador de pacotes do sistema. Para instalar o conjunto recomendado de dependências, você pode usar este comando:
pkg install pkgconf bison png jpeg-turbo tiff freetype2 harfbuzz eigen squish openal opusfile libvorbis libX11 mesa-libs ode bullet assimp openexr
Você também precisará escolher qual versão do Python deseja usar. Instale o pacote apropriado para ele (como python37
ou python38
) e execute o script makepanda com a versão Python escolhida:
python3.11 makepanda/makepanda.py --everything --installer --no-egl --no-gles --no-gles2
Se for bem-sucedido, isso produzirá um arquivo .pkg na raiz do diretório de origem que você pode instalar usando pkg install
.
Embora seja possível construir o Panda3D em um dispositivo Android usando o shell termux, a rota recomendada é compilar arquivos .whl usando o SDK e o NDK, que podem então ser usados pelo comando build_apps
para construir um aplicativo Python em um .apk ou pacote .aab. Você precisará obter os pacotes de terceiros mais recentes, que podem ser obtidos na página de artefatos da última execução bem-sucedida aqui:
https://github.com/rdb/panda3d-thirdparty/actions?query=branch%3Amain+is%3Asuccess+event%3Apush
Isso não inclui o Python no momento, que pode ser extraído deste arquivo.
Estes comandos mostram como compilar rodas para as ABIs Android suportadas:
export ANDROID_SDK_ROOT=/home/rdb/local/android
python3.8 makepanda/makepanda.py --everything --outputdir built-droid-arm64 --arch arm64 --target android-21 --threads 6 --wheel
python3.8 makepanda/makepanda.py --everything --outputdir built-droid-armv7a --arch armv7a --target android-19 --threads 6 --wheel
python3.8 makepanda/makepanda.py --everything --outputdir built-droid-x86_64 --arch x86_64 --target android-21 --threads 6 --wheel
python3.8 makepanda/makepanda.py --everything --outputdir built-droid-x86 --arch x86 --target android-19 --threads 6 --wheel
Agora é possível utilizar as rodas geradas com build_apps
, conforme explicado nesta página:
https://discourse.panda3d.org/t/deployment-for-android/28226
Instale o PyTest e execute o comando pytest
. Se você não instalou o Panda3D, você precisará configurar seu ambiente apontando a variável PYTHONPATH
para o diretório built
. No Linux, você também precisará apontar a variável LD_LIBRARY_PATH
no diretório built/lib
.
Por conveniência, você pode alternativamente passar a opção --tests
para makepanda.
Se você encontrar algum bug ao usar o Panda3D, relate-o no rastreador de bugs. Isto está hospedado em:
https://github.com/panda3d/panda3d/issues
Certifique-se de usar primeiro a função de pesquisa para ver se o bug já foi relatado. Ao preencher um relatório de bug, certifique-se de incluir o máximo de informações possível para ajudar os desenvolvedores a rastrear o problema, como sua versão do Panda3D, sistema operacional, arquitetura e qualquer código e modelos necessários para os desenvolvedores. reproduzir o problema.
Se você não tem certeza se encontrou um bug, sinta-se à vontade para perguntar primeiro nos fóruns ou no canal de IRC.
Se você gostaria de apoiar financeiramente o projeto, visite nossa campanha no OpenCollective. Suas contribuições nos ajudam a acelerar o desenvolvimento do Panda3D.
Para obter a lista de apoiadores, consulte o arquivo BACKERS.md ou visite a página Patrocinadores em nosso site. Obrigado a todos que doaram!