Projetos de exportação¶
Por que exportar?¶
Originalmente, Godot não tinha nenhum meio de exportar projetos. Os desenvolvedores compilariam os binários adequados e construiriam os pacotes para cada plataforma manualmente.
Quando mais desenvolvedores (e até mesmo não programadores) começaram a usá-lo, e quando nossa empresa começou a fazer mais projetos ao mesmo tempo, ficou evidente que isso era um gargalo.
No PC¶
Distribuir um projeto de jogo no PC com Godot é bastante fácil. Deixe o binário Godot no mesmo diretório que o arquivo project.godot
, depois comprima o diretório do projeto e você está pronto.
Parece simples, mas provavelmente há algumas razões pelas quais o desenvolvedor pode não querer fazer isso. A primeira é que pode não ser desejável distribuir cargas de arquivos. Alguns desenvolvedores podem não gostar de usuários curiosos espiando como o jogo foi feito, outros podem acha-lo deselegante, e assim por diante. Outra razão é que o desenvolvedor pode preferir um binário especialmente compilado, que é menor em tamanho, mais otimizado e não inclui ferramentas como o editor e o depurador.
Finalmente, Godot tem um sistema simples, mas eficiente para criar DLCs como arquivos extras de pacotes.
No mobile¶
O mesmo cenário nas plataformas móveis é um pouco pior. Para distribuir um projeto nesses dispositivos, um binário para cada uma dessas plataformas é construído, em seguida, adicionado a um projeto nativo juntamente com os dados do jogo.
Isso pode ser problemático porque significa que o desenvolvedor deve ser familiarizado com o SDK de cada plataforma antes mesmo de ser capaz de exportar. Embora aprender cada SDK seja sempre encorajado, pode ser frustrante ser forçado a fazê-lo em um momento indesejado.
Há também outro problema com essa abordagem: diferentes dispositivos preferem alguns dados em diferentes formatos a serem executados. O principal exemplo disso é a compressão de textura. Todo o hardware do PC usa compressão S3TC (BC) e que foi padronizado por mais de uma década, mas dispositivos móveis usam diferentes formatos para compactação de textura, como PVRTC (iOS) ou ETC (Android).
Exportação a partir da linha de comando¶
Em produção, é útil automatizar construções, e o Godot suporta isso com os parâmetros de linha de comando -export
e -export-debug
. Exportar da linha de comando ainda requer um conjunto prévio de exportação para definir os parâmetros de exportação. Uma invocação básica do comando seria:
godot --export "Windows Desktop" some_name
Isso será exportado para some_name.exe
, assumindo que há um conjunto prévio chamado "Windows Desktop" e o modelo pode ser encontrado. O caminho de saída é relativo ao caminho do projeto ou absoluto; não respeita o diretório que o comando foi invocado.
Você também pode configurá-lo para exportar apenas o arquivo PCK ou ZIP, permitindo que uma única exportação seja usada com vários executáveis Godot. Isso ocorre se o nome-alvo terminar com .pck
ou .zip
.
Muitas vezes é útil combinar o argumento -export
com o argumento -path
e criar um conjunto prévio de exportação dedicado para exportação automatizada:
godot --path path/to/project --export "pck" game_name.pck
PCK versus ZIP pack file formats¶
Each format has its upsides and downsides. PCK is the default and recommended format for most use cases, but you may want to use a ZIP archive instead depending on your needs.
PCK format:
- Uncompressed format. Larger file size, but faster to read/write.
- Not readable and writable using tools normally present on the user's operating system, even though there are third-party tools to extract and create PCK files.
ZIP format:
- Compressed format. Smaller file size, but slower to read/write.
- Readable and writable using tools normally present on the user's operating system. This can be useful to make modding easier (see also Pacotes de exportação, patches e mods).