A configuração das funções de salvar e carregar do seu jogo varia conforme a complexidade dele. A Unreal Engine oferece suporte à serialização para gerenciar salvamento e carregamento. A Unreal Engine tem uma classe de objeto SaveGame que pode ser derivada em Blueprint ou C++ e funciona para salvar variáveis simples. Se o seu jogo exigir um comportamento de salvamento e carregamento mais complexo, veja esta palestra sobre melhores práticas e técnicas de serialização. Se você quiser escrever configurações configuráveis pelo usuário, use a classe de utilitário UGameUserSettings.
No Parrot, UParrotGameUserSettings é derivado de UGameUserSettings. Isso salva e carrega as configurações do jogador que o Parrot precisa.
Exemplo de configurações de áudio
No Parrot, o jogador pode configurar o áudio. O Parrot salva os seguintes valores float:
Volume principal
Volume da música
Volume dos efeitos sonoros
Certifique-se de usar a classe correta de configurações de usuário do projeto. Isso pode ser configurado em Editar, Configurações do Projeto, Engine - Configurações gerais alterando o campo Classe de Configurações do Usuário do Jogo para apontar para ParrotGameUserSettings.
Em seguida, converta as configurações do usuário para o tipo UParrotGameSettings e chame a função salvar. Isso pode ser visto em UParrotAudioSubsystem, que é abordado em Implementação de engine de áudio no Parrot.
Outra utilidade em usar a classe derivada UGameUserSettings é que a desserialização não é um problema. As configurações do usuário são lidas e aplicadas automaticamente quando o jogo é iniciado.