Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
Problema com alpha no GM8. sprite_set_alpha_from_sprite tem bug???
3 participantes
Página 1 de 1
Problema com alpha no GM8. sprite_set_alpha_from_sprite tem bug???
Pessoal preciso da ajuda de vocês para entender um "bug" na transparência dos sprites no GM 8. É o seguinte:
Meu jogo foi feito no GM 7, usando para praticamente todos os sprites o comando sprite_set_alpha_from_sprite, aplicando um sprite extra como se fosse uma máscara para transparência. Para o recorte ficar bom fazia 1 sprite normal e mais um com tons de cinza que seria o alpha. Então no create do objeto aplicava esse sprite extra com o comando que falei antes, era a única forma de ter um recorte suave.
Bem agora no GM 8 o meu jogo carrega bem mais rápido (loading inicial) então queria portar do 7 para o 8. Tudo funciona, porém todos os sprites que usam o sprite_set_alpha_from_sprite não ficam recortados direito. O recorte funciona mas fica com as bordas mais diluídas... Ex:
No GM 7 fica assim, do que jeito que devia ser (é uma borda da interface, fica brilhoso pelo alpha bem aplicado)
E aqui no GM8, a mesma coisa. Fica com recorte ruim, corroendo nas bordas... bem diferente do que deveria ser.
Para arrumar isso teria que pegar todas os sprites extras que fiz como alpha, colocar no potoshop e montar uma nova imagem png com alpha embutido. Mas o resultado não fica igual como no GM7, fica mais fraco o recorte, teria que aumentar o brilho do alpha no png manualmente até ele parecer com o que deveria ser. Isso é um trabalho enorme para todos os sprites do jogo (tem muitos) e o resultado não fica 100% bom como o original.
O que estou fazendo de errado? No GM8 esse comando do alpha com sprite extra fica ruim mesmo? Como resolver isso?
É bug no GM 8??
Valeu!!!
Meu jogo foi feito no GM 7, usando para praticamente todos os sprites o comando sprite_set_alpha_from_sprite, aplicando um sprite extra como se fosse uma máscara para transparência. Para o recorte ficar bom fazia 1 sprite normal e mais um com tons de cinza que seria o alpha. Então no create do objeto aplicava esse sprite extra com o comando que falei antes, era a única forma de ter um recorte suave.
Bem agora no GM 8 o meu jogo carrega bem mais rápido (loading inicial) então queria portar do 7 para o 8. Tudo funciona, porém todos os sprites que usam o sprite_set_alpha_from_sprite não ficam recortados direito. O recorte funciona mas fica com as bordas mais diluídas... Ex:
No GM 7 fica assim, do que jeito que devia ser (é uma borda da interface, fica brilhoso pelo alpha bem aplicado)
E aqui no GM8, a mesma coisa. Fica com recorte ruim, corroendo nas bordas... bem diferente do que deveria ser.
Para arrumar isso teria que pegar todas os sprites extras que fiz como alpha, colocar no potoshop e montar uma nova imagem png com alpha embutido. Mas o resultado não fica igual como no GM7, fica mais fraco o recorte, teria que aumentar o brilho do alpha no png manualmente até ele parecer com o que deveria ser. Isso é um trabalho enorme para todos os sprites do jogo (tem muitos) e o resultado não fica 100% bom como o original.
O que estou fazendo de errado? No GM8 esse comando do alpha com sprite extra fica ruim mesmo? Como resolver isso?
É bug no GM 8??
Valeu!!!
Re: Problema com alpha no GM8. sprite_set_alpha_from_sprite tem bug???
Olha, eu até achei que ficou melhor sem o brilho mas também tem como fazer isso direto do editor de imagens do GM.
No editor vá em Images -> Set Alpha from File e teste aquelas opção do lado da janela "Make Opaque" ou "Smooth Edges", talvez o resultado fique igual agora além de diminuir o tamanho do jogo.
No editor vá em Images -> Set Alpha from File e teste aquelas opção do lado da janela "Make Opaque" ou "Smooth Edges", talvez o resultado fique igual agora além de diminuir o tamanho do jogo.
Re: Problema com alpha no GM8. sprite_set_alpha_from_sprite tem bug???
Será que não é porque você está aplicando o alpha 2x?
Se você está usando o sprite com alpha channel e depois aplicando uma sprite de alpha eu acho que acaba somando e deixa o "brilho" muito fraco.
Tente usar apenas uma imagem com aplha channel, sem usar o comando
sprite_set_alpha_from_sprite.
(Nunca tinha visto esse comando o_o)
Se você está usando o sprite com alpha channel e depois aplicando uma sprite de alpha eu acho que acaba somando e deixa o "brilho" muito fraco.
Tente usar apenas uma imagem com aplha channel, sem usar o comando
sprite_set_alpha_from_sprite.
(Nunca tinha visto esse comando o_o)
Janx- Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios :
x 0 x 0 x 0
x 0 x 2 x 0
x 0 x 0 x 0
Re: Problema com alpha no GM8. sprite_set_alpha_from_sprite tem bug???
Hmmm usando pelo comando do editor de sprites parece que fica melhor... vou fazer uns testes mas acho que melhorou! Estranho por código ficar diferente do comando no editor... ainda há algum mistério.
E Janx, sim quando eu uso png não uso mais o comando, senão seria redundante.
Valeu as respostas! Vou ver se consigo resolver o problema.
E Janx, sim quando eu uso png não uso mais o comando, senão seria redundante.
Valeu as respostas! Vou ver se consigo resolver o problema.
Re: Problema com alpha no GM8. sprite_set_alpha_from_sprite tem bug???
Ups... mas se for um sprite animado?
Ex: tenho 1 sprite animado com 2 subimages. Quando vou no edit e mando salvar um png e ele cria um strip, uma imagem no lado da outra.
Então quando pego outro sprite com 2 subimages e tendo aplicar o alpha (esse que salvei png antes) usando o Images -> Set Alpha from File, ele não entende que são 2 subimages e coloca tudo encolhido em cada imagem para recortar...
Precisaria que cada subimage do alpha fosse aplicado em cada subimage na imagem normal...... Se isso não der certo com subimage ai estou perdido... grande maioria dos meus sprites tem animação.......
O único jeito é via o comando sprite_set_alpha_from_sprite, que aplica o alpha direito, respeitando as subimages, mas o recorte fica ruim como falei antes...
Ex: tenho 1 sprite animado com 2 subimages. Quando vou no edit e mando salvar um png e ele cria um strip, uma imagem no lado da outra.
Então quando pego outro sprite com 2 subimages e tendo aplicar o alpha (esse que salvei png antes) usando o Images -> Set Alpha from File, ele não entende que são 2 subimages e coloca tudo encolhido em cada imagem para recortar...
Precisaria que cada subimage do alpha fosse aplicado em cada subimage na imagem normal...... Se isso não der certo com subimage ai estou perdido... grande maioria dos meus sprites tem animação.......
O único jeito é via o comando sprite_set_alpha_from_sprite, que aplica o alpha direito, respeitando as subimages, mas o recorte fica ruim como falei antes...
Re: Problema com alpha no GM8. sprite_set_alpha_from_sprite tem bug???
Parece que o comando sprite_set_alpha_from_sprite não pode ser "desfeito", então não sei como poderia fazer isso que você quer.
No primeiro post, a segunda imagem é usando uma sprite PNG com alpha channel ou usando o comando sprite_set_alpha_from_sprite?
Você tambem pode tentar desenhar o sprite usando image_blend.
Veja esses links:
Exemplo de Blend
Dúvida sobre blend
Tutorial + Engine : Cosmos, Ki, aura + blend etc (Fireworks
No primeiro post, a segunda imagem é usando uma sprite PNG com alpha channel ou usando o comando sprite_set_alpha_from_sprite?
Você tambem pode tentar desenhar o sprite usando image_blend.
Veja esses links:
Exemplo de Blend
Dúvida sobre blend
Tutorial + Engine : Cosmos, Ki, aura + blend etc (Fireworks
Janx- Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios :
x 0 x 0 x 0
x 0 x 2 x 0
x 0 x 0 x 0
Re: Problema com alpha no GM8. sprite_set_alpha_from_sprite tem bug???
Na segunda imagem é igual o que foi usado no GM7 (só abri o projeto no GM8) usando o comando sprite_set_alpha... etc.
Por isso estranhei tanto essa diferença de resultado em algo que deveria ser o mesmo.
O image_blend até funciona em coisas com brilhos, mas tenho outras desenhas de sprites com animação normal, sem ter brilho.
Bem um jeito que funcionou de aplicar o comando do editor de sprite em algo animado é esse: (nada muito prático mas deu certo!)
Exporta o sprite de cor como um png (função do GM8)
Exporta o sprite de alpha como um png
Cria um sprite novo (temporário) e carrega o sprite de cor sem ser strip, só como sendo uma imagem normal (tem que remover o "_strip*num*.png" do nome do arquivo, para ele não querer ler como se fosse strip animado.
Então aplica ai o set alpha do editor de sprite. Como não tem subimage vai ficar direito. Então salva isso como png, que já será o sprite animado com alpha pronto.
Por fim basta carregar esse novo png como strip (renomeia o arquivo de novo) e deu! Mas perde a posição do pivot de antes, tem que anotar e re-colocar.
É uma mão... mas funciona...
Por isso estranhei tanto essa diferença de resultado em algo que deveria ser o mesmo.
O image_blend até funciona em coisas com brilhos, mas tenho outras desenhas de sprites com animação normal, sem ter brilho.
Bem um jeito que funcionou de aplicar o comando do editor de sprite em algo animado é esse: (nada muito prático mas deu certo!)
Exporta o sprite de cor como um png (função do GM8)
Exporta o sprite de alpha como um png
Cria um sprite novo (temporário) e carrega o sprite de cor sem ser strip, só como sendo uma imagem normal (tem que remover o "_strip*num*.png" do nome do arquivo, para ele não querer ler como se fosse strip animado.
Então aplica ai o set alpha do editor de sprite. Como não tem subimage vai ficar direito. Então salva isso como png, que já será o sprite animado com alpha pronto.
Por fim basta carregar esse novo png como strip (renomeia o arquivo de novo) e deu! Mas perde a posição do pivot de antes, tem que anotar e re-colocar.
É uma mão... mas funciona...
Tópicos semelhantes
» Problema geral de alpha
» Alpha no GM 5.3a
» Alpha Space[.gmk]
» [CQ#21] Run For Music - Alpha 2.5.1
» Alpha dos sprites
» Alpha no GM 5.3a
» Alpha Space[.gmk]
» [CQ#21] Run For Music - Alpha 2.5.1
» Alpha dos sprites
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos