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

Cecilia

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota C
Notas recebidas : C - C
Data de inscrição : 14/11/2008
Número de Mensagens : 1166
Insígnias de JAM :

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

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://www.programaCODM.webs.com/

Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 16:29
Olá pessoal Very Happy

Depois de um bom tempo estou aqui devolta Happy

sai um pouco pois estava sem internet e estava dando uma estudada em outros scripts/linguagens de programação

mas... então vamos à minha pergunta XD

conforme parei de mexer no GM esqueci de umonte de coisas...

ainda não cheguei no ponto de confundir os scripts XD... mais dei uma esquecida em algumas coisas do gm 😢

estou voltando ao GM pq foi meu berço de programação Razz (só que a primeira linguagem que aprendi foi HTML e depois GML Razz)

mas vamos à pergunta Happy

como eu faço para esticar as quatro partes de um draw?

por exemplo o draw_line

ele tem o x1 y1 x2 y2

x1 e y1 eles mostram a localização do draw
o x2 e y2 mostram a posição em que as linhas irão ficar...

agora tem como fazer um draw_sprite com por exemplo x1 x2 x3 x4 e y1 y2 y3 y4???

Bem... To Urgêntemente Precisando Disso

este Tópico Ficará Aberto Até uma resposta boa ou que da para levar com a barriga Razz

se não intenderam muito bem explico novamente Happy

PARA PESSOAS COM UM CONHECIMENTO AVANÇADO EM GML!!!

TÓPICO ABERTO ATÉ UMA RESPOSTA BOA DA PERGUNTA (ou até quando a moderação quiser XD)

VLW Pessoal Very Happy
avatar
Ranking : Sem avaliações
Data de inscrição : 26/08/2009
Número de Mensagens : 969
Insígnias de JAM :

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

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

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 17:05
draw_sprite_general(sprite,-1,left,top,width,height,x,y,1,1,0,c1,c2,c3,c4,1)
left =x1
top = y1
width = x2
heighy = y2
left = x
top = x
width = tamanho em pixels que você desejar para a largura dela
height = altura em pixels

c1,c2,c3,c4 = cores das 4 pontas
avatar
Ranking : Nota C
Notas recebidas : C - C
Data de inscrição : 14/11/2008
Número de Mensagens : 1166
Insígnias de JAM :

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

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://www.programaCODM.webs.com/

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 17:23
pelo seu raciocício até que poderia dar certo XP....

mais nem aparece o DRAW Oo...

e num tem até o x4 e y4 ae fica froidz pra mim :S

mais VLW Happy

Espero mais respostas Very Happy
avatar
Ranking : Sem avaliações
Data de inscrição : 08/06/2008
Número de Mensagens : 2314
Insígnias de JAM :

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

Prêmios
   : 3
   : 0
   : 1
Ver perfil do usuáriohttp://blackcapapps.blogspot.com.br/

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 17:24
Se quer esticar a imagem de uma forma não retangular, teste isso:

No Create crie as variáveis:
Código:
x1 = x;
y1 = y;

x2 = x+128;
y2 = y-20;

x3 = x+256;
y3 = y+256;

x4 = x-32;
y4 = y+256;

spr = sprite_get_texture(nome_da_sprite,-1);
Você pode usar background_get_texture também se for um background.

No Draw use draw_primitive_begin_texture e draw_vertex_texture para montar uma a forma que queira.
Código:
draw_set_color(c_white);

draw_primitive_begin_texture(pr_trianglefan,spr)

    draw_vertex_texture(x1,y1,0,0);
    draw_vertex_texture(x2,y2,1,0);
    draw_vertex_texture(x3,y3,1,1);
    draw_vertex_texture(x4,y4,0,1);
    draw_vertex_texture(x1,y1,0,0);
   
draw_primitive_end()
avatar
Ranking : Nota C
Notas recebidas : C - C
Data de inscrição : 14/11/2008
Número de Mensagens : 1166
Insígnias de JAM :

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

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://www.programaCODM.webs.com/

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 17:39
Kabeção.............

.....

ta PERFECT Happy

justamente oq eu queria...

vou tentar ver se consigo fazer oq eu to pensando e se der certo darei aqui como resolvido...

mais uma pergunta... tem uma script que possa fazer isso na versão LITE?

VLW

ta PERFECT Happy
avatar
Ranking : Sem avaliações
Data de inscrição : 08/06/2008
Número de Mensagens : 2314
Insígnias de JAM :

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

Prêmios
   : 3
   : 0
   : 1
Ver perfil do usuáriohttp://blackcapapps.blogspot.com.br/

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 17:45
mais uma pergunta... tem uma script que possa fazer isso na versão LITE?
Não.
Só funciona na versão PRO.
E não sei outra forma para se fazer isso.
avatar
Ranking : Nota C
Notas recebidas : C - C
Data de inscrição : 14/11/2008
Número de Mensagens : 1166
Insígnias de JAM :

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

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://www.programaCODM.webs.com/

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 17:50
cara :S

ta legal.. era quase como eu queria Oo...

a coisa que eu percebi é que ele fica quase sempre triangular XD

queria dum jeito que ele ficasse retangular...

mais será que seria possível num script parecido com esse??

VLW Happy
avatar
Ranking : Sem avaliações
Data de inscrição : 08/06/2008
Número de Mensagens : 2314
Insígnias de JAM :

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

Prêmios
   : 3
   : 0
   : 1
Ver perfil do usuáriohttp://blackcapapps.blogspot.com.br/

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 18:20
Ué, é só colocar os xy em posições que faz o desenho ser retangular.
avatar
Ranking : Nota C
Notas recebidas : C - C
Data de inscrição : 14/11/2008
Número de Mensagens : 1166
Insígnias de JAM :

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

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuáriohttp://www.programaCODM.webs.com/

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 18:29
oq é esse xvertex e esse yvertex???

precisa ter os 5 draw_vertex_texture para funcionar bem???
avatar
Ranking : Sem avaliações
Data de inscrição : 08/06/2008
Número de Mensagens : 2314
Insígnias de JAM :

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

Prêmios
   : 3
   : 0
   : 1
Ver perfil do usuáriohttp://blackcapapps.blogspot.com.br/

Re: Como esticar as 4 pontas da sprite

em Seg 01 Fev 2010, 21:12
São as posições dos pontos na textura.
Estão em forma de escala.

draw_vertex_texture(x1,y1,0,0); -> 0,0 indica a ponta superior esquerda da textura.
draw_vertex_texture(x2,y2,1,0); -> 1,0 indica a ponta superior direita da textura.
draw_vertex_texture(x3,y3,1,1); -> 1,1 indica a ponta inferior direita da textura.
draw_vertex_texture(x4,y4,0,1); -> 0,1 indica a ponta inferior esquerda da textura.

Se você usa-se 0.5,1 indicaria o meio superior.
0.5,0.5 o meio da textura.

No final preciso fechar a forma definindo o ponto inicial dela, por isso uso mais um draw_vertex_texture.
Se não, o lado esquerdo da forma ficaria aberto.
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