Sombras complementares fazem sentido para jogos?

33

De acordo com a teoria das cores , as sombras funcionam melhor se não usarem pretos ou cinzas puros, mas usar uma cor complementar à cor do objeto que projeta essa sombra.

Ou seja, se você tem uma maçã vermelha, use uma sombra verde escura; para uma banana amarela, uma sombra violeta escura.

exemplos complementares de sombra

Mas em muitos jogos, nem sempre é possível prever em que tipo de plano de fundo ou ambiente a sombra aparecerá, e você pode não ter o luxo de ter cores dinâmicas da sombra. Nesses casos, ainda faz sentido usar sombras complementares ou um preto ou cinza neutro é aceitável?

congusbongus
fonte
Você tem em mente 2D ou 3D?
Kromster diz apoio Monica 08/09
@KromStern 2D, mas como só consigo pensar em implicações técnicas - estou fazendo uma pergunta de design - estou curioso sobre a diferença que isso faz, que você tinha em mente.
congusbongus 8/09/14
Não, não tenho um plano em mente. Se for 2D, é mais fácil testar no Photoshop lançando vários sprites com sombras semitransparentes.
Kromster diz apoio Monica 08/09
Mesmo se fosse possível fazer isso, vale a pena a complexidade (código e tempo de execução)? É bom usar apenas uma sombra preta (que é rápida / barata em relação a uma sombra complementar)?
ashes999
Se você está fazendo um jogo 2D, provavelmente tem a sombra como apenas outro sprite (ou mesmo parte do sprite original), certo? Nesse caso, provavelmente não há muita diferença entre ter uma sombra preta combinada com alfa ou uma sombra levemente colorida combinada com alfa. Mas você terá que tentar isso, é claro.
Luaan 8/09/14

Respostas:

43

Para mim, não faz nenhum sentido. Essa teoria é provavelmente apenas uma sensação artística de compensação de balanço de branco que o olho faz, e erroneamente nos dá a sensação de tons alterados nas sombras. Uma sombra é apenas a ausência de luz da fonte de luz considerada. Muitas vezes, existem outras fontes de luz em um mundo realista; essa é a cor que entra no lugar. Por exemplo, azul, frequentemente, sob condições de céu claro. Qual é o que a teoria à qual você se vincula está declarando erroneamente como uma verdade absoluta, sem entender por que e em que condições. Sombras na iluminação interior não são azuis, obviamente.

Enquanto a "cor local" da teoria à qual você se vincula não é mais do que o IG local e o sangramento de cores. O que é abordado normalmente pelo RSM e similares. (LPV em melhor medida).

Minha resposta é definitiva, não faz sentido para jogos. Se você tiver um renderizador realista, será suficiente por si só. Especialmente se ele apresentar GI em tempo real (rastreamento de cone SVO, LPV, RSM ..) ou GI colorido com mapa de luz (é preferível fisicamente baseado e é claro que toda a gama de pipeline está correta) ou / e IBL.

Agora, por considerações artísticas, o último ponto "cores complementares" pode ter significado nos jogos, se você quiser o que chamamos de "renderizador estilizado" ou renderização não foto-realista. Para aumentar o "drama" ou tender ao estilo de desenho animado ou estilo aquarel; isso permitiria que você desse um toque especial ao seu jogo. Mas repito, do ponto de vista físico, não faz sentido o que eu disse na minha primeira frase: esse deve ser um sentimento natural dos artistas em sua posição de observador da natureza, que resulta da compensação do balanço de brancos.

v.oddou
fonte
13
Seu ponto principal parece ser que sombras complementares não são naturalistas . Mas não há razão para que os jogos (ou outros gráficos renderizados) tenham que ser naturalistas: por exemplo, alguns mecanismos fornecem aos objetos fortes contornos semelhantes aos desenhos animados . Portanto, não parece loucura tentar obter sombras complementares ou outros efeitos estéticos ao longo dessas linhas - apesar de como seriam os detalhes e se valeria a pena o tempo e o esforço certamente não são claros.
PLL
15
@PLL Esse é um bom argumento. No entanto, isso significa que você está tentando criar uma renderização estilística que se aproxime de algum tipo de estilo de pintura - nesse caso, não faria muito sentido fazer a pergunta do OP - ou você está tentando aproximar isso e nesse sentido. Nesse caso, a única questão é se você é capaz de fazer isso ou se está buscando algum tipo de realismo; nesse caso, é importante entender que isso não é de fato realista - apenas esteticamente agradável (e obviamente muito subjetivo).
Luaan 8/09/14
@Luaan: Obviamente, fazer a pergunta fazia sentido para a OP, caso contrário ele não a faria. Enfim, foi uma pergunta muito interessante, que foi votada 27 vezes e favorita 7 vezes.
HelloGoodbye
1
@HelloGoodbye Você não entendeu meu comentário. Eu disse que se o OP quer renderização realista, ele não precisa se preocupar com isso, porque não é realista. Se ele pretende ser esteticamente agradável, por outro lado, ele só se importa se pode ou não fazer isso - em ambos os casos, sombras não complementares são suficientes porque sombras realistas não usam cores complementares. Eu não estava atacando a questão, eu realmente upvoted-lo como bem :)
Luaan
@ Luuan: Ok, desculpe pelo mal-entendido nesse caso. Mas eu não entendo o seu ponto; se ele quer saber se pode desenhar sombras complementares ou não, como isso o ajuda a dizer que sombras não complementares são suficientes?
HelloGoodbye 10/09/14
14

Para sombras projetadas, não funciona muito bem pelos motivos que você já declarou. Você nunca sabe quantas sombras projetadas terão na cena e sombras de cores diferentes de objetos diferentes podem parecer estranhas. No entanto, ele pode funcionar bem para auto-sombras, especialmente em um jogo 2D. Esta captura de tela é de Seiken Densetsu 3 (Squaresoft 1995):

Árvore com sombra complementar roxa

Observe como as partes sombreadas da árvore usam violeta como uma cor complementar aos destaques amarelos nas partes iluminadas e quão bem ela funciona. Mas observe também que o artista decidiu não colorir a sombra da árvore.

Philipp
fonte
2
Tsugumo coberto isso em um grande tutorial pixelart
Kelly Thomas
@KellyThomas Foi daí que obtive a captura de tela.
Philipp
1
Pessoalmente, este: gamedev.net/page/resources/_/creative/visual-arts/… é o artigo que eu tinha em mente quando escrevi minha resposta. Eu recomendo, ótima leitura introdutória.
precisa saber é o seguinte
Como escrevi em um comentário para a pergunta, sua resposta, especialmente a imagem, lembrou-me de este modelo de iluminação não-fotorrealista
hellogoodbye
9

Se você usar a mistura alfa, poderá criar uma sombra complementar que funcione em qualquer plano de fundo.

Pode ou não ser melhor ou mais rápido. É provável que isso mude dependendo do seu jogo específico.

Não tenho representante suficiente para comentar a resposta de @ v.oddou, mas quero dizer que, embora fazer sombras propositadamente complementares não faça sentido em uma renderização de simulação de realidade, em jogos há muitos casos em que pode fazer sentido. Como o exemplo dele sendo feito para efeito artístico.

Eben
fonte
5

Os objetos raramente são iluminados inteiramente por uma fonte de luz pontual. Na maioria dos casos, os objetos receberão grande parte de sua iluminação de uma fonte pontual dominante, mas receberão iluminação adicional de outro ponto ou fontes, incluindo alguma luz difusa que foi espalhada por outros objetos ou (para cenas ao ar livre) pela atmosfera. Se um objeto for iluminado por uma fonte de ponto branco brilhante, mas for iluminado por uma luz ambiente azulada com apenas 2% de brilho, a cor da luz ambiente não afetará visivelmente as partes do objeto iluminadas pela fonte principal. fonte pontual, mas será muito visível nas partes que são iluminadas principalmente pelo ambiente azulado.

Em alguns contextos, pode fazer sentido acompanhar a cor da luz ambiente e fazer com que as sombras sejam levemente tingidas como consequência dela, mas não vejo uma razão para fazer objetos projetarem sombras cujas cores são os complementos da cores do objeto.

supercat
fonte
3

A coisa complementar da cor é realmente ilusória. Coloque um limão em um papel branco e fotografe-o. A sombra ficará amarela, não roxa, devido à dispersão da luz amarela do limão.

Agora, sobre a questão de usá-lo no seu jogo. Se você estiver adotando um estilo artístico, certamente poderá incluí-lo, embora seja necessário algum código adicional de shaders para implementá-lo (o que você pode acabar fazendo de qualquer maneira, dependendo da sofisticação que você está criando). sistema de renderização não foto-realista).

Se, por outro lado, você está buscando um estilo realista, não se preocupe.

Rohan
fonte
1

Não seria um pouco estranho ver as coisas em uma fileira de cores diferentes, com sombras coloridas diferentes?

Para mim, a imagem das várias frutas não se parece com três pedaços de frutas em um fundo branco; parece 3 fotos diferentes de frutas, provavelmente porque a sombra de cor diferente indica que elas estão em um contexto diferente.

Ouso dizer que isso é subjetivo, mas acho um pouco questionável - eu também concordaria com o que o v.oddou diz, embora isso assuma que você está tentando fazer com que as coisas pareçam 'realistas'.

É claro que o outro jiob de sombras é dar uma dica de quão alto é a superfície de um objeto. Sem sombra = você não pode dizer se é 1 para acima ou 40 pés (ou quaisquer que sejam as unidades). Se houver uma sombra de qualquer tipo, seu cérebro fará o cálculo para você e você adivinhar quando um objeto saltará ou se é possível executá-lo etc. Para essa função, acho que apenas uma sombra em escala de cinza misturado com a cor de fundo, se possível, faria o truque.

Há também o efeito natural estranho quando há mais de uma fonte de luz, de cores diferentes. Se você tivesse algumas luzes coloridas dando basicamente uma mistura de luz branca, o fundo sem sombra daria uma mistura de todas as cores, mas se houver um bloqueio de sombra como a luz azul, a sombra poderá parecer relativamente avermelhada.

Mesmo na realidade isso parece um pouco estranho! Portanto, minha resposta seria: embora seja uma noção interessante e possivelmente valha a pena experimentar em algumas imagens estáticas (ou encontrar exemplos), eu esperaria descobrir que não vale a pena fazer um esforço para calcular a cor da sombra.

user2808054
fonte
1

Eu considerei fazer isso antes para um renderizador NPR, pois tenho experiência em artes visuais e sempre amei a aparência de certos tipos de obras de ficção científica e fantasia populares que exageraram esse efeito, mas, como outros observaram, não faz sentido para a física ponto de vista. Não há como você ter luz azul em uma sombra, a menos que algo esteja refletindo a luz azul nela.

Mas se você optar por um renderizador não-realístico, o efeito pode ser muito bonito com os tons contrastantes (embora de maneira pictórica, não realista). Dito isso, sugiro usar a cor da (s) fonte (s) de luz que estão sendo excluídas para colorir a sombra, não o material do objeto que oclui a luz. Isso deve simplificar o cálculo e ainda vincular todos os elementos da composição. Por exemplo, uma luz quente de uma lareira pode projetar uma sombra azul fria quando a fonte de luz é obstruída, mesmo que não haja objetos azuis que reflitam a luz naquela sombra e muito menos luz azul em primeiro lugar.

A segunda coisa a observar é que a roda de cores do artista se baseia na natureza subtrativa da mistura de pigmentos. Não é baseado em cores claras complementares. Como resultado, a roda de cores do artista considera, por exemplo, verde uma cor complementar ao vermelho:

insira a descrição da imagem aqui

... não ciano, e misturar esses dois pigmentos resultaria em uma feia cor marrom / cinza, não branca como seria com a mistura aditiva de luz. Da mesma forma, o complemento de azul seria laranja em vez de amarelo, e assim por diante. Para emular a aparência de forma eficaz, provavelmente seria necessário usar esse tipo de roda de cores.


fonte
0

Essa pergunta é muito antiga e tem muitas respostas, mas eu fui para a faculdade de arte. Aqui está a minha resposta:

A teoria como você a declarou, de acordo com o meu conhecimento, é apenas parcialmente correta. Na realidade, a cor das sombras é o complemento da cor da fonte de luz . Se você pensar sobre isso, faz sentido: uma sombra projetada pode ser definida como luz bloqueada e, se você tem uma luz amarela (o sol), ficará com uma sombra azulada. Para ilustrar esse ponto, considere "The Green Stripe", de Matisse (alguém que pode ser chamado de "um dos antigos mestres" ou o que for):

link para os resultados de pesquisa de imagens do google para "The Green Stripe".

Por favor, note como a luz vermelha, que está sendo lançada a partir do lado direito do quadro, deixa uma escura esverdeada sombra núcleo e uma amarelada refletido destaque . Verde é o complemento de magenta e amarelo é a soma ou verde e vermelho (teoria da cor aditiva).

Lembre-se de que a teoria como você afirma está parcialmente correta! Em casos de close-up de objetos coloridos e refletivos em uma superfície branca, como a imagem que você vinculou à maçã, a luz ambiente na sala está atingindo o lado escuro da maçã e refletindo a cor da maçã na superfície em que descansa. A cor principal da sombra ainda é o complemento da cor da fonte de luz !! Em um ambiente de estúdio (o tipo de lugar onde você encontra maçãs solitárias em superfícies brancas como espaços vazios), sua fonte de luz provavelmente é artificial e o mais próxima possível do branco puro, para que as pessoas que trabalham com cores e pigmentos nesse ambiente não tenham seus entendimentos de cores distorceram devido a uma luz colorida (tente pintar a mesma coisa duas vezes sob a luz do sol e depois em um quarto escuro fotográfico (vermelho)! compare esses resultados, risos).

Agora! Para responder à sua pergunta: sombras dinâmicas ou mesmo apenas sombras estaticamente coloridas são extremamente factíveis. Eles se enquadram no escopo do seu projeto, considerando o tempo, dinheiro e mão de obra necessários? Bem, essa é uma pergunta completamente diferente que você precisa responder por si mesmo !! Sombras cinza / pretas são um SIN (imo) e você deve evitá-las se quiser que seu jogo seja considerado esteticamente agradável. Você não precisa prever o plano de fundo, o ambiente ou a cor do objeto. A única informação necessária para sombras fáceis e naturais é a cor da fonte de luz. Considere esta captura de tela do ataque ao titan: LINK

As sombras do meu jogo são sempre um complemento escuro e desaturado da cor das fontes de luz do meu jogo: RELATIVAMENTE FÁCIL, vários jogos já fazem isso

As sombras do meu jogo levam em consideração a oclusão do ambiente, a luz refletida, a cor de várias fontes e tipos de luz, etc. etc.? Isso já é muito trabalho. Se você é um desenvolvedor independente, cujo foco principal é criar jogos, em vez de programação gráfica ou desenvolvimento de ferramentas, isso não vale a pena (opinião).

Obrigado pela leitura, espero que ajude quem visita este problema antigo no futuro !!! : -)

jodediah holems
fonte