¿Cómo puedo hacer que la hierba PagedGeometry reciba sombras?


23

Hice el cambio a Ogre3D (v1.7) y a usar PagedGeometry . Lo que intento hacer es hacer una escena simple con un terreno, algunos árboles y pasto. En pocas palabras, me gustaría lograr este tipo de efecto en Ogre:

Sombras receptoras de hierba

Las sombras transparentes / recortadas se implementan en las demostraciones de PagedGeometry, pero no puedo encontrar ninguna solución sobre cómo proyectar sombras correctamente en el césped como en el ejemplo anterior.

¿Qué técnica puedo usar para lograr esto?


1
¿Qué tipo de material / sombreador está usando el césped? Para que el sombreado funcione, el sombreador de césped necesita leer los mapas de sombras y hacer cálculos de sombras basados ​​en esto ...
VB_overflow

1
Agradezco su aporte en este @VB_overflow, pero un comentario con una solución de código o ejemplo real realmente ayudaría. En cualquier caso, pasé a un mejor motor con una funcionalidad incorporada que ofrece esta función. Tal vez, ayudaría a otros entusiastas de los ogros que están en el mismo barco que yo, como se muestra con los votos a favor aquí.
scottyp

1
Si se trata de vallas publicitarias, tienden a actuar un poco raro cuando intentas sombrearlas por píxel en ellas. Puede usar un metch de hierba que se parece a una especie de plano alargado y retorcido. La textura hará que parezca hierba. Después de eso, la malla debería poder recibir mapas de sombras.
moonshineTheleocat

¿Esta publicación describe (y resuelve) su problema? ogre3d.org/addonforums/14/t-8945.html
Tim Holt

Respuestas:


3

Esta no es mi respuesta, sino una referencia a lo que creo que es la solución a la pregunta.

La publicación que estoy enlazando a continuación (titulada "árboles y sombras de geometría paginada") describe directamente la resolución del problema de poner sombras de árboles en el césped con geometría paginada. Implica específicamente llamar a m_sceneMgr-> setShadowTechnique (SHADOWTYPE_TEXTURE_ADDITIVE) con un sombreador personalizado para las sombras.

https://www.ogre3d.org/addonforums/14/t-8945.html o la versión Archive.org .

Este tutorial también hace referencia a geometría paginada, árboles, césped y sombras. Aplica un mapa de luz al césped, use la función setColorMap ().

https://ogrecave.github.io/ogre-pagedgeometry/tut3.html o la versión Archive.org . Aplica específicamente un mapa de luz al césped, use la función setColorMap ().


Esta respuesta sería mejor si toma los detalles relevantes de los sitios a los que se vincula y los resume en el cuerpo de la respuesta. Tal como están las cosas, si los enlaces alguna vez se rompen, la respuesta quedaría completamente desprovista de información útil.
DMGregory

1
Pensé en incluir el contenido de las publicaciones, pero no quería duplicar el contenido de alguien y llamarlo una respuesta. Las soluciones también son un poco pesadas en el código, y citarlas implicaría una gran cantidad de contenido copiado, lo cual, nuevamente, no es mi creación. También consideré instalar Ogre e intentar duplicarlo, pero eso es mucho trabajo para algunos puntos de repetición. Independientemente, creo que esos enlaces ayudarían al OP, y a cualquier otra persona que intente resolver esos problemas. Supongo que para evitar enlaces muertos, puedo vincular a la versión de archive.org ...
Tim Holt
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.