Conectar-se

Esqueci minha senha

Últimos assuntos
» [Enquete] Concursos GMBR
por Willy Hoje à(s) 19:49

» CR - Concurso Relâmpago!!
por Willy Ter 18 Jul 2017, 17:11

» 3D:como rodar a camara em horizontal?
por Cambalinho Ter 18 Jul 2017, 15:09

» [Resolvido] pode explicar a d3d_set_projection()?
por Cambalinho Ter 18 Jul 2017, 11:28

» Escrever a resposta certa muda de room
por PedroX Seg 17 Jul 2017, 21:46

» Nota de esclarecimento - GMBR voltou!
por Mentos e Coca-cola Seg 17 Jul 2017, 17:05

» [CR] Campo Minado
por Katerp Dom 16 Jul 2017, 23:09

» [CR] The Bazooka Cat
por Tedi Ripper Dom 16 Jul 2017, 23:01

» Como melhorar um protótipo(Design)
por lolandoplayer Dom 16 Jul 2017, 22:56

» Diminuir velocidade ao arrastar objeto
por LwysF Dom 16 Jul 2017, 17:33

Quem está conectado
22 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 21 Visitantes

Tedi Ripper

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36
Estatísticas
Temos 12700 usuários registrados
O último usuário registrado atende pelo nome de Eduardo Gomes

Os nossos membros postaram um total de 220919 mensagens em 30412 assuntos

Blur com surface, me ajudem!!!

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Blur com surface, me ajudem!!!

Mensagem por Luiz A. Oliveira em Ter 05 Jul 2011, 21:22

Eai galera to com um probleminha, eu aprendi a fazer um efeito blur mas não sei como fazer a surface ser criada apartir da view e não da room toda (10000x800 Lol que room grande), sei que vai travar um pouco mais vou fazer. Me ajeudem!!!!!!

Ta ai meu code:
//Create Event:

b=true;
s=surface_create(room_width,room_height);
t=surface_create(room_width,room_height);

boc=10;
d=1;
dep=4;
a=22.5;
l=boc/(((360/a)*(dep/d)));

//End Step Event:

surface_set_target(s);
screen_redraw();
surface_reset_target();
surface_set_target(t);
screen_redraw();
surface_reset_target();
surface_copy(s,0,0,t);

//Draw Event:

if(b=true){
for(ii=1;ii for(i=0;i<360;i+=a){
draw_surface_ext(s,lengthdir_x(ii*d,i),lengthdir_y(ii*d,i),1,1,0,c_white,l);
}
}
draw_set_blend_mode(bm_normal);
}

//Key Press Event for B-key Key:

if(b=true){
b=false;
}else{
b=true;
}
avatar
Luiz A. Oliveira

Ranking : Nota C
Notas recebidas : D-B-C
Data de inscrição : 08/09/2010
Número de Mensagens : 914
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://luizgm.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Blur com surface, me ajudem!!!

Mensagem por GameMakerTutoriais em Ter 05 Jul 2011, 21:32

É só pegar as coordenadas da view e fazer o cálculo...

Código:

surface_copy_part(
        s,
        0,
        0,
        t,
        view_xview[0],
        view_yview[0],
        view_wview[0],
        view_hview[0]
        );

No caso, tu quer só a parte da view pra acelerar o blur, certo? Faz o seguinte então, diminui o tamanho dessa surface para o mesmo tamanho da view, no caso eu digo a surface "destino", porque aí vc já ganha memória e velocidade. Se ela for do tamanho da room, de certa forma vai estar com memória excessiva sem uso.

GameMakerTutoriais

Data de inscrição : 29/01/2011
Número de Mensagens : 800
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Blur com surface, me ajudem!!!

Mensagem por Luiz A. Oliveira em Ter 05 Jul 2011, 21:39

pode adaptar isso ao meu code?
não entendi direito como vai funcionar
avatar
Luiz A. Oliveira

Ranking : Nota C
Notas recebidas : D-B-C
Data de inscrição : 08/09/2010
Número de Mensagens : 914
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://luizgm.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Blur com surface, me ajudem!!!

Mensagem por rafasgb em Ter 05 Jul 2011, 21:49

Na hora de criar
Código:

s = surface_create(view_wview,view_hview);
t = surface_create(view_wview,view_hview);

hora de desenhar
Código:

if(b=true){

for(ii=1;ii<dep*d;ii+=d){
    for(i=0;i<360;i+=a){
      draw_surface_ext(s,view_xview+lengthdir_x(ii*d,i),view_yview +lengthdir_y(ii*d,i),1,1,0,c_white,l);
    }
}
avatar
rafasgb

Ranking : Nota A
Notas recebidas : A
Data de inscrição : 19/05/2008
Número de Mensagens : 581
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   :
   :
   : 1

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Blur com surface, me ajudem!!!

Mensagem por GameMakerTutoriais em Ter 05 Jul 2011, 21:53

Teste aí como postou o rafasgb, se der tudo certo coloque um [Resolvido] no tópico, se não, poste outra vez aqui pra gente falando o que aconteceu Smile

GameMakerTutoriais

Data de inscrição : 29/01/2011
Número de Mensagens : 800
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Blur com surface, me ajudem!!!

Mensagem por Luiz A. Oliveira em Qua 06 Jul 2011, 11:37

agora quero fazer um sprite_create_from_surface deste blur
edit-----
tentei fazer definindo a sprite(surface) como uma var, dai quando desenho aparece tudo preto Oo, oque ouve?
avatar
Luiz A. Oliveira

Ranking : Nota C
Notas recebidas : D-B-C
Data de inscrição : 08/09/2010
Número de Mensagens : 914
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://luizgm.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Blur com surface, me ajudem!!!

Mensagem por GameMakerTutoriais em Qua 06 Jul 2011, 16:06

Se não me engano, acho que tem uma função que se chama sprite_create_from_screen(), mas não sei se é isso mesmo de cabeça! Você pode tentar usar ela fazer o sprite diretamente da tela, mas ela é um pouco lenta!

GameMakerTutoriais

Data de inscrição : 29/01/2011
Número de Mensagens : 800
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum