Generación procedural de ciudades
Supervisor(es): Fernández, Eduardo - Aguerre, José Pedro
Resumen:
La generación procedural es una herramienta para generar contenido de forma algorítmica. Partiendo de axiomas iniciales y mediante la aplicación de reglas de producción se generan grandes cantidades de datos automáticamente. Abarca un amplio espectro de aplicaciones, como son los sistemas L, funciones de ruido, funciones fractales o cadenas de Markov. Cada aplicación es diseñada para resolver problemas concretos. La generación procedural se utiliza para generar una variedad de contenido, como modelos tridimensionales, texturas, terrenos, sonido o nombres. En este proyecto se busca generar el modelo tridimensional de una ciudad aplicando una implementación de “CGA Shape Grammar”, una gramática de formas diseñada para generar edificios. La gramática tiene como alfabeto prismas de base rectangular con nombre, que describen el volumen que ocupa una forma. Los volúmenes iniciales de cada edificio forman el axioma y las reglas de producción describen cómo se subdivide el volumen de cada forma en formas más pequeñas. Se implementa un motor de reglas que interpreta y ejecuta reglas de producción en C++. Estas reglas pueden contener elementos aleatorios, por lo que el resultado puede variar de ejecución en ejecución. Tiene como parámetros el conjunto de reglas, los volúmenes iniciales y cómo se dibujarán las formas, todos definidos en archivos XML. Produce como resultado el modelo de una ciudad que puede explorarse interactivamente en OpenGL o visualizarse con otras herramientas mediante un archivo OBJ. Se explora también una extensión de la gramática para incluir una implementación de niveles de detalle, de manera de poder aplicar diferentes reglas según el nivel de detalle deseado.
2018 | |
Generación procedural Modelado procedural Gramática de formas Generación de edificios |
|
Español | |
Universidad de la República | |
COLIBRI | |
http://hdl.handle.net/20.500.12008/20042 | |
Acceso abierto | |
Licencia Creative Commons Atribución – No Comercial – Sin Derivadas (CC - By-NC-ND) |