Skip to main content

Projeto realizado em python com intuido educacional de tentar reproduzir o jogo Wolfenstein 3d no prompt de comando.

Project description

pyfenstein3d

codecov License: MIT PyPI CI

GitHub Repo stars

Introdução

Projeto realizado em python com intuito educacional de tentar reproduzir o jogo Wolfenstein 3d no prompt de comando.

Utilizando a fonte Consolas, é possivel considerar que cada 2 caracteres representem 1 pixel. E assim "renderizar" qualquer imagem no prompt utilizando ANSI escape code para dar cor.

Para manter o número de quadros por segundo estável, o projeto foi desenvolvido considerando uma renderização de 100x62

Instalação

Para executar o projeto é necessario instalar python 3

Instale pip utilizando o commando:

python -m ensurepip

Execute o comando para realizar a instalação do pyfenstein3d:

python -m pip install pyfenstein3d

Configuração

Devido a performance do prompt cmd, o pyfenstein3d roda em uma resolução de 100x62 Para ter uma visualização ideal do jogo realize as seguintes instruções

  1. Clique na barra superior do prompt com o botão direito e selecione Propriedades

  2. Clique na aba Fonte

  3. Altere a Tamanho para 10

  4. Altere a Fonte para Consolas

  5. Clique na aba Layout

  6. Altere o Tamanho da Janela para largura 200 e altura 62

Execução

Após instalação e configuração do prompt, execute o modulo com o comando abaixo

python -m pyfenstein3d

Comandos

Comando Tecla
Andar para frente W
Andar para trás S
Andar para esquerda A
Andar para direita D
Virar para esquerda Seta esquerda
Virar para direita Seta direta
Atirar Seta cima
Abrir porta Espaço

Desenvolvimento

  • "Renderizar Pixel"
  • Raycasting 2d
  • Raycasting "3d"
  • Textura parede
  • Sprites
  • Animação
  • Portas
  • Arma
  • Tiro
  • Interação itens
  • Inimigo
  • Inteligencia artificial

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyfenstein3d-1.3.2.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyfenstein3d-1.3.2-py3-none-any.whl (326.4 kB view details)

Uploaded Python 3

File details

Details for the file pyfenstein3d-1.3.2.tar.gz.

File metadata

  • Download URL: pyfenstein3d-1.3.2.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.1.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for pyfenstein3d-1.3.2.tar.gz
Algorithm Hash digest
SHA256 00854eec203d866f9da5241c223bcacaa82809492544031d6692701d42b6a54d
MD5 be3ccd1e1a531e18962e291eb88ee873
BLAKE2b-256 b6592815109fd7d168518f715e38e0fe77511bd16e77ed835b9d2b8a65bb69f6

See more details on using hashes here.

File details

Details for the file pyfenstein3d-1.3.2-py3-none-any.whl.

File metadata

  • Download URL: pyfenstein3d-1.3.2-py3-none-any.whl
  • Upload date:
  • Size: 326.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.1.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for pyfenstein3d-1.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2d6e7e8c8c1b141a37f2d357894b9d3b3c77a0ec9c7a38151a8ddd9cb25ea1c8
MD5 95b7cfdef3c21e5a47446c2aa8c3c85f
BLAKE2b-256 a7ff81dba26b2f918b084285ac8f4e5d2763c66cfe59820273836ba05c5d9c3b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page