Para este tutorial, he utilizado deliberadamente imágenes muy corrientes tomadas con un smartphone para encontrarme con los problemas cotidianos. Por ejemplo, el ángulo de la pared izquierda es muy pronunciado y algunas de las plantas se mueven. Si quieres seguir el tutorial directamente, puedes encontrar la película 2D "Mauern.mov" en el material de trabajo.
Seguimiento 2D del material de rodaje
Como de costumbre, comenzamos el flujo de trabajo de seguimiento de movimiento mediante el seguimiento de la película 2D. Para ello, obtenemos un objeto motion trackerdel menú Motion Tracker en una nueva escena vacía de Cinema 4D.
Para habilitar el motion tracker para analizar la película, abrimos el diálogo de ajustes del objeto motion trackeren el gestor de atributosde la página de footage. Haciendo clic en el botón de carga en la línea de footage nos lleva al diálogo de apertura.
Allí seleccionamos la película 2D suministrada como metraje y la cargamos en el objetomotion tracker mediante el botón Abrir.
El valor de remuestreo para analizar el footage sólo se refiere al próximo proceso de seguimiento para la reconstrucción de la cámara. Cinema 4D generalmente utiliza la mejor calidad posible de la película para la posterior reconstrucción de la escena. Sin embargo, incluso para la reconstrucción de la cámara, un valor alto (aparte del tiempo de cálculo ligeramente mayor) no puede hacer daño.
Para el seguimiento 2D, cambiamos a la página del mismo nombre en el diálogo de ajustes del Motion Tracker. Nos limitamos al seguimiento automático, ya que no necesitamos ningún punto de seguimiento especial para la construcción posterior. Para garantizar que se dispone de suficiente información de seguimiento, fijamos el número de pistas en 2000, con una distancia mínima de 25.
Después de hacer clic en el botón Crear auto-tracks ...
... encontramos el alto número deseado de puntos de seguimiento muy uniformemente distribuidos en nuestro material de metraje.
Para que el rastreador de movimiento sea un poco más tolerante a los movimientos rápidos de la cámara, cambiamos brevemente a la página Opcionesantes del rastreo y activamos allí la opción Extrapolar posición de búsqueda.
Ahora podemos iniciar el seguimiento 2D en la página de Seguimiento Automático pulsando el botón < Auto-Track >.
Una vez que el rastreador de movimiento ha terminado su trabajo, podemos probar la película 2D rastreada haciendo clic en el botón de reproducción para comprobar si se conservan suficientes puntos de seguimiento en todo el transcurso de la película.
Reconstrucción 3D de la cámara
En el siguiente paso, reconstruiremos la información de la cámara a partir de esta información de seguimiento. Para ello, pasamos a la siguiente página del diálogo de ajustes del Motion Tracker, Cálculo 3D. Podemos dejar los valores por defecto para la reconstrucción 3D completa, ya que el Motion Tracker debería determinar la distancia focal por sí mismo.
Después de hacer clic en el botón de reconstrucción 3D, el cálculo 3D de la información de la cámara se lleva a cabo.
El resultado del cálculo 3D muestra - como era de esperar - la mayoría de las características verdes en las zonas claramente visibles y sin movimiento, mientras que las plantas en movimiento y la empinada pared de la izquierda siguen siendo las zonas problemáticas marcadas con características rojas debido a los movimientos relativamente rápidos de la cámara.
Calibración de la escena
Antes de empezar a reconstruir la escena, la calibramos con restricciones. Aunque en teoría este paso no es absolutamente necesario para la reconstrucción, lleva inmediatamente la escena a un punto de referencia utilizable (origen) y a una posición y escala de ejes correctas.
Para asegurarnos de que conseguimos los mejores puntos de seguimiento para este paso, fijamos el deslizador de tiempo en un punto tardío en el tiempo, lo que nos garantiza puntos de seguimiento de alta calidad.
Empezamos por determinar el origen de la escena. Para ello, asignamos una restricción de posición al objeto motion trackera través del menú Motion Tracker>Constraints.
Para declarar un punto de seguimiento como el origen de la escena, hacemos clic en un punto de seguimiento en el centro del suelo con la herramienta de restricción de posición activa. El borde naranja grueso alrededor del punto de seguimiento indica que se ha definido el origen.
En el cuadro de diálogo de configuración de la etiquetade restricción de posición asignada al objeto rastreador demovimiento, podemos asegurarnos de que el origen de la escena que hemos seleccionado está vinculado a un objetivo de característica de alta calidad (aquí: Auto 0661), que está coloreado en verde.
Continuamos con una restricción de capa del menú Motion Tracker>Constraints, que queremos utilizar para definir la alineación del eje Y.
Con la herramienta restricción de plano ahora activa, dibujamos un triángulo haciendo clic sobre tres puntos de seguimiento en el plano del suelo. Vigile siempre la alineación del eje mostrado. Puede utilizar la herramienta Moverpara seleccionar posteriormente los puntos del triángulo y colocarlos en otros puntos de seguimiento, posiblemente más adecuados, a modo de prueba.
Si está satisfecho con el resultado hasta ahora, sólo nos queda definir el eje deseado para la restricción de capa. Esto se hace en el diálogo de configuración de la etiqueta derestricción de plano, donde seleccionamos el eje Y.
En el último paso de la calibración, definimos la alineación del eje Z y el escalado de la escena al mismo tiempo. Para ello, obtenemos una restricción vectorial del menú Motion Tracker>Constraints.
Al crear la restricción vectorial, hemos obtenido una línea en la vista 3D, que movemos a dos puntos de seguimiento adecuados en la pared de la derecha para definir la posición del eje Z.
Una vez posicionada la línea sobre dos puntos de seguimiento paralelos al curso de la pared, abrimos el diálogo de configuración de la etiqueta derestricción vectorial y especificamos que la línea de restricción vectorial define el eje Z.
Para aprovechar la oportunidad de escalar la escena al mismo tiempo, establecemos la longitud especificada en Conocido e introducimos una estimación de la longitud de la línea (en mi caso 1,5 metros).
Como podemos ver por la coloración verde de los dos objetivos de línea, estos puntos de seguimiento también son adecuados para la calibración.
Tras completar la calibración, cambiemos brevemente a la cámara del editor haciendo clic en el pequeño símbolo de cámara situado junto a la cámara reconstruida para ver la escena reconstruida hasta ese momento.
Como deseamos, el suelo de la pared está en el plano XZ de nuestro sistema de coordenadas mundo. Dado el desnivel del suelo y el hecho de que el muro no es realmente vertical, podemos estar bastante satisfechos con este resultado.
Reconstrucción 3D de la mampostería
Una vez finalizados los trabajos preparatorios, llegamos a la verdadera innovación de la versión 19: la reconstrucción de la escena a partir de los datos de la película 2D.
Para ello, pasamos a la última página del diálogo de ajustes del objeto Motion Tracker, a Reconstrucción. Aquí, seleccionamos primero el preset Alta calidad, que adaptamos inmediatamente a nuestras necesidades.
La reconstrucción de la escena se divide en la creación de una nube de puntos y el posterior mallado, la conversión de esta nube de puntos en una malla poligonal. Ambas se ejecutarían automáticamente una tras otra, ya que hemos seleccionado el preajuste de alta calidad. Sin embargo, como sólo queremos obtener primero la nube de puntos para comprobarla antes del mallado, activamos la opción Sólo nube de puntos antes de iniciar la reconstrucción pulsando el botón Iniciar reconstrucción de la escena.
Dependiendo de la velocidad del ordenador, pueden pasar unos minutos hasta que se cree un objeto poligonal con una nube de puntos de la escena una vez finalizada la reconstrucción de la escena. Este objeto de nubede puntos tiene una etiqueta de color de vértice, que muestra convenientemente los puntos individuales de la nube de puntos con la información de color reconstruida.
En la vista de cámara del editor, esta nube de puntos coloreada nos proporciona por sí sola información muy significativa sobre la reconstrucción y el mallado esperado.
En este caso, por supuesto, no podemos estar satisfechos con el resultado. No se ve nada de la pared trasera, el suelo sólo aparece en fragmentos aislados - nos hemos ahorrado con razón el mallado.
Por tanto, tenemos que adaptar los parámetros de generación de la nube de puntos a las necesidades de nuestro metraje. En primer lugar, reducimos el ángulo mínimo a 2° para facilitar la reconstrucción de las paredes izquierda y trasera. Esto compensa el problema del ángulo agudo en la pared izquierda y el escaso movimiento de la cámara.
Aumentando el tamaño del parche a 30, conseguimos un patrón de búsqueda mayor, lo que aumenta la calidad de la nube de puntos. Por último, desactivamos la opción Filtrar grupos pequeños para evitar que se filtren parches pequeños pero importantes.
Eliminamos el objeto poligonal de la nube de puntos antigua en el gestor de objetosantes de empezar de nuevo pulsando el botón Iniciar reconstrucción de la escena.
La creación de la nube de puntos tardará un poco más debido a los parámetros de reconstrucción modificados, pero el resultado habla por sí solo.
El suelo y la pared trasera están ahora también presentes, pero no es posible obtener más de la pared izquierda debido al mal ángulo de la cámara. Sin embargo, esto no es demasiado dramático, ya que no se necesita una malla filigrana para las zonas que no son visibles o apenas lo son.
Con esta nube de puntos se puede conseguir un mallado satisfactorio. Para empezar a procesar la nube de puntos en una malla poligonal, hacemos clic en el botón Generar malla de la sección Malla de la página Reconstrucción.
Este paso del proceso también requiere algo de tiempo debido a la alta calidad establecida, pero después de esperar unos minutos como máximo, se nos presenta una malla poligonal cerrada en casi todas partes.
Se ha creado un nuevo objeto poligonal para la malla de escena reconstruida. Como ahora vamos a seguir trabajando con este objeto, podemos desactivar la visibilidad de la nube de puntos de la escena y -si no lo hemos hecho ya- del objeto rastreador de movimientoen la vista del editorutilizando los interruptores del semáforo en el gestor de objetos.
Como el objeto mallade escena también tiene una etiqueta de color de vértices, ...
... vemos la malla reconstruida coloreada con el metraje cuando seleccionamos la etiqueta de colordel vértice en el Gestorde Objetos.
Aquí vuelven a quedar claras las áreas problemáticas de la reconstrucción debidas a las distorsiones de color ya comentadas. Sin embargo, sólo estamos interesados en una malla poligonal simple de la pared, por lo que podemos ignorarla sin problemas.
Lo que no debemos ignorar es el pequeño agujero poligonal de la esquina posterior izquierda. Para cerrar este agujero, seleccionamos el objeto poligonal de la malla de la escena y llamamos a la herramienta Cerrar agujero poligonal del menú Malla>Crear.
Esta herramienta reconoce el agujero molesto en la malla de la escena en cuanto movemos el puntero del ratón sobre una arista adyacente y cierra el agujero en cuanto hacemos clic sobre él.
Suavizar la malla poligonal
Naturalmente, la alta resolución de la reconstrucción de la escena se refleja también en una superficie de malla muy irregular. Si simplemente colocáramos el objeto poligonal de la mampostería en un generador de superficies de subdivisión para suavizarlo, la escena sólo se volvería más compleja debido a la subdivisión adicional de la malla.
En su lugar, seleccionamos el objeto poligonal y, manteniendo pulsada la teclaMayús, llamamos a un deformador de suavizado desde el menú Crear>Deformador.
Al añadir la tecla Mayúsculascomo tecla modificadora, el deformador de suavizado ha quedado subordinado al objeto poligonal de la malla de la escena, tal y como se requiere.
Podemos dejar los ajustes del deformador suave en los valores por defecto.
Esto hace que la malla poligonal se vea mucho mejor. Nuestro objetivo del tutorial, la reconstrucción de la escena de una pared, se ha logrado. Ahora echemos un vistazo rápido a cómo texturizamos el objeto poligonal y lo integramos en la película 2D.
Integración del objeto poligonal 3D en la película 2D
Para integrar la pared reconstruida en la película de seguimiento como un objeto 3D, debemos, en primer lugar, proporcionar la película 2D en el fondo y, en segundo lugar, asignar una textura de material proyectada frontalmente a la pared.
Para ello, abrimos el diálogo de configuración del objeto motion trackery cambiamos a la página de metraje. Utilizando el botón Crear objetode fondo, creamos un objeto de fondocon textura lista para el fundido de la película 2D en el renderizado.
Ahora también podemos utilizar la etiqueta de texturadel objetode fondo para el objeto de malla de la escenade la mampostería. Arrastrando la etiquetade textura mientras mantenemos pulsada la tecla Ctrl, la copiamos al objetode malla de escena.
Para asegurarnos de que la mampostería puede recibir sombras de otros objetos pero no puede proyectar sombras ella misma, asignamos una etiquetade render a la malla de escena a través del menú Etiquetas>Etiquetas de Cinema 4D en el Gestor de Objetos.
En el diálogo de configuración de la etiquetade render, desactivamos la opción Proyectar sombras y activamos la opción Composición de fondo.
Ahora podemos colocar cualquier objeto 3D en la pared, equipar la escena con al menos una luz que proyecte sombras ...
... y la pared recibirá sombras en los lugares correctos. El seguimiento del movimiento también garantiza que cada objeto 3D integrado permanezca en la posición correcta en la película 2D reconstruida.