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

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1846
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1
Ver perfil do usuáriohttp://willy-gmbr.blogspot.com/

[Engine] - Transição de Cor

em Dom 01 Mar 2015, 23:38
Reputação da mensagem: 100% (1 votos)
Engine – Transição de Cor
Michael Willy – 28/02/2015

Versão: Game Maker Studio
Dificuldade: Fácil

Proposta:
A engine possui uma proposta simples e direta. Fazer uma transição de cores entre a cor primária e a cor secundária. Por exemplo, uma transição entre a cor c_red e c_blue traria esta sequencia de cores em 10 frames:


A cor inicial é a cor atual do objeto, já a cor final é a que você definirá. As cores entre estes dois pontos dependem da velocidade de transição.

Como usar:
Para a engine funcionar, seu projeto deverá incorporar o obj_fade_to e o script scr_fade_to. O objeto que terá a cor resultante armazenada deverá obrigatoriamente declarar a variável "Cor" e definir uma cor inicial conforme demonstrado na engine. Em seguida, basta chamar o script passando dois argumentos: scr_fade_to(NovaCor,VelocidadeDoFade);
Nota: O fade é baseado no valor atual da variável "Cor".
Funcionamento da Engine:
Apenas dois elementos tornam o sistema possível. Um objeto e um script.
O objeto (obj_fade_to) possui em seu create variáveis com valores padrão. Estes valores são atualizados através do script scr_fade_to(NovaCor,VelFade), ou seja, o script funciona como um "construtor de objeto".

Depois de criado, o step deste objeto faz a manipulação da cor usando a função merge_colour(Cor1,Cor2,Montante)*. Este código mistura a cor2 sobre a cor1 de acordo com o montante (no nosso caso, representado por "i"). Graças ao repeat, o valor de i é aumentado 0.01 multiplicado por VelFade, permitindo que uma transição entre 0 e 1 aconteça de forma suave. Conforme o código é executado, a variável "Cor" do objeto que chamou o script é atualizada. Depois de finalizar o processo (quando i é maior ou igual a 1), o objeto é destruído.

*Função não existe no GM8 ou inferior.


Dúvidas, criticas ou sugestões são bem-vindas.
Espero que lhe seja útil!
blz
avatar
Ranking : Sem avaliações
Notas recebidas : B
Data de inscrição : 28/02/2012
Número de Mensagens : 1908
Insígnias de JAM :

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

Prêmios
   : 2
   : 2
   : 1
Ver perfil do usuáriohttp://guitarmester.no.comunidades.net/index.php?pagina=19362978

Re: [Engine] - Transição de Cor

em Seg 02 Mar 2015, 10:28
Olhando o tópico da para ver que é um recurso útil, e, mesmo que não seja difícil de fazer, é sempre bom ter um script já pronto para otimizar o tempo de criação de jogos.


Por exemplo:
Mesmo sabendo fazer o for i, eu sempre aperto F2 para colocar ele já pré feito, e, mesmo sabendo fazer uma procura/separação de letras em uma sequencia/string, eu uso o script do Jiraya como base(i)(claro que eu tenho uma adaptação dele já salva em meu PC).
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