Hacer una ciudad real en Blender es posible, pero extremadamente laborioso. Por muchas ganas que tengas, según tu objetivo, puede que no salga a cuenta. Sin embargo, hay herramientas que pueden tomar ciudades ya creadas, incluidas las texturas reales. A continuación os voy a mostrar dos métodos: uno fácil pero limitado y otro más laborioso pero con mejores resultados.
Método sencillo
En OpenEarthOnline, descárgate EarthDataDownload. Esta es una manera sencilla pero limitada porque tan solo te permite una sola captura gratis de hasta 500 m2 (en teoría) y tan solo está disponible para Mac y Windows. Si estás dispuesto a pagar, adelante, pero si no, ten en cuenta que en ese espacio caben unos pocos edificios no muy grandes. Además requiere cuenta, pero no es exigente con el correo que le des. Uno desechable es perfectamente viable.
En Tools, dentro de Export raw to Blender, en RawGlbs Dir seleccionamos la carpeta donde está el archivo que nos hemos descargado antes y en Export to Dir, a la carpeta de destino. Pulsamos a Export.
Método laborioso
- Windows
- Blender 4.1 (o última versión indicada en Github) en inglés. El idioma de Blender solo es importante en la importación, que es el último paso.
- Chrome. Última versión.
-
Renderdoc 1.31 o anterior para Blender 4.1.
-
MapsModelsImporter
v0.7.0 para Blender. Este es esencial.
En la página de Github del complemento de Blender especifica las versiones de RenderDoc y Blender compatibles, ya sea porque tienes una versión más antigua o por si el complemento se actualiza.
Empezamos abriendo la versión necesaria de Renderdoc. Si nos pide
actualizar, lo ignoramos. En Tools, pulsamos en Settings. En la
ventana que se abrirá, seleccionamos la casilla de
Enable process injection (restart required). Al reiniciar el programa,
pulsamos sobre File e Inject into process. Se abrirá una pestaña
con dicho nombre, letras rojas que dicen
Note: injection must happen inmediately after the process stars,
before any graphics API has been initialized. Abajo se verán los procesos actuales. Dejamos esta ventana abierta porque
nos servirá luego.
Pulsando el botón de Windows (entre Ctrl y Alt) y R, nos saldrá la ventana de Ejecutar. Ponemos "cmd" y aceptar. También podemos buscar "cmd" en la barra de inicio y pulsar el Símbolo del sistema. Ambos llegan al mismo sitio. Lo que hace falta es que copies esta línea y la pegues ahí. Importante: ¡No aceptes aún la ventana que te aparecerá luego!
set RENDERDOC_HOOK_EGL=0La segunda línea tan solo deberías cambiarla si tienes Chrome en otra localización. Si no cuál es, si tienes el icono de acceso directo del navegador, púlsalo con el botón derecho del ratón y selecciona Abrir ubicación del archivo. En la carpeta que se abrirá se verá en un formato similar ("C:\Program Files...").
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-gpu-sandbox --gpu-startup-dialog --disable_direct_composition=1
Entonces se abrirá dos ventanas de Chrome, una donde no aparece nada, y otra
pequeña con el mensaje Gpu starting with pid: [Número].
¡No lo cierres aún! Ve a Renderdoc y,
en la Pestaña de Inject into Process, busca "Chrome" y selecciona aquel que
ponga "Google Chrome Gpu" (doble clic o inject), cuyo número coincidirá con el
de la pequeña ventana que no debías cerrar. El número cambia cada vez que lo
haces. Si ves que tienes que repetir esto varias veces, vuelve al paso anterior.
Ahora puedes cerrar la ventana pequeña de Chrome. En la grande, que estaba en blanco, te diriges a Google Maps o Google Earth (Web). Es importante que esté activa la vista 3D. Dirígete al lugar que quieras capturar. En Google Maps, presiona Impr Pant (Capturar pantalla) mientras mueves lo que vas a capturar (clic y arrastra a los lados). En Google Earth no hace falta mover nada, tan solo pulsar Impr Pant.
Mientras lo hagas, en el código te saldrá el número de capturas que hayas
tomado y, en Renderdoc, en la pestaña que habíamos abierto, saldrán las
imágenes. Si la captura es buena, puedes hacer doble clic en una ySelecciona
las imágenes, clic derecho con el ratón y guardar (Save All) como archivo
.rdc.
Rojo: cambiar idioma. Amarillo: Instalar complemento externo. |
Ahora es cuando abres Blender. Antes que nada, asegúrate que está en inglés. Puedes cambiarlo en Editar>Preferencias>Interfaz>Traducción y elegir Inglés (English). Para volver a ponerlo en español cuando termines, el proceso es el mismo, pero seleccionas Spanish (Español) que está justo debajo. En esas mismas preferencias, en Complementos, pulsas Instalar/Install para instalar el archivo de MapsModelsImporter que te has descargado y descomprimido.
Una vez hecho, podrás importar los archivos en File>Import>Google Maps Capture (.rdc). Si lo has capturado bien, Blender está en inglés y ha cumplido todos los requisitos, tendrás el modelo 3D de la parte que hayas capturado junto con las texturas. Cuando más cerca la hayas tomado, más detallado será. De lejos, capturarás más, pero habrá más edificios deformes.
La ciudad entera, pero los edificios de cerca son deformes. |
Tarda unos segundos en cargarse. Te recomiendo tener preparada una carpeta
para guardar todos los elementos que importes. Cuando importes, en la ventana
que se abra, en Max Blocks, aumenta el número a, por ejemplo, 200. Además, presta atención porque, incluso cuando algo falla, se te puede guardar una carpeta con archivos donde tengas el archivo .rdc.
Con acercarse un poco, ya va aumentando mucho el detalle. |
Para usar esto, te recomiendo paciencia y tomar muchas capturas. Puede
que haya alguna parte de todo el proceso que no te salga un día y otro sí. De
las capturas, puede que te funcionen unas pocas o te salgan y, de primeras, no
tengas el resultado esperado.
El método que funciona con Google Earth Pro
Ninja Ripper es un programa que captura los entornos y personajes tridimensionales de los videojuegos, pero también sirve para Google Earth Pro. En este caso, no hablo de la web, sino del programa. El propio programa incluye el complemento para Blender, aunque hay que buscarlo e instalarlo.
Ninja Ripper es un programa de
Windows que se obtiene pagando 5$ en Patreon o Boosty. Hay versiones antiguas
rondando varias webs pero contienen errores no corregidos, pueden ser fuente
de virus o no funcionar en versiones más modernas de Direct X. Por ejemplo, la
versión 2.0.5 es la última que no te pide una cuenta, pero necesitas Blender
2.78 del 2016 para que funcione.
El proceso de instalación es el clásico de todos los programas. El
complemento de Blender se encuentra en la carpeta "importers" de "Ninja
Ripper"
en "Archivos de programa (x86)" o "Program Files (x86)". Búscalo en
Editar>Preferencias>Complementos>Instalar. Hecho esto, clicamos en
habilitar complemento. Si se ha instalado, en Archivo>Importar, tendrás
nuevas opciones llamadas Ninja Ripper. Si te sientes retro y, digamos, estás
usando aún Blender 2.78, la opción está en File>User preferences
(Ctrl+Alt+U)>Add-ons>Install from file.
Si no lo tienes ya, necesitarás Google Earth Pro para PC. Una ventaja sobre métodos anteriores es que puedes girar los 360º, inclinar el plano o acercarte y alejarte sin limitaciones. Para que todo funcione, abre el programa, dirígete a Herramientas>Opciones y, en Modo de gráficos, seleccionas Direct X y lo aplicas. Acto seguido, cierras el programa.
Ahora abrimos Ninja Ripper y arrastramos el icono de Google Earth Pro a este o lo buscamos en "Executable program". Si no sabes dónde está, si haces clic derecho en un acceso directo de Google Earth y "Abrir ubicación del archivo", te dirigirá a la carpeta necesaria. Seguramente sea la misma que muestro en la imagen. "Working directory" se rellena automáticamente al completar la anterior. Ahora pulsas Launch.
Cuando se abra Google Earth, verás en una esquina el logo de Ninja Ripper. Dirígete al lugar que quieras capturar y pulsa el botón de capturar pantalla (Print Screen o como quiera que esté abreviado, que siempre está a la izquierda en la fila de 3 botones en la esquina superior derecha del teclado). No te preocupes si se queda congelado un momento cada vez que lo pulsas.
Ahora, en Ninja Ripper, pulsas Open Rip dir. Necesitas encontrar el archivo Googleearth_log, que está junto a una serie de carpetas llamadas frame_0, frame_1, frame_2, etc. Hay otros archivos llamados Googleearth_log, cada uno solo en su propia carpeta, que no son los correctos. Tanto estos como el Googleearth_log con las carpetas frame_nº están en carpetas con nombres similares. Una vez que lo encuentres, en este documento, buscas (Ctrl+B en el bloc de notas) "ModelViewProjectionMatrix" y encontrarás varios grupos de números entre corchetes, similares a coordenadas (no he comprobado qué son, pero posiblemente lo sea). Copia lo que viene después, desde el primer corchete al último antes del punto y coma.
En Blender, Archivo>Importar>Ninja Ripper 2 World Space.
En la ventana que se nos abre, a la derecha, donde dice Geomet..., elegimos Matriz y debajo pegamos los valores que hemos copiado. Elegimos la carpeta donde están las subcarpetas frame_0, frame_1, etc. Elegimos una de estas (p.ej. frame_0), seleccionamos todos los archivos mesh_[nº].nr (atajo: A) en su interior y terminamos pulsando Import Ninja Ripper 2.
Aunque después puede que te quede resolver otros asuntos, aquí acaba el proceso de importación.
El método más rápido, sencillo y para todos
Si no te importan los detalles como las texturas, pero quieres tener un edificio, calle o ciudad, como en OpenStreetMap, pero en 3D, Blosm es tu herramienta. La puedes obtener a cualquier precio, ya que pagas lo que quieras y puedas. Descargas el archivo zip y no tienes que descomprimirlo, tan solo instalarlo como complemento en Blender. Se acabará llamando Importación-Exportación: Blosm. Aparecerá oculto, bajo la pestaña de Vista (a mí me aparece bajo "Crear" porque también tengo el complemento A.N.T. landscape).
Primero, en Extent: presionamos Select. En la web prochitecture que se abrirá y busca el lugar de interés. Cuando llegues, pulsa Show selection rectangle. Extiéndelo al área que vayas a importar y presiona Copy.
Volvemos a Blender y, en Extent:, presionamos Paste. En la pestaña junto a Import, seleccionas Terrain y luego Import. Ese será el suelo. Luego seleccionas OpenStreetMap y vuelves a pulsar Import. Puedes importar zonas enormes, tanto que Blender no podrá alejarse lo suficiente para verlas completas.
No tiene más, salvo que existe una versión premium con precios fijos, según su uso, que tiene texturas, aunque los métodos anteriores las ofrecen mejores. No obstante, es el método más sencillo y con menos requisitos.
No hay comentarios:
Publicar un comentario