Estou usando sprites do tipo RPG-Maker-XP (qualquer sprite de aventura 2D / estilo RPG). Gostaria de pintá-los para que pareçam diferentes em diferentes momentos do dia.
As horas do dia são o conjunto de:
- Diurno (normal)
- De manhã cedo (azulado?)
- Nascer e pôr do sol (laranja?)
- Noite (escuro)
O que preciso fazer para matizá-los e torná-los com boa aparência, em diferentes momentos do dia? Existem fórmulas "conhecidas" para qualquer um desses momentos, como "excluir o componente verde azul e pintar de vermelho + verde intenso para um efeito do nascer do sol"?
Idealmente, eu tenho apenas os sprites originais, sem informações ou imagens adicionais (como pontos de destaque ou sombras separadas).
Por fim, estou usando o Silverlight / FlatRedBall para isso, por isso tenho acesso a informações por pixel, além de tonalidades RGB (adição, subtração, multiplicação etc.)
fonte
Respostas:
Sugiro que você brinque com o Photoshop (se você o tiver) com sobreposições de cores / camadas diferentes e verifique se não consegue o efeito visual que está procurando. Se você puder encontrá-lo, duplique-o no código.
Se o céu estiver visível, considere a ideia de desaparecer entre duas imagens de fundo diferentes (céu noturno, céu diurno). Se você estiver usando sprites, considere também animar uma lua / sol no céu.
Além disso, dê uma olhada no World of Warcraft (como em jogo). Sim, é 3D e possui um ciclo diurno / noturno dinamicamente iluminado, mas ao mesmo tempo as sombras e a iluminação das coisas são totalmente assadas - as sombras não se movem. É mais parecido com o que você vê nos programas de TV em que eles não filmam à noite, mas filmam durante o dia e aplicam um filtro noturno. De fato, você pode procurar no Google como isso é feito no cinema, pois pode dar algumas dicas.
fonte
Temperatura de cor
Mas, basicamente, é laranja de manhã e à noite. Branco no dia. E o azul é usado para a noite.
Para criar sombras, você pode encontrar um programa útil, crazybump , que pode criar mapas normais para texturas 2D.
fonte
O que você deseja é normalmente chamado de 'mistura de cores'. Há uma postagem no blog sobre como fazer isso no silverlight aqui: http://blogs.silverarcade.com/silverlight-games-101/15/silverlight-blitting-and-blending-with-silverlights-writeablebitmap/
Quanto às cores a serem usadas em diferentes momentos do dia, é uma pergunta muito mais difícil de responder. As cores que você incluiu na sua postagem podem funcionar, mas talvez você precise brincar um pouco com os valores exatos para fazer com que tudo pareça 'bom'.
Vale a pena ressaltar que adicionar sombras aos sprites provavelmente ajudaria muito a melhorar o efeito de alterar a hora do dia.
fonte