Como posso obter a grama do PagedGeometry para receber sombras?

23

Eu mudei para o Ogre3D (v1.7) e para usar o PagedGeometry . O que estou tentando fazer é fazer uma cena simples com um terreno, algumas árvores e grama. Em poucas palavras, gostaria de obter esse tipo de efeito no Ogre:

Sombras de recepção de grama

Sombras transparentes / recortadas são implementadas nas demos do PagedGeometry, mas não consigo encontrar nenhuma solução sobre como projetar sombras adequadamente na grama, como no exemplo acima.

Que técnica posso usar para fazer isso?

scottyp
fonte
1
Que tipo de material / shader a grama está usando? Para o sombreamento para trabalhar as grama de sombreamento precisa ler o shadowmap (s) e fazer cálculos sombras baseado nesta ...
VB_overflow
1
Aprecie sua entrada neste @VB_overflow, mas um comentário com uma solução ou exemplo real de código realmente ajudaria. De qualquer forma, mudei para um mecanismo melhor com uma funcionalidade incorporada que oferece esse recurso. Talvez isso ajude outros entusiastas do Ogro que estão no mesmo barco comigo, como mostra os votos positivos aqui.
Scottyp
1
Se forem outdoors, eles tendem a parecer um pouco estranhos quando você tenta fazer sombreamento por pixel neles. Você pode usar uma grama que pareça uma espécie de plano alongado e torcido. A textura fará com que pareça grama. Depois disso, a malha deve poder receber mapas de sombra.
usar o seguinte
Esta postagem descreve (e resolve) o seu problema? ogre3d.org/addonforums/14/t-8945.html
Tim Holt

Respostas:

3

Esta não é a minha resposta, mas uma referência ao que acredito ser a solução para a pergunta.

A postagem para a qual estou ligando abaixo (intitulada "árvores e sombras da geometria paginada") descreve diretamente a solução do problema de colocar sombras de árvores na grama com geometria paginada. Envolve especificamente chamar m_sceneMgr-> setShadowTechnique (SHADOWTYPE_TEXTURE_ADDITIVE) com um sombreador personalizado para as sombras.

https://www.ogre3d.org/addonforums/14/t-8945.html ou versão Archive.org .

Este tutorial também faz referência a geometria paginada, árvores, grama e sombras. Aplica um mapa de luz à grama, use a função setColorMap ().

https://ogrecave.github.io/ogre-pagedgeometry/tut3.html ou versão Archive.org . Aplica especificamente um mapa de luz à grama, use a função setColorMap ().

Tim Holt
fonte
Essa resposta seria melhor se você pegar os detalhes relevantes dos sites aos quais está vinculando e os resumir no corpo da resposta em si. Como estão as coisas, se os links quebrarem, a resposta ficará completamente desprovida de informações úteis.
DMGregory
1
Pensei em incluir o conteúdo das postagens, mas não queria apenas duplicar o conteúdo de alguém e chamá-lo de resposta. As soluções também são um pouco pesadas em código, e citá-las envolveria muito conteúdo copiado, o que novamente não é minha criação. Também considerei instalar o Ogre e tentar duplicá-lo, mas isso dá muito trabalho para alguns pontos de repetição. Independentemente, acho que esses links ajudariam o OP e qualquer outra pessoa que tentasse resolver esses problemas. Eu acho que para evitar links mortos posso apontam para a versão archive.org ...
Tim Holt