Conectar-se
Quem está conectado
31 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 30 Visitantes

CRP-Max

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 14/01/2010
Número de Mensagens : 348
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

[Resolvido] Arquivo externo

em Qua 10 Nov 2010, 23:36
E ai Jedis, é o seguinte:
Para evitar um load demorado ao iniciar o executavel, no game que estou criando, os png's maiores estou carregando assim:
no evento create:
global.sprite=sprite_add("frente.PNG",0,1,1,0,0,sprite_index,sprite_index)
sprite_index = global.sprite
alarm[0] =270;//após ser criada pelo obj_controle é destruida no step 270
No evento alarm[0]:
instance_destroy();
No evento draw:
draw_sprite(global.sprite, sprite_index ,x,y)

Criei um obj_controle e fiz:
No evento alarm[0]:
instance_create(650,0,obj_CIRCUITO)
No evento create:
alarm[0] = 150;//cria

Tudo esta funcionando como o esperado, o load caiu drasticamente, tudo perfeito, EXETO que no momento em que vai carregar o/os arquivo/s acontece uma parada(não é a gay) no jogo de + ou - 1 segundo.

Pergunta:
Alguma coisa errada nos codes? Tem como contornar esse problema? No momento estou sem placa de video off-board, pode ser isso? Qualquer ajuda é bem vinda, obrigado.




Última edição por Da Galáxia em Sex 12 Nov 2010, 10:18, editado 1 vez(es)
avatar
Ranking : Nota A
Notas recebidas : A+A
Data de inscrição : 20/03/2010
Número de Mensagens : 1134
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 108

Prêmios
   : 1
   : 0
   : 1
Ver perfil do usuáriohttps://www.facebook.com/seito.washiro.7

Re: [Resolvido] Arquivo externo

em Qui 11 Nov 2010, 01:10
claro, se vc for carregar uma imagem externa "grande" a cada vez que o objeto for criado, isso é crueldade com o game maker
xD
faça isso.
crie um objeto controle/banco de dados/buffer algo do tipo que carregue todas as imagens que voce for usar apenas 1 vez.
mas n destrua esse objeto e nem crie mais de um.
e entao vc usa as imagens que esta dentro do objeto "objeto controle/banco de dados/buffer" pelos outros objetos
por exemplo

Objeto Controle
Create Event:
Código:

global.image=sprite_add("frente.PNG",0,1,1,0,0,sprite_index,sprite_index);
Objeto Player
step event:
Código:

sprite_index=global.image;
assim o objeto controle sera uma espécie de banco de dados, todas as imagens que voce carregar estaram nele, e vc acessa quando quiser!
;]
avatar
Data de inscrição : 14/01/2010
Número de Mensagens : 348
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido] Arquivo externo

em Qui 11 Nov 2010, 22:39
CAMARADA, funcionou, muito obrigado.

Isso é o mesmo que se faz em C++ por exemplo. Cria-se uma variavel para ser o back buffer, para a imagem ir carregando na memoria, aí quando um buuffer esta sendo usado, o outro esta sendo carregado DOUBLE BUFFER. FANTASTICO não sabia que dava pra fazer em gml, VALEU MUITO OBRIGADO.


-----------------------------edit
podem trancar
avatar
Data de inscrição : 25/01/2010
Número de Mensagens : 908
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 16

Prêmios
   : 0
   : 0
   : 1
Ver perfil do usuáriohttp://recursos-mania.forumeiros.com

Re: [Resolvido] Arquivo externo

em Qui 27 Jan 2011, 11:07
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum