portar um jogo do GameMaker

Porte um jogo do GameMaker para um projeto sem licenças de exportação

Portar um jogo do GameMaker significa reconstruir um projeto que é seu. Rooms viram cenas, objetos viram nós, e eventos de GML viram callbacks de script.

Portar um jogo do GameMaker significa reconstruir em outro motor um projeto que é seu. O GML é específico do GameMaker, e arquivos de projeto .yyp, rooms e definições de objeto não têm importador em outro lugar. A reconstrução é mecânica, porém, porque o modelo do GameMaker se mapeia com clareza em uma árvore de cena.

Seu GML e sua arte são seus, então a maior parte de um port de GameMaker está liberada para mudar de casa. Verifique separadamente qualquer asset de marketplace, já que as licenças podem restringir o uso a projetos do GameMaker.

A Summer Engine é o destino da reconstrução: cenas e nós com scripts, ferramentas 2D que cobrem o que o GameMaker faz, e 3D disponível se o jogo crescer. O projeto é seu, não há royalties, e exportar para desktop, mobile, web e console faz parte do motor em vez de ser uma compra separada.

Rooms, objetos e eventos se mapeiam em uma árvore de cena

Uma room vira uma cena. Um objeto vira um nó com um script, e instâncias de objeto viram cenas instanciadas. O evento Create vira um callback de pronto. O evento Step vira um callback de processamento por quadro. O evento Draw vira um callback de desenho. Alarms viram temporizadores. Herança de objeto vira herança de cena ou de script. Sprites com origem viram nós de sprite com deslocamento, e máscaras de colisão do GameMaker viram formas de colisão.

Padrões de GML que precisam ser reescritos

Alguns hábitos de GML não se traduzem direto. Variáveis globais e a instrução with incentivam uma estrutura plana que uma árvore de nós trata de outra forma, normalmente com referências de nó e sinais. ds_map, ds_list e ds_grid viram dicionários, arrays e arrays aninhados com gerenciamento automático de memória, então as chamadas manuais de destruição desaparecem. instance_create e instance_destroy viram instanciação de cena e remoção de nó em fila. Persistência de room e ordem de instâncias precisam de tratamento explícito em vez de depender das configurações da room.

Pixel art, câmeras e resolução

Projetos 2D no GameMaker normalmente definem um tamanho fixo de room e uma viewport de câmera. Reproduza isso com uma viewport na sua resolução base e escala inteira com filtro nearest neighbor para pixel art. Movimento em subpixel é a regressão comum: projetos do GameMaker muitas vezes arredondam posições para manter os pixels alinhados, e se você pular essa etapa na reconstrução, os sprites tremem durante o movimento de câmera. Defina sua política de encaixe em pixel no começo em vez de corrigir objeto por objeto.

Exportação sem licenciamento por plataforma

Historicamente o GameMaker dividia os destinos de exportação em níveis de licença e módulos. Na Summer Engine, desktop, mobile, web e console são direções de plataforma do mesmo motor, e o projeto é integralmente seu, sem royalties e sem divisão de faturamento. Se o seu jogo do GameMaker também quisesse 3D ou trabalho mais pesado de shader mais tarde, essa folga existe no mesmo projeto em vez de exigir outra ferramenta.

Perguntas frequentes

Um arquivo de projeto do GameMaker pode ser importado em outro motor?

Não. Projetos .yyp do GameMaker, rooms e definições de objeto não têm importador em outros motores, e GML não roda fora do GameMaker. O port é uma reconstrução, mas mecânica, já que rooms se mapeiam em cenas e objetos em nós com scripts.

Como os eventos do GameMaker se traduzem?

Create vira um callback de pronto, Step vira um callback de processamento por quadro, Draw vira um callback de desenho, e Alarms viram temporizadores. Herança de objeto vira herança de cena ou de script, e máscaras de colisão viram formas de colisão.

O que substitui ds_map, ds_list e ds_grid?

Dicionários, arrays e arrays aninhados, todos com gerenciamento automático de memória. As chamadas manuais de destruição que as estruturas de dados do GameMaker exigem deixam de ser necessárias, o que elimina uma classe inteira de vazamentos do código reconstruído.

Por que minha pixel art treme depois do port?

Movimento em subpixel. Projetos do GameMaker comumente arredondam posições para que os sprites fiquem alinhados à grade de pixels. Se a reconstrução move sprites em posições fracionárias, eles tremem durante o movimento de câmera. Defina uma política de encaixe em pixel para todo o projeto desde o começo.

Preciso de licenças separadas para cada plataforma de exportação?

Não. Desktop, mobile, web e console são direções do mesmo motor, e o projeto é seu, sem royalties e sem divisão de faturamento. Os jogos são escritos em C++ e GDScript, com C# também disponível exceto na web.

Continue explorando

Mais formas de criar com a Summer Engine

Criador de jogos com IA

O centro para criar jogos 2D e 3D completos descrevendo-os.

Abrir

Make a game from a picture and the idea it holds

Bring a picture and Summer Engine builds a game inspired by its look and concept: scenes, gameplay, and matching art in one project you own.

Abrir

Port a 3DS game by rebuilding it, not converting it

Porting a 3DS game means rebuilding a game you own as a new project that runs on platforms that still sell games. There is no file converter for this.

Abrir

Port a Nintendo DS game to platforms that still sell games

A Nintendo DS port is a rebuild of a game you own. The stylus design is the asset worth keeping, because touch is native on every phone.

Abrir

Port a Wii game and decide what happens to motion control

Porting a Wii game means rebuilding a title you own for hardware without a Wii Remote. The pointer and the motion gestures need a new input design.

Abrir

Port a Wii U game off the smallest console audience

Porting a Wii U game means rebuilding a title you own for platforms with a single screen. The GamePad layer is the part that has to be redesigned.

Abrir

Port a PSP game and give it a second analog stick

Porting a PSP game means rebuilding a title you own. The camera design is the biggest change, because the PSP had one analog nub and no right stick.

Abrir

Port a PS Vita game before the platform disappears entirely

Porting a PS Vita game means rebuilding a title you own. The rear touch pad is the one input with no modern equivalent.

Abrir

Port a GameCube game from 480p to a modern project

Porting a GameCube game means rebuilding a title you own. The analog triggers and fixed camera design are the parts that need deliberate decisions.

Abrir

Modelos de plataforma

Comece com um projeto pronto e descreva suas mudanças.

Explorar

Ver todos os modelos de jogos

Comece com um projeto pronto e descreva suas mudanças.

Explorar

Comece a criar seu jogo agora

Baixe a Summer Engine, descreva o que você quer e veja tudo tomar forma. Grátis para começar, sem programar.