Tenemos un área rectangular con paredes translúcidas y unos pocos sources.We luz están considerando sólo la vista superior, por lo que es un problema 2D. Necesitamos encontrar la iluminación aproximada (intensidad de la señal) en cada punto del área.¿Algoritmo de iluminación 2D rápido?
Tenemos que hacer que el algoritmo muy rápido. El método de la fuerza bruta fue demasiado lento para nuestros propósitos. Puede suponer que todas las paredes se atenúan en la misma cantidad, incluso una cantidad constante de atenuación es aceptable.
la zona sería en la mayoría de 1000x1000, y no sería de más de 100 fuentes de luz. Las fuentes de luz pueden tener un rango de aprox. 50-100 unidades (no son infinitas). Los algoritmos más rápidos pero aproximados son bienvenidos.
¡Gracias de antemano!
Lo que intenté fue básicamente el método de fuerza bruta: comparando cada punto de muestra con cada pared y fuente de luz para determinar su luminosidad. Obviamente, es O (n^3) e inaceptablemente lento.
Por tiempo no quise decir ningún límite específico: pero sería bueno hacer toda la imagen dentro de 100ms o más rápido. Recuerde, no requiero precisión tanto como la velocidad.
¿Qué has intentado hasta ahora? –
¿qué velocidad necesita un único punto y qué velocidad para todos los puntos en la imagen 2d? velocidad significa tiempo, ej. milisegundos ... –