Aquí os dejo un proyecto que he comenzado mientras comía :P se trata de un ejemplo de cómo usar mapas png con colores de forma que, asociada a cada posición en el escenario, se obtenga el color del pixel del mapa de nieblas y la niebla tome ese color.
¿Para qué sirve una cosa tan rara? Pues nos permite tener, además del mapa de terreno un mapa de colores para que ciertas zonas, como por ejemplo las elevadas, las selváticas o las más oscures tengan diferentes colores e intensidades de niebla. Supongo que os habréis fijado que en World of Warcraft a medida que avanzas por el mapa la niebla cambia, volviéndose negra cerca de las industrias goblin, verde cuando hay mucha vegetación, rojiza en el desierto... Pues bien, aquí tenemos una forma sencilla de lograrlo, os dejo unas screens:
(http://trinit.es/DescargaDirecta/Bennu3D/Niebla3D/19.01.10a.png)
(http://trinit.es/DescargaDirecta/Bennu3D/Niebla3D/19.01.10b.png)
DESCARGAR: http://trinit.es/DescargaDirecta/Bennu3D/Niebla3D/Niebla3D%200.0.0.zip (http://trinit.es/DescargaDirecta/Bennu3D/Niebla3D/Niebla3D%200.0.0.zip)
Juer, como mola, niebla volumétrica, según tengo entendido esto consume un montón de CPU y no se ha usado hasta la actual generación de consolas. ¿Tu sistema necesita tanta máquina?
De todas formas, un efecto espectacular que merece karma, sólo por alegrarnos la vista (y es que encima compartes código, si señor :)).
El consumo de CPU no es significativo, al menos yo no he notado nada. Con Bennu 3D si no pones niebla las cosas muy lejanas aparecen "de golpe", por lo que yo siempre pongo niebla, en mayor o menor medida.
Tengo que añadir alguna mejora adicional, porque pienso usar este módulo en todo nuevo juego 3D, subiré nueva versión en cuanto la tenga :P
Un momento, ¿pero entonces es la típica niebla de fondo o se puede poner determinadas zonas con más niebla de lo normal, como si fueran nubes?
Es la típica niebla de fondo, pero permite cambiar de color e intensidad según la zona del mapa "suavamente".
La niebla en sectores, humo y cosas así ya son emisores de partículas, que son fáciles de usar, pero difíciles de parametrizar bien para conseguir un resultado bello.
cuando carga el color desde un PNG... quiere decir que se podria hacer una niebla con texturas en PNG? o que solo lee el color dependiendo del "pixel" en el que estarias parado?
Es cada dia mas tentador esto del 3D en Bennu...
Sólo carga la niebla de un color, el del pixel del mapa de nieblas, sea el que sea.
Para tener una niebla texturizada habría que usar emisores de partículas, es un tema que todavía no he tocado a fondo por falta de tiempo (Y de documentación sobre todo ya que la estoy haciendo yo prácticamente :P).
se ve genial :) karma++