Bueno, seguimos un poquito más.
Zanoza Modeller v.07b: Cómo crear objetos, inmuebles, etc, desde cero (parte 1)
La idea era empezar por un edificio, pero como me pareció algo complicado para hacer el primer objeto, he decidido empezar por la pista de tenis que hay justo enfrente de mi casa. Un objeto plano (la pista) sobre una base de cemento y rodeada por otros objetos planos (las vallas). Allá vamos.
En el Google Earth se ve la parte de la pista que quiero hacer:
Bien. Abro mi proyecto de pista en el 3DSimEd y ahí vemos el hueco donde debería estar la pista de tenis.
Lo que tengo que hacer es exportar los objetos de alrededor de ese hueco (carretera, acera, etc, no hace falta que exportemos muchas cosas, solo lo más próximo a ese hueco) en formato .mts (juego F1), ya hemos visto en el pasado cómo hacerlo. Luego importamos los objetos en el Zanoza Modeller.
Bien, ahí lo tenemos. Lo primero, pinchamos sobre la vista que deseamos y acercamos o alejamos la vista con la rueda del ratón. La dejamos a la altura que más nos guste.
Hace tiempo hice un tutorial inacabado sobre el Zanoza Modeller que convendría leer antes de seguir con esto, que explica muchas cosas. Me hubiera gustado terminarlo pero el archivo se perdió, así que no sé si lo continuaré o no. En cualquier caso la información es muy útil. El tema es éste:
https://www.motorfaq.com/showthread.php?tid=275
Asumiendo que lo habéis leído, sigo.
Creando un objeto 3D desde cero
Vamos a crear la pista de tenis. Como es un objeto con mucho "techo" y poca altura, trabajaré fundamentalmente sobre la vista superior. Lo primero es crear una superficie en la que trabajar. Esto se hace pulsando en el menú de la derecha, en
Create > Surfaces > Flat.
Hecho esto con el ratón dibujamos la superficie que queremos en la vista que deseamos, que como he dicho es la Top. Lo hacemos manteniendo el botón del ratón pulsado, veremos que se dibuja un cuadrado discontinuo. Hago el cuadrado del tamaño aproximado de la pista y una vez lo tenga suelto el botón del ratón.
Al soltar el botón del ratón nos pide un nombre para esa superficie. Yo dejaré el nombre por defecto.
Y listo. Como podéis ver en la vista superior donde había un hueco ahora hay una superficie plana. A su vez abajo a la derecha, en la lista de objetos, podemos ver que hay un nuevo objeto con el nombre "Surface", que es el objeto que acabamos de crear, y que también podemos ver "flotando" sobre el agujero en la vista 3D.
Pero esa pista es "plana", en 2 dimensiones, y la pista real tiene altura, anchura y fondo, en 3 dimensiones. Antes de añadirle anchura y fondo primero vamos a preparar la superficie de la pista. Esto es mover los vértices de los polígonos hacia donde más nos convenga. Primero pinchamos sobre el botón vértices, arriba a la izquierda. Luego sobre el objeto "surfaces" en la vista Top. Y aparecerán unos puntitos rojos que podemos mover, esos puntos son los vértices.
Luego, en el menú de la derecha, pinchamos en
MUL (quiere decir que podemos mover uno o varios vértices a la vez). Y también en
Modify > Move. Luego me voy a la vista Top y empiezo a arrastrar los vértices hasta donde más me convenga. No tiene por qué ser de forma definitiva, puede ser provisional, de hecho más adelante hice cambios.
Bueno, bastante bien. Pero si giramos la vista 3D vemos que lo que tenemos es una superficie plana "flotando" en el aire. Así que vamos a darle anchura y profundidad añadiendo polígonos. Vamos a Create > Faces > Single. Esto nos permite añadir triángulos a la superficie. Primero vamos a dibujar desde la vista top como las paredes que le faltan a la pista de tenis pero como si alguien desde el cielo le hubiera dado un manotazo y la hubiera aplastado
.
No importa que no vayan perfectamente rectos pues luego podemos (y deberemos) mover los vértices y darles la posición correcta. Como podéis ver en la vista 3D también se han generado una especie de sombras sobre la superficie, más adelante hablaremos sobre esto.
Como hay demasiados objetos en la vista podemos "ocultar" aquellos que no sean necesarios pinchando en la lista de objetos. Al pinchar sobre ellos dejarán de estar en azul y pasarán a blanco en la lista, y desaparecerán de las vistas. Así podremos trabajar mejor.
Bien, vamos a mover esos vértices a la posición correcta. En el menú derecho presionamos
MUL (que indica que vas a mover múltiples vértices) y
Select > Quadr (que indica que vas a seleccionar los vértices dibujando un cuadrado).
En la vista Top dibujamos un cuadrado con el botón derecho del ratón sobre aquel vértice que queremos mover. Veremos que algunos triángulos se han marcado en rojo, en concreto aquellos que están unidos por ese vértice.
Bien. En el menú derecho volvemos a usar la opción
Modify > Move, pero esta vez en lugar de mover el vértice en la vista Top lo haremos en la vista Left, moviendo el vértice para abajo.
Como puedes ver en la vista 3D el objeto ha cambiado, y le hemos dado "altura", al menos en ese vértice. Deseleccionamos el vértice pinchando en Select > None y pinchando con el botón derecho del ratón en cualquier vista (menos la 3D). Y el vértice que teníamos seleccionado se deselecionará. Repetimos la operación con los tres vértices que faltan, los seleccionamos usando Select > Quadr y los movemos hacia abajo en la vista Left, dejándolos a la altura del primer vértice que movimos.
Perfecto, ya tenemos todo el objeto con altura. Pero las paredes que le dan altura no son rectas. Lo corregimos moviendo los vértices hasta donde deseamos, y queda tal que así:
¡Enhorabuena, ya está creado el primer objeto 3D desde cero!
Seguimos...
Corrigiendo las "sombras" del objeto 3D
Bien, ya tenemos la base de la pista de tenis hecha, pero hay una especie de sombra negra en el borde inferior. Esto es por la orientación de los vértices. La manera de corregirlo es, primero subdividiendo el objeto en superficies, y después reorientando esos vértices ("normales", que ya hablaré más adelante de esto).
¿Cómo subdividimos un objeto? Pues es tan sencillo como clonarlo y luego a cada objeto borrarle todo menos la superficie que nos interesa. En este caso como tenemos tres superficies planas (parte superior, largo y fondo) pues solo tenemos que clonar nuestro objeto dos veces.
¿Cómo clonamos nuestro objeto? En la lista de objetos presionamos con el botón derecho del ratón sobre el nombre del objeto que queremos clonar (en este caso Surface) y se abrirá un pequeño menú desplegable. Ahí tenemos la opción de clonar. Lo hacemos dos veces. El resultado es que tenemos tres objetos iguales.
Pero como digo solo queremos unas determinadas superficies de cada objeto. Bien, del primero solo nos interesa la parte de arriba, el resto podemos borrarlo.
Bien, lo primero,
asegurarnos de que en la lista de objetos solo es visible el objeto con el que queremos trabajar (el primero de los "Surfaces"), debe estar solo este con el nombre en azul. Pinchamos en el
botón vértices, y luego en
Modify > Delete y
Select > Quadr. Pinchamos en cualquier vista sobre el objeto y podremos ver los vértices en forma de puntitos rojos.
Ya sabemos cómo seleccionar varios vértices, así que lo hacemos. En la vista Left dibujamos un cuadrado sobre los vértices que queremos borrar con el botón derecho del ratón. Se marcarán en color rojo. Y al hacer clic con el botón izquierdo esos vértices y por lo tanto esos triángulos quedarán borrados.
Repetimos la operación con el siguiente objeto "Surface", pero si arriba nos quedamos con la superficie superior, en este caso nos vamos a quedar solo con el largo, borraremos el resto.
Y volvemos a repetir con el último objeto "Surface", esta vez borrando todo menos el ancho.
Bien, recordemos ¿para qué hemos hecho esto? Para calcular las "normals" o normales, es decir, la orientación de los vértices, y así eliminar las sombras esas raras que aparecían abajo, ahora lo vais a ver.
En el menú de la derecha nos vamos a
Surface > normals > calculate. Seleccionamos todos los vértices del objeto que estamos trabajando con
Select > all. Y cuando le damos en cualquier vista clic con el botón izquierdo del ratón...
... magia, hemos reorientado los vértices y la sombra rara esa ha desaparecido.
En esa vista no se ve muy bien, pero ahora, al aplicarlo a los otros dos objetos, lo vas a ver mejor. Nota: esas rayas verdes que salen de los vértices nos indican hacia dónde están orientados. Como se puede ver una vez hecho las "normals" estos quedan orientados hacia la misma dirección que la superficie. Eso es lo que hace que se definan los bordes y desaparezcan las sombras.
Si lo comparas con las imágenes de arriba verás que no solamente la sombra ha desaparecido, sino que se han definido perfectamente los bordes
.
Como dije al principio aún estamos a tiempo de corregir cosas, y echando cuentas decidí primero corregir la posición de los vértices de la superficie superior, y después seleccionar estos tres objetos a la vez y bajarlos hasta la altura correcta, hasta casi la altura de la carretera.
Movemos una vez más los vértices del objeto, ajustándolo al máximo para que no se solape con otros objetos (plantas por ejemplo) y listo.
Materiales y mapeado
¿Qué es el material? Pues como en la vida real. Madera, cemento, metal, etc, solo que en el diseño 3D no aplicamos esos materiales de verdad, simplemente le indicamos a los objetos, las superficies, los triángulos, etc, qué material tienen. Simulamos los materiales.
¿Qué es el mapeado? Imaginad una estructura real de triángulos metalicos (el objeto 3D o geometría) y una lona que se dobla y recubre esa estructura (la imagen 2D o textura). Pues en el ordenador es lo mismo. Es decir, es "doblar" una textura hasta ajustarla como queremos en un triángulo o un conjunto de triángulos. Así es como se hacen los objetos de diseño 3D.
En el Zanoza Modeller un material solo lleva una textura. Sin embargo esa textura se podría usar en varios materiales. De la misma manera un triángulo solo puede llevar un material, pero varios triángulos pueden llevar el mismo material o materiales distintos.
Para la superficie superior de la pista de tenis he creado esta textura en formato .bmp de 24 píxeles de profundidad, que es lo que admite el Zanoza Modeller.
Y así es como se verá en el Zanoza Modeller una vez terminados los materiales y el mapeado.
Vamos con el procedimiento.
Bien, para este proceso usaremos sobre todo el botón de
Faces y el botón de
Editor de Materiales, señalados ambos con unas flechas.
Bien, pinchamos en el botón de
Editor de Materiales, abriéndose un menú exclusivo para los materiales. Hay un material por defecto ("default material"). A continuación los demás materiales que, o bien venían con los objetos importados (en este caso el asfalto, la acera, los jardines, etc), o bien podemos crear nosotros mismos. Para crear un material simplemente le damos al botón
Copy y se duplicará el default material, apareciendo la copia al final de la lista desplegable.
Lo primero es pinchar en el menú desplegable sobre ese último material de la lista. Y cambiarle el nombre. Simplemente borramos el texto de la casilla
Name y le ponemos lo que queramos: nombres cortos y sin espacios. Como este material se va a utilizar para la superficie de la pista de tenis le pongo el nombre AC_TENNIS1.
Hecho. Si volvemos a pinchar en la lista desplegable veremos que el último material ahora aparece con el nuevo nombre.
Ahora tenemos que indicarle cuál es la textura que va a ir asociada a ese material. Con el material seleccionado en la lista le damos a
Load Map > Add y la textura bmp que deseamos.
Listo. Ahora en vez del botón Load Map aparecerá el botón con el nombre de la textura escogida. Asegúrate de que en el menú de al lado esté seleccionado Mix Color o cuando empecemos a mapear los cambios no se verán en la vista 3D del Zanoza Modeller. Le damos a OK y listo, tenemos nuestro primer material terminado.
Vamos a aplicar el material al objeto. Lo primero es decirle al objeto qué triángulos van a usar ese material. Para ello primero dejamos solo visible en la lista de objetos aquella superficie sobre la que vamos a trabajar, le damos al botón Faces del menú de arriba y luego a
Select > Single. Luego con el botón derecho del ratón vamos pinchando en los triángulos que vamos a mapear, de uno en uno.
Le damos al botón de
Editor de Materiales. Seleccionamos el material que hemos creado, AC_TENNIS1 y pinchamos en
Assign to Selection.
En cuanto le demos a
Apply Changes y
OK veremos en la vista 3D que el color de los triángulos seleccionados ha cambiado.
Enhorabuena, material aplicado. Solo queda el mapeado.
Bien. Tenemos seleccionados los triángulos a mapear, así que el primer paso es darle a
Surface > Mapping > Assign AV en el menú derecho. Y luego clicar con el botón izquierdo sobre la vista que nos interesa mapear, ojo con esto, si nos equivocamos de vista el mapeado saldrá mal. Como la textura de la pista de tenis que queremos mapear es la pista vista desde arriba, cllcaremos en la vista Top del Zanoza Modeller. Y automáticamente veremos el cambio tanto en la vista 3D como el la
vista UV Mapper.
Genial, ya tenemos cargados los materiales, las texturas y el mapeado. Ahora solo queda ajustar el mapeado a la textura. Para ello ahora solo trabajaremos en la vista UV Mapper.
Pinchamos en el botón Objects del menú superior, pinchamos sobre la vista UV Mapper y hacemos zoom con la rueda del ratón, buscando nuestro objeto en esa vista. No saldrá todo el objeto, solo los triángulos que hemos seleccionado para mapear. Y en cuanto lo localizamos, le damos al botón vértices del menú superior y pinchamos sobre el objeto.
Ahora para ajustar el objeto al la textura cargada en UV Mapper simplemente seleccionamos todos los vértices y lo vamos reescalando (haciendo en este caso más pequeño) y moviendo, hasta dejarlo ajustado de manera correcta a la textura. Si el objeto es excesivamente grande como en este caso podemos reescalar y mover poco a poco, e ir haciendo zoom para ver mejor. Y simultáneamente vamos a ir viendo cómo en la vista 3D va quedando el resultado.
Nota: el reescalado se hace con Scale y ojo, pulsando simultáneamente Mayúsculas izquierda mientras reescalas manteniendo el botón izquierdo del ratón pulsado. Esto es importante, pues esa tecla es lo que mantiene las proporciones exactas e impide que el objeto se deforme con el reescalado.
Y listo, primer mapeado terminado. Ahora repetimos la operación con las partes que nos faltan, en este caso los bordes de cemento.
Nota: hay objetos que pueden llevar el mismo material y textura. En este caso el cemento es el mismo que el de otros objetos. Para no tener infinidad de materiales repetidos le pongo el mismo nombre que tiene el material en los otros objetos y la misma textura, y solucionado, Assetto Corsa reconocerá que es el mismo material y la misma textura en diferentes objetos.
Y recordemos que después siempre podemos seguir creando nuegos elementos, nuevos materiales, nuevas texturas, etc, e ir haciendo el objeto más detallado.
Unir los objetos creados en uno solo
Mientras no excedamos de 65.000 triángulos podemos unir todos los objetos que queramos en uno solo. Tan simple como darle al botón de
Objetos en el menú superior, y en el de la derecha seleccionar
Create > Objects > Unite Select, y tambien
Select > Quadr. Dibujamos un cuadrado con el botón derecho del ratón sobre los objetos que deseamos unir, y clicamos en cualquier vista con el botón izquierdo del ratón. Nos pedirá un nombre, le damos el nombre definitivo que importaremos en Assetto Corsa y le damos a
Aceptar.
Listo. Ya tenemos la pista de tenis terminada. Y también hice una modificación en la barrera de al lado, ya que quedaba solapada con el nuevo objeto. Así que exportaré estos dos.
El proceso ya lo he enseñado varias veces a lo largo del hilo: exportamos cada objeto en formato .mts, importamos los archivos .mts dentro de nuestro proyecto de 3DSimEd, exportamos en formato .fbx y finalmente abrimos el editor del Assetto Corsa, KSEditor, donde haremos los cambios finales en los shaders y demás.
Resultado en partida:
Por supuesto siempre podremos abrir nuestro archivo de Zanoza Modeller y hacer cambios: añadir más detalles, modificar cosas, etc, lo que nos de la gana, reemplazar el objeto antiguo en el 3DSimEd y reimportarlo en el editor del Assetto Corsa. El límite a la hora de crear cosas lo pone vuestro tiempo libre, vuestras ganas y vuestra imaginación.
En unos días si todo va bien os enseño cómo hacer un edificio, o al menos cómo los hago yo, pero la técnica va a ser muy parecida a esta.
Saludos para todos.