Entrar
Últimos assuntos
» Retorno da GMBR!!!por theguitarmester Ter 19 Mar 2024, 22:38
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21
» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39
» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16
» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05
» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55
» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39
» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28
» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01
[Tutorial] Recursos externos
+2
SIGILOSO
Fuzenrad
6 participantes
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
[Tutorial] Recursos externos
Como usar recursos externos
Alguns tem essa curiosidade, já procuraram sobre, mas a falta de explicações complica bastante, no fórum eu não encontrei um tutorial sobre o assunto que não se aprofundasse tanto quanto eu pretendo nesse. É relativamente fácil usar recursos externos em seus jogos, fazendo-os de forma mais profissional e dinâmica.
Observação: Ao usar recursos externos lembre-se que mudanças externas podem ser feitas por qualquer um, entretanto jogos com a possibilidade de modificação de alguns recursos, podem fazer surgir layouts personalizados, playlist de músicas a escolha do jogador entre outros.
As principais funções para manipulação de arquivos externos são:
Música e efeitos sonoros
sound_add()
sound_replace()
sound_delete()
Backgrounds e imagens fixas
background_add()
background_replace()
background_delete()
Sprites e imagens móveis
sprite_add()
sprite_replace()
sprite_delete()
Eu recomendo usar o comando _add() para uso geral, no qual não existe a imagem no source, dependendo exclusivamente do arquivo externo, o _replace() é recomendado quando se tem uma imagem padrão caso não exista o arquivo e _delete() pra liberar a memória do jogo, fazendo-o assim ficar mais rápido. Em geral dominar essas funções com perfeição e harmonia requer estudo, tentativas e principalmente dedicação.
Esses comandos são muito bons para arquivos grandes, como músicas no formato mp3 ou wav, imagens de fundo etc.
Arquivos de som
Pra começar vou carregar uma música apartir de um arquivo e então executá-la. No evento Create (deve ser nesse evento, caso constrário o arquivo seria carregado eternamente, travando o jogo):
0 Sons normais (como explosões, clicks, pulos etc) geralmente no formato .wav
1 Música de fundo, formatos mid
2 Sons 3D (outro tipo de configuração)
3 Reprodução externa (como o mmplayer), formatos wma e mp3
Em um evento qualquer, você pode indicar para liberar a memória desse arquivo, por exemplo, Alarm[0], colocando:
Imagens/backgrounds
Muito útil quando você pretende lançar diferentes layouts pro jogo, mudando muitas vezes somente o background, isso abre uma enorme ramificação de possibilidades.
Seu funcionamento é muito semelhante aos sons, porém requer um pouco mais de atenção, já que as imagens devem ter o tamanho da tela e "encaixar" no designer do jogo, do contrário você terá um resultado "feio" visualmente.
Eu indiquei um background para o jogo apartir de um arquivo (lembre-se de ativar o "Visible when room starts" em "Background 0" nas configurações da room).
Para descartar um background, você pode indicar uma mudança de room, fica a critério, basta inserir:
Sprites
Cuidado ao descartar uma sprite (sprite_delete), você deve indicar uma nova caso contrário não será mostrado nada.
Alguns tem essa curiosidade, já procuraram sobre, mas a falta de explicações complica bastante, no fórum eu não encontrei um tutorial sobre o assunto que não se aprofundasse tanto quanto eu pretendo nesse. É relativamente fácil usar recursos externos em seus jogos, fazendo-os de forma mais profissional e dinâmica.
Observação: Ao usar recursos externos lembre-se que mudanças externas podem ser feitas por qualquer um, entretanto jogos com a possibilidade de modificação de alguns recursos, podem fazer surgir layouts personalizados, playlist de músicas a escolha do jogador entre outros.
As principais funções para manipulação de arquivos externos são:
Música e efeitos sonoros
sound_add()
sound_replace()
sound_delete()
Backgrounds e imagens fixas
background_add()
background_replace()
background_delete()
Sprites e imagens móveis
sprite_add()
sprite_replace()
sprite_delete()
Eu recomendo usar o comando _add() para uso geral, no qual não existe a imagem no source, dependendo exclusivamente do arquivo externo, o _replace() é recomendado quando se tem uma imagem padrão caso não exista o arquivo e _delete() pra liberar a memória do jogo, fazendo-o assim ficar mais rápido. Em geral dominar essas funções com perfeição e harmonia requer estudo, tentativas e principalmente dedicação.
Esses comandos são muito bons para arquivos grandes, como músicas no formato mp3 ou wav, imagens de fundo etc.
Arquivos de som
Pra começar vou carregar uma música apartir de um arquivo e então executá-la. No evento Create (deve ser nesse evento, caso constrário o arquivo seria carregado eternamente, travando o jogo):
- Código:
dir_mus1=working_directory+"\musica.mp3"
if file_exists(dir_mus1) {
musica1=sound_add(dir_mus1,3,1)
if !sound_isplaying(musica1) sound_play(musica1)}
0 Sons normais (como explosões, clicks, pulos etc) geralmente no formato .wav
1 Música de fundo, formatos mid
2 Sons 3D (outro tipo de configuração)
3 Reprodução externa (como o mmplayer), formatos wma e mp3
- Código:
sound_replace(snd_musica1,dir_mus1,3,1)
Em um evento qualquer, você pode indicar para liberar a memória desse arquivo, por exemplo, Alarm[0], colocando:
- Código:
if !sound_isplaying(musica1) sound_delete(musica1)
Imagens/backgrounds
Muito útil quando você pretende lançar diferentes layouts pro jogo, mudando muitas vezes somente o background, isso abre uma enorme ramificação de possibilidades.
Seu funcionamento é muito semelhante aos sons, porém requer um pouco mais de atenção, já que as imagens devem ter o tamanho da tela e "encaixar" no designer do jogo, do contrário você terá um resultado "feio" visualmente.
- Código:
dir_fnd1=working_directory+"\fundo.png"
if file_exists(dir_fnd1)
fundo1=background_add(dir_fnd1,0,1)
background_index[0]=fundo1
Eu indiquei um background para o jogo apartir de um arquivo (lembre-se de ativar o "Visible when room starts" em "Background 0" nas configurações da room).
Para descartar um background, você pode indicar uma mudança de room, fica a critério, basta inserir:
- Código:
background_delete(fundo1)
Sprites
- Código:
dir_sp1=working_directory+"\sprite.png"
if file_exists(dir_sp1)
sprite1=sprite_add(dir_sp1,0,0,0,0,0)
sprite_index=sprite1
Cuidado ao descartar uma sprite (sprite_delete), você deve indicar uma nova caso contrário não será mostrado nada.
Fuzenrad- Games Ranking :
Notas recebidas : A-A-A-A-B
Data de inscrição : 04/07/2010
Reputação : 46
Número de Mensagens : 1063
Prêmios :
x 0 x 0 x 0
x 1 x 0 x 1
x 0 x 0 x 0
Re: [Tutorial] Recursos externos
Eu levei mto tempo pra aprender a usar as funções _add, e ainda me complico bastante. Certamente esse tuto me ajudará muito em projetos maiores, e tbm poderá ajudar outros usuários que queiram jogos mais rápidos ou aplicativos personalisávies!
Parabéns, um ótimo tuto, mto bem explicado e que vai direto ao ponto!
Parabéns, um ótimo tuto, mto bem explicado e que vai direto ao ponto!
SIGILOSO- Games Ranking :
Notas recebidas : A+A+A+A+A+A+A
Data de inscrição : 06/06/2009
Reputação : 39
Número de Mensagens : 2267
Prêmios :
x 0 x 2 x 0
x 4 x 2 x 1
x 0 x 0 x 0
Re: [Tutorial] Recursos externos
Realmente, vai ajudara bastante.
Me ajudou bastante, pois sou ruim nessa função.
Me ajudou bastante, pois sou ruim nessa função.
Super Games- Games Ranking :
Notas recebidas : C
Data de inscrição : 10/06/2010
Reputação : 36
Número de Mensagens : 2799
Prêmios :
x 0 x 0 x 0
x 0 x 1 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Java
- C ou C++
Re: [Tutorial] Recursos externos
E muito legal essa função _add.
Me responde uma coisa:
Como eu coloco para o sprite que eu criar não fique em formatos: .gif etc,
porque se ficar em uns desses formatos da para a pessoa editar.
Me responde uma coisa:
Como eu coloco para o sprite que eu criar não fique em formatos: .gif etc,
porque se ficar em uns desses formatos da para a pessoa editar.
Re: [Tutorial] Recursos externos
Se não quiser que o usuário edite os arquivos é mais prático não deixá-los acessíveis. Evitar isso de outro modo requer que os recursos sejam convertidos para formatos próprios e não é algo simples de fazer.
†Ceifador- Data de inscrição : 28/08/2010
Reputação : 0
Número de Mensagens : 154
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial] Recursos externos
Existe uma maneira de modificar a extenção, entretanto não protege efetivamente o arquivo, afinal continua sendo uma imagem ou um som. Seria assim, você renomeia o arquivo pra qualquer extenção, por exemplo imagem.res ou som.res, mas antes de carregar o arquivo, você deve renomear para serem lidos como imagem ou som:Como eu coloco para o sprite que eu criar não fique em formatos: .gif etc, porque se ficar em uns desses formatos da para a pessoa editar.
- Código:
file_rename("imagem.res","imagem.png")
- Código:
file_rename("imagem.png","imagem.res")
Fuzenrad- Games Ranking :
Notas recebidas : A-A-A-A-B
Data de inscrição : 04/07/2010
Reputação : 46
Número de Mensagens : 1063
Prêmios :
x 0 x 0 x 0
x 1 x 0 x 1
x 0 x 0 x 0
Re: [Tutorial] Recursos externos
Funciona da mesma forma, se você substituir um background que está sendo usado como tile, ele continua sendo mostrado porém com o novo arquivo, no caso esse background deve existir no source para você substituí-lo.
- Código:
background_replace(bkgrd,working_directory+"\fundo.png",0,0)
Fuzenrad- Games Ranking :
Notas recebidas : A-A-A-A-B
Data de inscrição : 04/07/2010
Reputação : 46
Número de Mensagens : 1063
Prêmios :
x 0 x 0 x 0
x 1 x 0 x 1
x 0 x 0 x 0
Tópicos semelhantes
» [Trancado] Dúvida sobre carregar recursos externos
» [Tutorial] Backgrounds Externos, Desempenho
» Tutorial: Criando uma playlist com arquivos externos
» TUTORIAL – Fazendo um jogo de loads externos.
» limite de recursos
» [Tutorial] Backgrounds Externos, Desempenho
» Tutorial: Criando uma playlist com arquivos externos
» TUTORIAL – Fazendo um jogo de loads externos.
» limite de recursos
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|