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

CRP-Max

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 21/02/2012
Número de Mensagens : 70
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áriohttp://www.arkadesgames.blogspot.com

fonte com sprites

em Qui 22 Mar 2012, 20:54
ola gnt, eu gostaria d saber como eu faço com q as fontes sejam sprites, por exemplo: font A = spr_fontA (desenho da letra A) ?
avatar
Ranking : Nota D
Notas recebidas : D+B+D
Data de inscrição : 03/10/2011
Número de Mensagens : 421
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: fonte com sprites

em Qui 22 Mar 2012, 20:58
ue, e so vc desenhar as letras, acho que nao tem como trasnformar uma fonte em sprites O-O
avatar
Ranking : Nota B
Notas recebidas : B
Data de inscrição : 24/03/2010
Número de Mensagens : 1129
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 1
Ver perfil do usuáriohttp://awesomewizards.deviantart.com/

Re: fonte com sprites

em Qui 22 Mar 2012, 21:04
Henrique,perdoe-me mas isso é extremamente possível,já vi um Tuto explicando como fazer,se faz uma sprite com todas as letras ,e a organiza de uma forma que a transforma em fonte,não sei como se faz,só sei que é possível
avatar
Ranking : Nota A
Notas recebidas : B-A-A
Data de inscrição : 13/01/2010
Número de Mensagens : 1087
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 0
Ver perfil do usuáriohttp://www.mathaeuz.deviantart.com

Re: fonte com sprites

em Qui 22 Mar 2012, 21:10
Existe um comando no Game maker que cria uma nova fonte apartir de uma sprite (seus frames)

font_add_sprite( sprite , primeira letra , proporcional , separação);
*sprite > sprite a ser usada
*primeira letra > primeira letra (frame) da sprite
Se minha primeira letra for a letra A (maiúsculo mesmo)
substitua por ord('A')
*proporcional > Se as caixas de colisão dos frames são proporcionais à sua largura (true ou false).
*separação > separação extra em pixels entre as letras.

ex:
Adicionando uma fonte que começa no ponto de exclamação, proporcional e com separação extra valendo 3:
Código:
global.NOVA_FONTE=font_add_sprite(spr_fontenova,ord('!'),true,3)
Sempre que quizer usar a fonte, use o comando draw_set_font(global.NOVA_FONTE);

A ordem dos caracteres na fonte deve respeitar a lista de caracteres Unicode, que pode ser encontrada aqui, na primeira tabela (C0 Controls and Basic Latin). Geralmente, começamos uma fonte de sprite no ponto de exclamação, pois a partir daí estão os caracteres visíveis.

Espero ter ajudado. o/
avatar
Ranking : Nota D
Notas recebidas : D+B+D
Data de inscrição : 03/10/2011
Número de Mensagens : 421
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: fonte com sprites

em Qui 22 Mar 2012, 21:11
hmm, mas tudo bem, nao precisava pedir desculpas, eu disse que ACHAVA que nao tinha como, fica diboas ;)
avatar
Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

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

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

Re: fonte com sprites

em Qui 22 Mar 2012, 22:17
Você tem que saber a sequncia doscaracteres sendo que o primeiro tem que ser (!). Faz um strip de todos esses caracteres ja com os efeitos que você preferir e os chama assim:
Código:
fonte=font_add_sprite(spr_font,ord('!'),1,4);
draw_set_font(fonte);
draw_set_color(c_white);
draw_text(0,0,"Testando minha fonte personalizada");
Pronto, sua fonte ja pode ser usado nos seus jogos.
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

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

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

Re: fonte com sprites

em Qui 22 Mar 2012, 23:48
Super Maker, tem duas informações aí que não batem com um teste que eu fiz (já tem um tempo, então eu posso estar enganado).

A primeira é que não existe nenhum caractere obrigatório pra começar. Se for uma fonte só pra escrever "GO", por exemplo, você pode começar no "G" e terminar no "O". Infelizmente, não tem como deixar de colocar as intermediárias.

A segunda é que você disse que usa uma strip. Não é bem assim. A sprite tem que ter uma letra em cada image_index.
Claro que você pode importar a sprite a partir de uma strip, mas aí é como fazer a sprite, não a fonte.

Já faz um tempo que eu cismei de entender como funciona isso. Essas são as informações que ficaram na minha cabeça, mas elas podem ter perdido a validade. Se eu estiver confundindo mais do que ajudando, peço desculpas.
avatar
Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

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

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

Re: fonte com sprites

em Sex 23 Mar 2012, 01:32
Saim, eu inicio com "!" por que é esse caractere que a máquina reconhece como inicial, se eu fizer de outro modo, meus textos não serão mostrados da forma que eu escreví.
Eu procuro deixar todos os caracteres, por que sei que no decorrer de um projeto, eu posso ter a ideia de escrever algo que contenha algum caractere em especial e pra não ter que refazer, eu deixo essa dica pra todos aqui.
Eu vou no mapa de caracteres, escolho a fonte desejada, faço o strip com o editor de imagens do GM, aplico alguns efeitos e pronto, só usar a fonte.
Esse é o modo que eu acho mais fácil pra fazer essa fonte.
Aqui um mini tuto pra quem não entendeu:

Até mais pessoal!
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

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

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

Re: fonte com sprites

em Sex 23 Mar 2012, 09:27
Entendi.
Bom, isso é válido pro desenvolvimento do projeto, mas pro projeto finalizado, remover os caracteres que não serão usados diminui o peso do arquivo final (requer testes depois, pra não correr o risco de remover algum caractere importante). No caso do "GO", por exemplo, você reduz sua sprite de 94 caracteres pra 9. Se você definir o primeiro caractere da fonte como a primeira imagem da sprite, o texto aparece direitinho.

Refiz o velho teste aqui e parece que ainda tem mais uma pegadinha a ser levada em conta: A fonte é desenhada mesclada com a cor atual.
Quer dizer o seguinte, pra fonte aparecer do jeitinho que você quer, ela deve ser feita em branco ou tons de cinza e com fundo transparente. Se você quiser uma fonte colorida por definição, deve definir o draw_set_color pra branco - ou usar draw_text_color, mesclando com branco.
curiosidade:
Pra refazer o teste, usei o manual traduzido. Olha que engraçada a tradução:
manual traduzido escreveu:font_add_sprite (SPR, em primeiro lugar, prop, setembro) adiciona uma nova fonte e retorna seu índice. A fonte é criado a partir de um objeto. O sprite deve conter uma subimage para cada personagem. primeiro indicar o índice do primeiro caractere na sprite. Por exemplo, utilize ord ('0 ') se o seu sprite contém apenas os dígitos. prop indica se a fonte é proporcional. Em uma fonte proporcional, para cada personagem a largura da caixa delimitadora é usado como a largura de carácter. Finalmente, setembro indica a quantidade de espaço em branco que deve separar os personagens horizontalmente. Um valor típico seria situar-se entre 2 e 8, dependendo do tamanho da fonte.
O tradutor usado fez um balaio de gato. "Caractere" virou "personagem" e "carácter"; e "sep" (separation - separação) virou setembro (de "september"). Ri sozinho, aqui.
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: fonte com sprites

em Sex 23 Mar 2012, 10:40
O legal é que você pode trocar os caracteres de símbolos que não usa nos texto por botões de gamepad, smyles e coisas do tipo para deixar mais customizado.

Tem dois utilitários que gostei bastante quando mexi com isso
http://sandbox.yoyogames.com/games/156692
http://sandbox.yoyogames.com/games/51141
avatar
Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

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

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

Re: fonte com sprites

em Sex 23 Mar 2012, 20:32
Concordo com você Saim.
E como a fonte é criada por uma imagem, não tem como clicar em Character Ranger > All.
Se for pra usar todos os caracteres tem que ser por números, mas isso só se for usar caracteres especiais.
Exemplo:
Código:
chr(136) = ©
chr(137) = ª
chr(138) = «
chr(139) = ¬
chr(141) = ®
chr(143) = º
chr(154) = »
chr(160) =Á
chr(172) = Í
chr(178) = Ó
chr(179) = Ô
chr(191) = à
chr(192) = á
chr(200) = é
No draw ficaria:
Código:
draw_text(0,0,"A "+chr(192)+"gua "+chr(200) +" fundamental na vida dos seres vivos");
Fonte personalizada mesmo.
Falou!
avatar
Data de inscrição : 21/02/2012
Número de Mensagens : 70
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áriohttp://www.arkadesgames.blogspot.com

Re: fonte com sprites

em Sex 23 Mar 2012, 21:38
nenhuma da resposta de voçes pegou, acho que vcs entederam que eu queria uma var quando disse: fonte A=spr_fontA
avatar
Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

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

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

Re: fonte com sprites

em Sex 23 Mar 2012, 23:16
GameLoftMaker escreveu:nenhuma da resposta de voçes pegou, acho que vcs entederam que eu queria uma var quando disse: fonte A=spr_fontA
Nós entendemos sim amigo, só que nós te mostramos esses resultados, por que se você for fazer letra por letra em sprites separados vai te dar muito mais trabalho.

Quer tentar?
Então desenha algumas letras aí que formaria a palavra, fonte.
Desenha letra por letra em sprites diferentes as nomeie assim: spr_f, spr_o, spr_n, spr_t e spr_e.

No create: Action Create
Código:
f = spr_f;
o = spr_o;
n = spr_n;
t = spr_t;
e = spr_e;
Só esse create já da pra ver o problema

E no draw: Event Draw
Código:
draw_sprite(f,0,x,y);
draw_sprite(o,0,x+20,y);
draw_sprite(n,0,x+45,y);
draw_sprite(t,0,x+65,y);
draw_sprite(e,0,x+85,y);
Tudo isso de linha pra escrever uma só palavra? Ah, não!


Executando da pra ver que funcionou mesmo, mas repare no trabalhão que daria escrever as informações dos seus jogos dessa forma.

Agora, aproveita e baixa a engine que eu fiz pra você, ela ta com os carecteres completos e com efeito.
Link: sprite_font

Até mais!
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