🤔 Para Refletir :
"Saber a hora de parar é quase tão importante quanto saber a hora de começar"
- Ricky O Bardo

Tutorial Exemplos de uso de "Apppath$" e "Binary"

SC19 Masculino

Conde
Membro
Membro
Juntou-se
25 de Junho de 2015
Postagens
381
Soluções
1
Bravecoins
344
Motor de jogo
Clickteam Fusion
Olá pessoal,

Estou compartilhando dois exemplos em formato .mfa/.exe de Clickteam Fusion 2.5 que demonstram dois métodos diferentes de carregamento de arquivos externos. Nos dois casos, o objetivo principal é ler arquivos de imagem, mas os métodos também funcionam para áudio, fontes ou qualquer outro recurso que precise ser carregado dinamicamente em um projeto.

1. Apppath$​


Neste exemplo, o método consiste em carregar arquivos diretamente a partir da pasta onde o .exe está localizado, incluindo suas subpastas. É uma forma simples e confiável de acessar recursos, especialmente útil quando você quer que o jogo encontre automaticamente os arquivos de imagens, sons ou fontes sem precisar de caminhos absolutos complexos.

O comportamento é direto: o arquivo é acessado de forma “estática” na pasta/subpasta correspondente, carregando cada recurso conforme necessário durante a execução do jogo.

2. Binary (extract/release)​


O exemplo com Binary demonstra um método um pouco mais sofisticado: os arquivos são extraídos como binários e carregados temporariamente durante a execução do aplicativo.

O processo funciona assim:
  • Cada arquivo (por exemplo, imagens IMG1.JPG, IMG2.JPG…) é extraído do pacote binário.
  • Um arquivo temporário é criado e associado ao recurso extraído.
  • Eu programei um sistema que mantém um arquivo INI temporário (ReleaseTMP.INI) que lista todos os arquivos carregados, usando strings numeradas (Str$(Index)).
  • Ao final da execução do aplicativo, todos os arquivos temporários são liberados e apagados em massa, garantindo que nada fique espalhado pelo sistema do usuário.
  • O que é adicionado no INI também é visível no .exe através de um List Object, permitindo acompanhar os arquivos carregados em tempo de execução.
Esse método é especialmente útil para quem quer proteger seu jogo, evitando que arquivos fiquem expostos diretamente na pasta do executável, mas também serve para organização, gerenciamento de muitos recursos e limpeza automática, facilitando o carregamento e descarregamento dinâmico de imagens, áudio, fontes e outros.

Eu automatizei todo o processo pensando em deixar a execução mais eficiente e otimizada para compressão de recursos, mas fiquem à vontade para perguntar, discutir ou testar modificações nos exemplos.



Antes de abrir o arquivo .MFA para estudo, certifique-se de que a estrutura de pastas está correta:
  • Coloque a pasta IMG dentro do diretório BinaryExample.
  • Também coloque o arquivo ReleaseTMP.INI dentro do BinaryExample.
Depois disso, você poderá abrir o projeto .mfa sem erros relacionados a arquivos ausentes ou caminhos incorretos.
Após o fechamento do aplicativo, você pode excluir a pasta e o arquivo INI com segurança.


Senha: 123
 

Anexos

Voltar
Topo Inferior