Tutorial básico de creación de objetos para MSTS con TSM

Construir objetos para MSTS en Train Sim Modeler (en adelante TSM) es sencillo, si partimos de la experiencia de otros usuarios avanzados para ahorrarnos el proceso de investigación que éllos han llevado a cabo y si éstos lo comparten con los usuarios noveles, que es lo que pretendemos aquí. Hay una serie de conocimientos que se adquieren con la experiencia de encontrarse ante el reto de recrear en tres dimensiones las formas de los objetos reales, teniendo muy en cuenta utilizar el mínimo número de polígonos para influir de la manera más suave posible en el rendimiento del simulador (a mayor número de polígonos, menor rendimiento gráfico de la simulación).

Partimos de la base que tenemos un conocimiento mínimo de la representación tridimensional en ordenadores (en adelante 3D), y conocemos el funcionamiento de las 3D mediante los ejes X, Y y Z, y demás conceptos que quedan fuera de las pretensiones de éste tutorial, que pretende ser lo más sencillo posible (dentro de su precisión en el detalle) para animar a cualquiera a introducirse en el mundo de la construcción de objetos para MSTS. Si deseamos ampliar nuestro conocimiento sobre 3D, existen muchos artículos en internet, como algunos que podemos encontrar en la Wikipedia.

Aquí nos vamos a limitar a proporcionar la enseñanza necesaria para construir un objeto simple, que sirva de introducción y ejemplo para pasar después a proyectos más avanzados. No se pretende sentar cátedra, pues hay muchas maneras de conseguir un resultado similar. De lo que se trata es de explicar una técnica en particular, de principio a fin, paso a paso, y para todos los niveles. Tampoco vamos a utilizar planos (aunque es perfectamente posible usarlos): en realidad, el objetivo principal del tutorial es utilizar, desarrollar y entrenar nuestra capacidad de visión espacial, la cual es una especie de sexto sentido que todo el mundo tiene pero no todos utilizan.

El modelo en la realidad

El objeto que vamos a construir es un sencillo edificio: una casilla de peón caminero con tejado a dos aguas:

Estas son las dos fotos a partir de las cuales hemos construído la textura para el objeto. Aunque están tomadas con las prisas del momento, es muy recomendable dedicar todo el tiempo posible a fotografiar correctamente el modelo, para tener las vistas de las fachadas (en el caso de un edificio) lo más planas posibles, lo que nos ahorrará trabajo con el editor de imágenes. También serán útiles imágenes en escorzo (retratando 2 caras) del modelo, para ayudarnos a observar sus formas y proporciones. No vamos a explicar aquí el proceso para obtener la textura partiendo de las fotos y otros recursos pues nos ocuparía tanto ó más que la propia construcción del objeto. Pero sí algunas particularidades de la hoja de textura que hemos realizado:

Como vemos, se ha aprovechado al máximo el área (512 x 512 píxels) de la hoja de textura para sacarle el mayor partido y resolución. El color de fondo conviene que sea negro porque es el color que ocupa menos, en términos de bytes. El blanco es el que ocupa más. Algunas partes se han estirado para ganar después resolución, pero otras, como los testeros no es bueno deformarlas porque nos servirán de plantilla para conseguir las mismas proporciones que el modelo real. Esta hoja de textura tampoco contiene transparencias, recurso que se puede usar para determinados casos, pero el que nos ocupa no los requiere.

Organización de los archivos

Un ordenador, entre otras muchas cosas y como su propio nombre indica, sirve para ordenar los archivos que contiene (o al menos, para intentarlo). Como no queremos complicarnos la existencia más de lo necesario, necesitamos organizar las cosas con cierta lógica. Por eso, antes de empezar a hacer nada, crearemos una carpeta donde alojaremos nuestro proyecto y todos los archivos que necesitaremos para llevarlo a cabo. Utilizando, por ejemplo, el directorio Mis Documentos de Windows XP, ó Documentos de Windows Vista, creamos una carpeta llamada, por ejemplo, Casilla Peon Caminero:

De momento, colocaremos ahí el archivo de textura, que se denomina peoncam1.bmp (como nos indica su extensión, está en formato de mapa de bits). Se puede descargar desde aquí.

El interface de TSM

Aunque éste tutorial no pretende enseñar todos los entresijos y posibilidades de TSM, incluyo ésta imagen aquí para recordar las partes más importantes del interface (ventana de trabajo) de TSM. Podemos ver cómo se estructura la interface, al estilo de muchos programas en 3D, pero con la sencillez de manejo que le caracteriza:

Además de lo típico en cualquier programa (Menús, barras), hay tres ventanas que permiten ver el objeto desde 3 de sus caras y otra que lo muestra en 3D, en proyección ortogonal. Es todo lo que, en principio, necesitamos saber.

¡A construir!

Bien. Ya estamos listos para empezar a construir nuestro sencillo edificio. Abrimos TSM y, como necesitamos siempre partir de una primitiva para crear un objeto, usaremos en nuestro caso un Box (caja). Hacemos clic sobre el cubo en la barra de primitivas y aparecerá la ventana Box Parameters (parámetros de la caja). En el campo correspondiente a las secciones del eje X, introducimos 2:

Al pulsar OK, vemos en la interface del programa que se ha creado un cubo de 20 x 20 x 20 metros:

Guardando el proyecto

Para guardar el proyecto a buen recaudo para seguir con él en otro momento, podemos hacerlo justo después de crear la primera Part del objeto (TSM denomina Part a cada parte del objeto completo). Lo primero va a ser proceder a escribir el nombre del objeto en la ventana de Propiedades del proyecto, que aparece pulsando en el menú File>Project Properties:

Como vemos, le hemos llamado peoncam1 (es importante no utilizar espacios ni caracteres raros como ñ ó acentos en los nombres de archivo, a MSTS no le sientan nada bien). Igualmente, si es posible, utilizaremos sólo 8 caracteres en los nombres de archivo. Hemos de introducir el nombre dos veces, en los campos Name y Short Name. Pulsamos OK y procedemos a guardar el proyecto pulsando en el menú File>Save As.... El nombre del proyecto, para evitar después confusiones, puede ser el mismo que el que hemos utilizado antes. Al salvar el proyecto, tendremos un archivo llamado peoncam1.dst. *.dst es la extensión de los archivos de proyecto de TSM. Al mismo tiempo, se creará un archivo llamado peoncam1.dst.bak que es una copia de seguridad del archivo y que sirve para recuperar el proyecto si lo hemos salvado por error.

A partir de ahora, para salvar los cambios que hagamos, sólo tendremos que pulsar en File>Save.

A continuación, vamos a proceder a texturizar (moderno verbo donde los haya) las cuatro caras del edificio. Puede parecer pronto, pero después veremos porqué se puede hacer ya. Para éllo, ponemos el ratón encima del cubo (en cualquiera de las 4 ventanas principales) y pulsamos el botón derecho para que nos aparezca el siguiente pop-up:

Seleccionamos Textures y nos aparece la siguiente ventana Part Texture Assignments que controla las texturas que utilizará la Part:

Ahora, para "pintar" el testero frontal del edificio, pulsaremos Browse a la derecha del campo Back (el segundo empezando por arriba). Entonces se abrirá una ventana como la de la imagen anterior, donde señalaremos el archivo peoncam1.bmp. Una vez hecho, el aspecto de la ventana es el siguiente:

Y así, al seleccionar Abrir, nos aparece la ventana Texture Properties que es la que sirve para realizar el mapeado de la textura en el objeto:

Donde hemos usado el ratón para enlazar el área que queremos se corresponda al testero trasero. Hemos de seguir la muy recomendable práctica de dejar siempre un píxel por cada lado sin usar. Por éso, en la parte superior derecha de ésta ventana, los valores son:

X Crop1
Y Crop1
X Size272
Y Size314

Valores que podemos ajustar con precisión utilizando las flechas que hay más a la derecha, como hemos hecho. Así, la parte de la textura que se va a usar para "pintar" la cara frontal del objeto, queda señalada por una línea continua superpuesta que destaca sobre la textura. Cuando esté bien ajustado y estemos satisfechos, pulsamos OK y volveremos a la ventana Part Texture Assignments, donde el campo Back estará ahora cumplimentado con la ruta al archivo de textura:

Repetimos el procedimiento para el campo Front de la ventana Part Texture Assignments, introduciendo los mismos valores que el anterior, para tener mapeados tanto el testero frontal como el posterior. Una vez hecho todo ésto, pulsamos OK en la ventana Part Texture Asignments y veremos ésto en la vista general de TSM:

Con lo cual tenemos el primer mapeo, la primera texturización de nuestro objeto en TSM. Hay algo extraño ahí dirán muchos. Paciencia. Más adelante quedará todo aclarado y se entenderá perfectamente el porqué (todo tiene un porqué). Ahora es buen momento para guardar el proyecto, haciendo clic en el Menú File>Save.

Texturas laterales

Podemos seguir con las texturas laterales (fachadas). El procedimiento es exactamente el mismo que para las caras frontal y posterior, la única diferencia es el sector que vamos a seleccionar. Para hacerlo, en la ventana Part Texture Assignments pulsamos el botón Browse correspondiente al campo Left:

Y seleccionamos el área correspondiente a la fachada igual que antes, enlazándola con el ratón y ajustando los valores a:


X Crop1
Y Crop317
X Size510
Y Size194

Listo. Repetimos los mismos valores con el campo Right de la ventana Part Texture Assignments y debemos ver ésto:

Con lo cual, ya tenemos todas las partes que nos interesa tener texturizadas de éste objeto (mejor dicho, de ésta Part). Se va pareciendo al modelo real, pero todavía nos falta bastante. Para poder modelar la forma básica del objeto, que es una casilla con tejado a dos aguas, hemos sentado las bases, pero todavía no sabemos cómo hacerlo. Es importante guardar ahora el proyecto por lo que pueda pasar (File>Save).

Custom Mode

Antes de modelar la forma del tejado a dos aguas, hemos de aprender una técnica muy importante que nos permite hacer cosas que de otro modo sería imposible hacer. Se trata del mapeado de polígonos individual, conocido en TSM como Custom Mode. Se puede llegar muy lejos utilizando ésta técnica, que es uno de los mayores secretos de TSM. Vamos a utilizarla ahora en los polígonos que forman las fachadas del edificio, para pasar después a modelar el tejado a dos aguas.

Para empezar, después de abrir de nuevo el proyecto, vamos a pasar el TSM al modo Poly (hasta ahora estábamos en el modo Part, al que tendremos que volver después para poder continuar). Vamos al Menú Mode y en la lista que aparece seleccionamos Poly (ó pulsamos F7). Acabamos de entrar en el modo de edición de polígonos (veremos una línea blanca que forma un área en el objeto). Ahora, utilizando las teclas horizontales del cursor, vamos a ir saltando de un polígono al siguiente, hasta alcanzar uno de los polígonos de las fachadas del objeto:

Una vez tenemos controlado el polígono sobre el que queremos actuar, colocamos el ratón encima del objeto y hacemos clic con el botón derecho para que nos aparezca la ventana del menú de propiedades del objeto y seleccionamos Textures:

Tras lo cual nos aparece la siguiente ventana Poligon Textures, en la que cambiaremos el selector a Custom Textures:

Y pulsaremos OK. Con lo cual, la textura de ése polígono quedará fijada y a partir de entonces, no le afectará ningún cambio efectuado en la ventana Part Texture Assignments (que sólo aparece cuando estamos en modo Part). Seguimos navegando por los polígonos del objeto hasta alcanzar el del lado opuesto, que corresponde a la otra fachada del edificio, y hacemos el mismo proceso que con éste. Entonces tendremos ambas fachadas "pintadas" de forma definitiva. Es posible, por supuesto, cambiar sus mapeados de textura, volviendo atrás y cambiando en la ventana Poligon Textures la asignación del polígono de nuevo, pero eso ahora no nos interesa. Tras hacer todo esto, es un buen momento para guardar el proyecto: File>Save.

Modelando la forma del tejado

Estamos listos para modelar el 3D del objeto para convertirlo, efectivamente, en una casa con tejado a dos aguas. Ahora se entenderá el motivo por el cual hemos construído el objeto con 2 secciones en el eje X. Para poder modelar el objeto, debemos cambiar al modo puntos, acudiendo al menú Mode y en la lista, seleccionando Point (ó pulsando F8). En éste modo podemos cambiar la ubicación de los vértices de una Part. Como vemos en la siguiente imagen, los puntos ó vértices aparecen resaltados, con el objeto de poder seleccionarlos:

Para seleccionar los puntos que nos interesa, primero hemos de marcar la casilla con la línea discontinua de puntos, bajo el menú, en la que aparece la leyenda Mouse select:

Una vez está marcada la casilla (se hunde), cambiará el cursor. Nos desplazamos un poco arriba y a la izquierda de la mitad superior del objeto en la ventana que muestra la vista posterior/frontal (inferior izquierda), y ahora procedemos a seleccionar los puntos, pulsando el botón izquierdo, manteniéndolo pulsado y arrastrando el ratón para crear un lazo alrededor de los puntos:

Tras enlazar los puntos y soltar el ratón, la casilla discontínua de puntos Mouse select se desactiva, y los puntos seleccionados pasan a ser de color amarillo. Cada vez que necesitemos seleccionar puntos, hemos de marcar la casilla, que se desactiva automáticamente. Sólo se puede mantener marcada manteniendo pulsada la tecla Shift mientras seleccionamos puntos.

Pero ahora lo que nos interesa es que tenemos 2 puntos seleccionados. Sí, dos, porque están seleccionados el que tenemos más cerca de nosotros pero también el que está al otro lado del objeto. Recordemos que nuestro objeto es un cubo con dos secciones, divididas por puntos.

Vamos a mover los puntos. Antes, hemos de explicar un poco el funcionamiento de estos tres botones Constrain (constreñir):

Sirven para bloquear el movimiento de una Part, ó conjunto de éstas ó de un Point ó conjunto de éstos. Como vemos, todos tiene de fondo un símbolo rojo de "prohibido", y cada uno una X, Y y Z, en ése orden. Los que marcamos dejan de estar disponibles y se deshabilita el movimiento en ésos ejes concretos.

Pero antes de marcar los que queremos bloquear, hemos de seleccionar la herramienta mover. La herramienta mover es la que está marcada en la imagen siguiente. Pulsaremos su casilla para seleccionarla:

Esta herramienta nos permitirá mover tanto una Part ó conjunto de éstas como un Point ó conjunto de éstos.

Ahora necesitamos marcar, en los tres botones Constrain X y Z, para permitir el movimiento únicamente en el eje Y, que es el que controla el sentido a lo alto (X=ancho, Y=alto, Z=profundidad). Cuando los tengamos marcados, sólo podremos mover lo que esté seleccionado (en éste caso los puntos amarillos, ya que permanecemos en el modo Point) a lo largo del eje Y:

Finalmente, está todo preparado para mover ésos 2 puntos. Colocando el ratón en la ventana frontal/posterior (abajo izquierda), pulsamos el botón izquierdo del ratón y lo arrastraremos hacia arriba hasta conseguir algo similar a la imagen:

Así, hemos creado un tejado partiendo de un cubo dividido en dos secciones. La inclinación del tejado ha sido hecha "a ojo", y podemos pensar que si disponemos de planos, podemos ajustar los puntos del vértice con mayor precisión. Sin embargo, la propia textura de los testeros (que ahora aparece distorsionada), nos va a servir para ajustar perfectamente la posición de éstos puntos.

Pasemos a modo Part seleccionándolo en el menú Mode>Part (ó pulsando F5). Vemos que los puntos se deseleccionan, ya que estamos de nuevo en el modo Part. Ahora, vamos a pulsar con el botón derecho encima del objeto y seleccionamos Textures en la lista desplegable que aparece:

En la ventana Part Texture Assignments, en la que estamos ahora, simplemente pulsaremos OK. Esta operación "refresca" las texturas, aplicándolas de nuevo sobre el objeto:

Y ahora, al fin, tenemos corregida la distorsión de las texturas de los testeros, y el objeto ha mejorado bastante su apariencia, pues se parece mucho más al real:

Puede pasar que la inclinación del tejado nos ha salido mal, por exceso ó por defecto al mover los puntos. En ese caso, no hay más que repetir la operación: volver al Modo Point y mover un poco los puntos en la dirección opuesta hasta que veamos una inclinación más similar a la que muestra la textura, y después actualizar de nuevo el mapeado de ésta. En ocasiones hay repetir la operación varias veces, pero con la práctica nos acostumbraremos a hacerlo velozmente.

Todavía queda bastante por hacer para dar por acabado el objeto. Si la inclinación que le hemos dado al tejado no es correcta y por tanto aparecen zonas negras en los testeros, volvemos al modo Point y movemos la posición de los puntos, volviendo después al modo Part y a Part Texture Assignments para refrescar de nuevo las texturas, repitiendo la operación hasta conseguir que "encajen" lo mejor posible. Después de hacer ésto, es un momento ideal para salvar el proyecto: File>Save.

Decisión: sencillo ó complejo

En este punto del modelado del objeto, podemos tomar dos caminos: uno es optar por un modelo sencillo y el otro por uno más detallado. Si optásemos por el sencillo, el área correspondiente al tejado de nuestra textura no nos serviría, porque sólo muestra medio tejado. Tendríamos que cambiarla por un tejado completo, eliminar las texturas (Clear) correspondientes a Left y Right (fachadas) en la ventana Part Texture Assignments y aplicar, en Top, la nueva parte de la textura correspondiente al tejado, y tras eliminar los polígonos de la base y ajustar las proporciones generales (como se explica a continuación), estaríamos listos para exportar el objeto.

Pero nosotros hemos preferido ir más alla, detallando el objeto para que incorpore el tejado y las dos chimeneas en 3d, aprendiendo en el proceso nuevas técnicas muy necesarias para abordar proyectos más ambiciosos.

Eliminando polígonos

Los polígonos de un objeto que no se ven (porque están contra el suelo ó quedan ocultos por otros) hay que eliminarlos. Así nos desacemos de triángulos en el objeto final que reducirían el rendimiento. Por un objeto que los contenga no hay problema, pero cuando éste objeto esté junto a un número enorme de otros, imaginad la reducción inútil del rendimiento gráfico. Por tanto, vamos a aprender cómo eliminar polígonos superfluos.

Lo primero, cambiamos al Modo Poly mediante el menú Mode>Poly. Ahora, usando como siempre las teclas del cursor, vamos a navegar por los polígonos hasta alcanzar los que están en su base. Al pulsar la tecla Suprimir, eliminaremos el primero de los dos polígonos que hay en la base del objeto:

Pulsando Suprimir otra vez, borraremos el otro polígono del suelo (el que está seleccionado en la imagen anterior). Si todo es correcto, ahora tendremos seleccionado el primer polígono del techo (si no es así, continuar navegando con las teclas del cursor hasta alcanzarlo). Pulsando Suprimir, eliminaremos de forma definitiva el primer polígono del techo:

Y, como ha ocurrido antes con la base, tenemos ahora seleccionado el otro polígono del techo, así que al pulsar suprimir, lo haremos desaparecer para siempre y habremos eliminado todos los polígonos inútiles del objeto. Ahora sólo tiene las partes texturizadas que nos interesa que tenga, por lo que es un buen momento para File>Save (no es necesario cambiar de Modo para Salvar).

Nota: para rotar el objeto en la vista 3d, es tan sencillo como situar el ratón allí (aparece el cursor de rotación), pulsar el botón izquierdo del ratón y, sin soltarlo, moverlo en la dirección que deseemos.

Proporciones

El objeto todavía tiene como planta un cuadrado perfecto, pero en la realidad no es así. Las fachadas son más largas que los testeros, o en lenguaje 3d, Z ha de ser mayor que X. Para alterar las proporciones vamos a usar una nueva herramienta, llamada en TSM Scale. Para usarla, primero hemos de cambiar a modo Part, ya que lo que queremos escalar es una Part u objeto (el Modo Scale no funciona con Polys, pero sí con Parts y con Points).

Cambiamos a Modo Scale seleccionando la herramienta correspondiente en el Selector de Herramientas:

Ahora, vamos a bloquear los ejes X e Y en el Selector Constrain:

Vemos en la anterior imagen que el cursor ha pasado a mostrar una S, indicando que estamos en el Modo Scale. Ahora estamos listos para proceder a estirar el objeto en el eje Z. Situamos el ratón sobre cualquier punto de la ventana que muestra la vista lateral Z (inferior derecha) ó la vista en planta Top (superior izquierda) y pulsamos el botón izquierdo del ratón, arrastrándolo lo necesario para estirar el objeto:

Observemos con detenimiento la imagen anterior. Hemos alargado el objeto hasta alcanzar los 20 x 20 x 40 metros, con lo cual dejamos de tener un cubo y tenemos un ortoedro (triángulos de los testeros aparte), con lo cual las proporciones de las fachadas se han ajustado mucho mejor a la realidad del modelo, que podemos ver en sus fotografías. Si nos pasamos ó nos quedamos cortos, podemos volver a intentarlo pulsando en el Menú Edit>Undo (ó Control+Z) y repitiendo la operación de escalado. No es necesario que mida exactamente 40 metros de largo, pero cuando trabajemos sobre planos, sí habrá que ajustar las medidas con precisión. En cualquier caso podemos volver en otro momento a realizar la operación.

Posición

A continuación vamos a aprender a mover una Part (de momento, la única que tenemos). El procedimiento viene a ser el mismo que con los puntos ó vértices, que ya realizamos anteriormente, lo único que cambia es que lo haremos en el Modo Part en lugar de en el Modo Point. Así que nos vamos al Modo Part, si no estamos ya, mediante el Menú Mode>Part.

Antes de mover nada, vamos a explicar lo que queremos hacer y porqué. Si se observan las ventanas que muestran nuestro objeto, en todas menos en la vista 3D se advierte una rejilla de líneas. Hasta ahora, en todas las imágenes, hemos usado una rejilla de 10 metros (para cambiarla, hay que ir al menú View (vista) y desplazarse hasta abajo de todo con el puntero, donde pone Grid Size, pero ahora no la vamos a cambiar). Si nos fijamos mejor, vemos una línea más gruesa, que representa el suelo en el Editor de Rutas de MSTS:

Por lo tanto, nuestro objeto, tal como está, quedaría enterrado hasta la mitad en el Editor de Rutas y en el simulador. Sí, se puede colocar usando el Editor de Rutas en su posición ideal, pero habría que repetir la operación cada vez y éso no sería práctico. Por éso, vamos a desplazarlo en el eje Y hasta que quede en su sitio. Cambiamos al Modo Mover:

Y bloqueamos los ejes X y Z en el Panel Constrain, puesto que sólo nos interesa moverlo en el eje Y (altura):

Ahora, con un suave movimiento vertical de ratón sobre la ventana Front, lo trasladamos hasta aquí:

Podemos observar que no lo hemos ajustado exactamente a la línea de suelo sino que lo hemos dejado un poco por debajo. Se hace así para asegurarnos de que el objeto no quedará después flotando, ni que sea 1 centímetro sobre el suelo. Una vez hecho ésto, tenemos el objeto puesto en su sitio definitivo. Si no ha quedado aproximadamente ahí, podemos seguir moviéndolo arriba y abajo libremente, hasta colocarlo en una posición que nos deje satisfechos (en un modelo de locomotora ó vagon, habría que ser mucho más exigentes, pero aquí no es necesario). Lo mejor será pulsar ahora File>Save para guardar los cambios.

Construcción del tejado

Hemos de tapar los agujeros del techo con algo y ése algo ha de ser un tejado. Durante su construcción, vamos a aprender nuevas técnicas que serán necesarias en proyectos similares pero también en modelos avanzados. Para empezar, vamos a crear una nueva Part u objeto que representará el tejado. En la textura, tenemos todos los elementos necesarios para "pintar" el modelo del dejado, que después habrá que colocar en su sitio.

Creamos una nueva Part pulsando en el cubo de la Barra de Primitivas, donde nos aparece la siguiente ventana, y rellenamos su parámetros como se muestra en la imagen:

Donde tenemos: Width=21 (50 cm de alero por las fachadas) Sections=2 (dos secciones en el eje X, al igual que el anterior objeto) Height=0.5 (objeto de 50 cm de alto, 1 sección) Depht=42 ( 1 metro de alero en cada testero) Origin Y Position=20 (el objeto aparece a 20 metros del suelo).

Lo que nos confirma que es posible crear un objeto con unas medidas dadas desde el principio, aunque después podamos modificarlo libremente, estirándolo y comprimiéndolo en cualquiera de sus ejes, o rotándolo igualmente en cualquiera de éllos. El resultado visible después de pulsar OK es el siguiente:

Y así, ha aparecido una especie de plancha que se convertirá después en el tejado en 3d, creando un detalle particular del objeto que siempre ayudará a una inmersión realista en la simulación.

Mapeado del tejado

Pero ahora, hay que pintarlo, por supuesto. Vamos a empezar con lo más sencillo que es la parte inferior. Pulsamos el botón derecho del ratón sobre el objeto y en la lista que aparece, seleccionamos Textures:

Para invocar la ventana Part Texture Assignments, que como sabemos, es la que nos permite "pintar" los objetos:

Aquí, pulsamos Browse en el campo Bottom, que es el que pinta de abajo hacia arriba un objeto. Seleccionamos nuestra hoja de textura y pulsamos Abrir:

Mapeando, mediante el ratón y/o las flechas de ajuste, conseguimos obtener los siguientes parámetros:

X Crop=1, Y Crop=1, X Size=46, Y Size=35. Ahora, al pulsar OK dos veces, tendremos pintada la parte inferior del tejado, con una textura gris uniforme con algo de ruido. A continuación pintaremos los laterales, que corresponden a Left y Right en la ventana Part Texture Assigments. Para pintar el lado Right, los parámetros serán los siguientes:

X Crop=1, Y Crop=310, X Size=510, Y Size=7. Usaremos los mismos parámetros para pintar Left.

Cuando tenemos los dos laterales mapeados, vamos con las tejas (parte superior, Top). Aquí hay que constatar el importante detalle de que en la hoja de textura sólo tenemos representada la mitad del tejado con las tejas, para obtener con éllo la máxima resolución de la imagen. Si tuviéramos las dos mitades, sería más fácil, pero perderíamos la mitad de resolución. Dado que los dos lados son iguales, representando uno sólo en la textura vamos a obtener más calidad. El proceso va a consistir en pintar los dos lados en Custom Mode casi totalmente a mano, con lo que vamos a aprender una nueva técnica avanzada de mapeo que nos será muy útil en Proyectos más avanzados.

Para empezar, vamos a pintar el tejado en Modo Part, seleccionando en Part Texture Assignments el área total correspondiente al tejado para toda la Part en Top:

Los parámetros para Top serán:

X Crop=319, Y Crop=13, X Size=192, Y Size=296, como se aprecia en la imagen anterior. Cuando pulsamos OK en ésta ventana y en Part Texture Asignments, veremos el área de la textura aplicada a la parte superior del tejado en la vista en 3d:

Pero está claro que no nos interesa que se vea así. Para arreglarlo, vamos a pasar al modo Poly y navegamos, usando las teclas del cursor, hasta el segundo polígono superior del tejado (el que se muestra seleccionado y señalado en la imagen siguiente:

Y ahora, pulsando el botón derecho sobre el objeto, para que aparezca el menú pop-up Propiedades del Objeto...

...pulsamos con el izquierdo sobre Textures y nos aparecerá la ventana Poligon Textures, en la que cambiaremos el selector a Custom Texture:

Y tras seleccionar Custom Texture y pulsar Texture Properties, entraremos en la ventana Texture Properties, donde veremos el área actual de la textura asignada al polígono seleccionado:

Ésta ventana de la imagen anterior es ligeramente diferente de la habitual. Está diseñada para mapear los polígonos en Modo Custom, moviendo a mano los puntos que están en los vértices. Aquí podemos pintar de forma totalmente personalizada un polígono, y es lo que ahora vamos a aprender a hacer.

situamos el puntero del ratón sobre la esquina superior derecha de la línea blanca que representa el área de la textura que está mapeando el polígono, hacemos clic con el botón izquierdo del ratón y, sin soltar el botón, lo arrastramos a la izquierda del área del tejado, ya que deseamos invertir lo que está ahora puesto sobre el polígono:

En la parte inferior de ésa ventana, observaremos unos valores que nos sirven de referencia para saber dónde ha quedado situado el vértice superior izquierdo (los valores no se fijan, van cambiando según la ubicación del puntero del ratón):

Ésos valores nos sirven ahora para, usando el mismo procedimiento, colocar en la misma coordenada vertical el vértice inferior derecho:

Y en el campo donde se muestran las coordenadas del vértice, habremos visto éstos valores:

Ahora, desplazaremos los vértices del lado derecho del área seleccionada hasta extender ésa área al máximo recomendado a la derecha (510 píxels). Primero el superior:

Con unos valores en el campo de las coordenadas de x:510 y:13. A continuación, el vértice inferior:

Con unos valores en el campo de las coordenadas de x:510 y:309. Pulsaremos OK aquí y en la siguiente ventana y el resultado será:

Con lo que tenemos ya medio tejado mapeado de forma personalizada. Para mapear el otro polígono del tejado, el procedimiento es el mismo, si bien lo tenemos más fácil porque únicamente tenemos que arrastrar los vértices del lado derecho al máximo recomendable a la derecha, es decir x:510. Cuando lo hayamos conseguido, el aspecto del tejado será éste:

Y ya sólo nos falta mapear los testeros del tejado para poder "doblarlo" y colocarlo en su lugar definitivo. Ahora sí que es un buen momento para File>Save.

Para texturizar los laterales vamos a usar la parte de la textura correspondiente a las texturas que representan las tejas vistas de canto. Abrimos el Proyecto y teniendo seleccionada la Part del tejado en Modo Part, pulsamos el botón derecho del ratón, seleccionamos Textures y en la ventana Part Texture Assignments, pulsamos Browse en la parte correspondiente a Front. Seleccionamos entonces nuestra textura y, procediendo como ya sabemos, enlazamos la parte de la textura que nos interesa:

Los valores correspondientes son: X Crop:174, Y Crop:1, X Size:337, Y Size:10. Estos valores pintan completamente el testero con ésa parte de la textura, el resultado visual es el siguiente:

Como vemos, las tejas aparecen demasiado grandes y tendremos que adaptarlas, usando el mismo modo empleado para los polígonos superiores del tejado. Para arreglarlo, pasamos al Modo Poly y navegamos por los polígonos del tejado hasta encontrar el primero correspondiente al testero frontal:

Y ahora pulsamos el botón derecho del ratón para abrir la ventana Poligon Textures, donde pondremos el selector en Custom Texture:

Al pulsar Texture Properties en ésa ventana, estaremos en disposición de manipular los vértices libremente, del mismo modo que hicimos con el techo. Deberemos seguir éste procedimiento: seleccionamos el vértice superior izquierdo (pulsando con el botón izquierdo del raton encima suyo) y, sin soltar el botón del ratón, lo arrastramos hacia la izquierda hasta que en la ventana inferior se muestre x:174 y:1:

Momento en el que soltamos el botón para dejarlo fijo. Con el vértice inferior izquierdo haremos exactamente lo mismo, arrastrándolo hacia la izquierda hasta que en la ventana se muestre x:174 y:11. Cuando tenemos hecho ésto, pulsamos OK en la ventana, también en la ventana Poligon Texture y el resultado visual será este:

Como podemos ver, tenemos las tejas del lado derecho más proporcionadas respecto a las que están en el tejado, algo que se puede perfeccionar mucho más, esto depende de la textura y de la selección que de ésta hacemos al pintar en modo custom. Ahora haremos lo propio con el polígono del lado izquierdo, en el que, como ya ocurrió con el primero del tejado, tendremos además que invertir su mapeado para que quede bien.

Navegamos hasta el polígono contiguo al que tenemos seleccionado (sólo hace falta pulsar una vez el cursor derecho) y repetimos la operación de pulsar el botón derecho para, en el popup que se muestra:

...que ya nos es muy familiar, seleccionar Textures para acceder a la ventana:

...donde marcamos Custom Texture, y procedemos en la ventana siguiente Texture Properties a seleccionar el vértice superior izquierdo y desplazarlo hacia la derecha hasta que en la casilla inferior los valores sean x:510 y:1, como se aprecia en el detalle de la ventana en la imagen siguiente:

Como vemos, hemos cruzado el vértice, para darle la vuelta al plano. Con el vértice inferior izquierdo hacemos lo propio, es decir desplazarlo hacia la derecha hasta que los valores sean x:510 y:11:

Sólo falta desplazar los vértices que han quedado ahora a la derecha hasta que abarquen los extremos del sector que nos interesa de la textura, que serán, para el vértice superior x:174 y:1:

...y para el vértice inferior, lógicamente, x:174 y:11:

Así que, al pulsar OK en ésta ventana y en la siguiente, observaremos en el modelo lo siguiente:

Donde se aprecia que las tejas del testero frontal ocupan el espacio que deben, y están en sentidos opuestos, como en la realidad. A continuación, procederemos al texturizado del testero trasero del tejado, siguiendo los mismos procedimientos. Primero tendremos que cambiar al Modo Part para pintar el testero trasero grosso modo, como hicimos con éste, con los mismos valores, para después pasar al Modo Poly, navegando mediante las teclas del cursor hasta los polígonos del testero trasero y repetir la operación de mapeado en Custom Mode que hemos visto aquí hasta conseguir lo mismo que en el testero frontal.

Hay que tener en cuenta que los polígonos del testero trasero están invertidos respecto a los del frontal, lo que condicionará cuál es el que tiene la textura en el sentido apropiado y en cual hay que invertirla. Hace falta paciencia, sobretodo cuando terminamos y entonces nos damos cuenta de que las tejas se ven al revés... pero es muy importante no desanimarse, en cualquier caso nos sirve para practicar el mapeado en Custom Mode. Cuando lo logremos texturizar correctamente, tendremos la pintura del tejado acabada y será un buen momento para File>Save.

El tejado, en su sitio

Ahora que están todos los polígonos del tejado pintados, llega el momento de darle su forma definitiva. ¿Porqué no se ha hecho antes? En esta clase de objetos es mejor pintarlos primero y darles la forma después, ya que haciéndolo al revés, al pintar en Modo Part los laterales Left y Right del objeto, se pintarían también los polígonos de la parte inferior y de la superior. El resultado en los testeros frontal y trasero sería igualmente extraño, ya que la parte dedicada a éstos de la hoja de textura no tiene la forma en ángulo y acabaríamos teniendo que retocar la pintura de todos los polígonos en Modo Custom.

Tal como lo hemos hecho, estamos listos para darle la forma al tejado sin tener que tocar nada de la pintura, y el resultado será el más correcto posible. Para hacerlo, abrimos el archivo y, teniendo seleccionada la Part que forma el tejado, pasamos al Modo Point.

Ya puestos, vamos a aprender unas sencillas técnicas para ampliar las vistas haciendo zoom en éllas, desplazarnos por las mismas... empezaremos por expandir la ventana Front (inferior izquierda), para ver a pantalla completa la ventana y poder trabajar con más precisión. Para lograrlo, colocamos el ratón encima del área de ésa ventana y pulsamos el botón derecho para mostrar el habitual pop-up:

Y seleccionamos Expanded View (Vista expandida). Ahora sólo vemos ésa ventana (Front) ocupando todo el espacio disponible en el interface:

Por supuesto eso mismo se puede hacer con cada una de las cuatro ventanas del interface (excepto para la función Center, que no funciona en la vista 3d). Como vemos, tenemos la línea del suelo centrada, pero lo que necesitamos centrar en la vista es la zona donde vamos a trabajar, que está más arriba. Para centrar la vista en el área o zona que nos interesa, colocamos el puntero del ratón de forma aproximada donde queremos centrar la vista y, sin moverlo, pulsamos el botón derecho del ratón para invocar de nuevo el habitual pop-up:

Y ésta vez, seleccionamos en la lista Center, el primero de todos. El resultado (relativo, depende del punto exacto donde se pulse) es:

Como vemos, tenemos la zona que nos interesa centrada. La operación se puede repetir tantas veces como sea preciso, en el punto que sea, sin afectar para nada al Proyecto. Nos podemos mover libremente, y si nos alejamos demasiado, volver al punto inicial pulsando en el pop-up (recordar que aparece siempre que se pulse el botón derecho del ratón) en la línea Reset Views (Resetear vistas):

que también anula los efectos del zoom devolviéndolo a su estado original. Y hablando de zoom, es la última función que nos interesa muchísimo dominar. Es tan sencillo como colocar el ratón sobre la zona que deseemos ampliar ó reducir y proceder igual que con el centrado (pulsar el botón derecho), seleccionando en éste caso en el pop up:

la línea Zoom In para ampliar y la línea Zoom Out para reducir la vista. En el caso que nos ocupa, hemos puesto el ratón sobre el área que queremos ver más de cerca, hemos pulsado el botón derecho y en el pop-up hemos pulsado Zoom-In. Hemos repetido la operación tres veces (el zoom funciona por pasos) y el resultado es:

Con lo cual, hemos conseguido acercarnos lo suficiente para tener una vista detallada de conjunto para lo que vamos a realizar a continuación. Estando en el Modo Point, marcamos la casilla que nos permite enlazar un grupo de puntos:

y, realizando un lazo alrededor como ya hicimos anteriormente, seleccionamos el grupo central:

Ahora que tenemos los puntos seleccionados (aparecen de color amarillo), marcaremos la casilla Move Mode (Modo mover):

y en Panel Constrain bloqueamos los ejes X y Z, de manera que el único movimiento posible sea en el eje Y (altura):

Entonces estamos ya preparados para colocar el puntero del ratón por debajo de la plancha del tejado y, pulsando el botón izquierdo y manteniéndolo pulsado, hacer un suave movimiento ascendente para mover ésos puntos hasta el lugar que nos interesa, y soltar el botón del ratón para dejarlos ahí:

Como vemos, hemos procurado que las líneas que conforman la inclinación del tejado sean lo más paralelas posibles entre sí. También advertimos que queda un espacio entre las dos partes del objeto que tenemos que arreglar. Pasamos a Modo Part (F5), abandonando el modo de puntos pues ya no tenemos nada más que hacer en él, y automáticamente tenemos todo dispuesto para, al igual que acabamos de hacer, pulsar con el botón izquierdo y realizar un corto movimiento desdendente para colocar el tejado en su lugar definitivo:

Respecto a la posición en la que hemos dejado el objeto, decir que es conveniente "enterrar" un poco la pieza del tejado sobre la pieza del edificio, para que no quede un pequeño espacio vacío a través del cual pase la luz (nada realista). Aquí es mejor "pasarse" un poco que quedarse corto.

Bien. sólo nos queda salir de la vista expandida realizando la misma operación, en decir pulsando con el botón derecho para mostrar el habitual pop-up:

...seleccionando de nuevo Expanded View para admirar el efecto conseguido en la vista 3d:

Y, tras comprobar que ésto ya se parece mucho más al edificio de las fotografías, realizar a continuación la muy recomendable acción File>Save.

Las chimeneas

Para finalizar la construcción de nuestro modelo, sólo nos faltan las chimeneas, que como podemos observar en las fotos, son dos, iguales. Este hecho nos va a permitir practicar otra nueva técnica, la de duplicar una Part y llevarla a la posición contraria exacta, cosa que se utiliza mucho en la construcción de modelos, tanto estáticos como animados (material rodante).

Para empezar, vamos a usar la barra de primitivas, haciendo clic en el cubo (New Box) para hacer aparecer un cubo con una única sección. En ésta ocasión, vamos a aprovechar todas las posibilidades de la ventana Box Parameters, como muestra de lo que es posible conseguir rellenando todos los campos adecuadamente:

Como vemos, hemos aprovechado para ponerle un nombre a la Part (aunque siempre se puede hacer posteriormente, por supuesto), que es chimenea. También observamos que las medidas del objeto son: en el eje X (Width), 2 metros, en el Y(Height), 3.5 metros y en el eje Z(Depth), 1 metro. Y hemos rellenado los campos que nos permiten hacer aparecer el centro geométrico del objeto en el punto que deseemos, para ahorrarnos tener que moverlo a mano. Este sistema es de gran ayuda en el caso de objetos animados, especialmente material rodante, aunque siempre es posible reposicionar una Part en el momento que deseemos. Ahora lo hemos hecho así sólamente para mostrar que es posible hacerlo. Las posiciones de origen para el objeto son: en el eje X(anchura), 4 metros, en el Y(altura) 24.3 metros y en el Z(profundidad), 18 metros.

Hemos usado decimales para que se vea que es perfectamente posible usarlos, y que se han de declarar siempre utilizando el símbolo punto (.). El símbolo coma (,) ó el apóstrofe (') no funcionarán.

Cuando pulsamos OK, el objeto aparece directamente en el sitio que nos interesa y con las medidas y proporciones adecuadas. En la imagen siguiente, hemos centrado las vistas sobre el objeto en cuestión para seguir trabajando en él cómodamente:

Si observamos la barra de estado, vemos a la derecha el nombre de la Part que tenemos actualmente seleccionada:

Ahora mismo es la última que hemos creado, pero puede ser cualquiera y ésto ayuda a reconocer la que nos interesa seleccionar. Antes del nombre vemos Object:2000:, lo que significa que el LOD actual en el que estamos trabajando es visible a 2000 metros. No vamos a entrar en éste Tutorial en la explicación de los LOD's (Level Of Distance) pues pertenece a un nivel bastante más avanzado.

El siguiente paso va a ser eliminar el polígono que no nos interesa, que es el que está situado debajo, mirando hacia el suelo. Queda oculto por el resto de elementos del modelo y lo podemos borrar tranquilamente. Cambiamos al Modo Poly (F7) y navegamos con las teclas del cursor hasta seleccionarlo:

Pulsando ahora la tecla Supr, lo haremos desaparecer para siempre, y estaremos listos para el siguiente paso, que va a ser aplicar las texturas. Retornamos al Modo Part (F5) y, pulsando el botón derecho sobre cualquier parte de las ventanas, invocamos el pop-up habitual:

Seleccionamos en la lista Textures para mostrar la ventana Part Texture Assignments:

empezando a texturizar como ya sabemos los frentes y laterales, pulsando el botón Browse del campo Left, seleccionando ahora nuestra textura en la ventana que aparece:

y pulsando Abrir, para pasar a seleccionar el área de la textura que corresponde a los laterales Left y Right:

Los valores, tanto para el lateral Left como para el Right, van a ser los siguientes: X Crop=275, Y Crop=196, X Size=21, Y Size=113.

Una vez texturizados los laterales Left y Right, pasamos a los testeros Front y Back (frontal y trasero). Los valores serán: X Crop=275, Y Crop=196, X Size=42, Y Size=113:

Lógicamente el testero Back (trasero) tendrá los mismos valores que éste, algo a lo que estamos ya habituados (iguales superficies, mismos valores). Para acabar, texturizaremos la superficie superior, denominada Top en el ámbito de TSM.

Los valores para Top serán:

X Crop=276, Y Crop=155, X Size=40, Y Size=39.

Una vez pulsados los correspondientes botones OK, contemplamos el resultado, que en la ventana 3d es el siguiente:

La buena noticia es que, con ésta última acción, hemos acabado completamente el proceso de mapeado y/o texturizado del modelo.

Duplicado de la chimenea

Para acabar totalmente el modelo, vamos a crear la chimenea del otro extremo del edificio.

Seleccionamos, en el Menú Edit, la opción Copy (ctrl+C) y a continuación, la opción Paste (crtl+V). Así, sencillamente, hemos realizado el duplicado del objeto, aunque visualmente no se advierte ninguna diferencia, si miramos en la barra de estado observamos que:

Es decir, la nueva Part se denomina chimenea.1, ya que de forma automática, y como no puede haber dos ó más Parts con el mismo nombre, el programa le ha asignado una nueva denominación. Aunque no se vea (ya que ocupa exactamente el mismo espacio 3d), está ahí, y ahora al desplazarla a su lugar definitivo lo vamos a demostrar. Pulsamos con el botón derecho en cualquier parte para acceder al pop-up:

...y seleccionamos la opción Current Item Properties para acceder a la ventana de propiedades de la parte seleccionada (chimenea.1). En ésta ventana vamos a actuar sobre el campo Z:, en el cual aparece el valor 18. Son los metros que hay desde el centro del modelo. Si escribimos un guión (-) delante, dejándolo en -18, vamos a enviar la Part seleccionada al otro extremo del eje Z:

Pulsamos OK y el resultado visual ha de ser el que muestra la siguiente imagen:

Esta es la mejor técnica para garantizar la simetría exacta de un modelo, imprescindible sobretodo para el material rodante. Ahora sí está completamente terminado el modelo, a falta sólo de reducir sus medidas (actualmente es realmente enorme), para exportarlo como objeto MSTS con el tamaño adecuado. Es un momento excelente para File>Save.

Exportando el Modelo

Una vez hemos dado por terminado el trabajo, vamos a exportarlo al formato que tienen los objetos 3d en MSTS, que tiene la extensión *.s. En el proceso, TSM empleará un programa incluído en Train Simulator que es el que convierte al formato, es por éso que necesitamos indicarle a TSM en las Preferencias del Programa el directorio donde tenemos instalado MSTS. Básicamente, éste proceso consiste en "triangulizar" las superficies, dividiéndolas en triángulos que es lo que precisa el motor gráfico del simulador para representar los modelos.

Abrimos el Proyecto y en el Menú File seleccionamos Create TS Object File... (ó pulsamos la tecla C) para abrir la ventana Create Train Simulator Object.

Una vez abierta, la ventana muestra el siguiente aspecto:

Vamos a explicar qué significa y qué función tiene cada parte de la ventana.

-Target (objetivo) se refiere al tipo de objeto y éste se selecciona a través del botón Project Properties. En el caso que nos ocupa, tenemos un objeto estático (Static Scenery).

-Route sirve para seleccionar la Ruta donde queremos que se instale automáticamente el modelo, y Class sirve para seleccionar la clase en la que queremos que se instale en el archivo *.ref de la Ruta en cuestión. En nuestro caso, no queremos instalarlo automáticamente y lo haremos en un directorio en concreto (el mismo donde tenemos el Proyecto de TSM y la textura en formato bmp), para instalarlo después manualmente en la Ruta que nos interese, aunque no exista todavía.

-Folder nos va a permitir precisamente escoger la carpeta del disco duro donde deseamos exportar el archivo.

-Filename es el nombre que le hemos puesto en la ventana Project Properties (como ya sabemos, es conveniente no poner espacios ni caracteres extraños).

A partir de aquí, tenemos dos secciones totalmente diferenciadas. La de la izquierda, Shape Definition Settings, nos permite escoger las texturas alternativas que se van a activar al construirse el archivo *.sd mediante un código diferenciado para cada una de éllas.

La sección de la derecha Processing Options (Opciones de proceso) es muy importante porque es la que define qué archivos se van a crear durante la exportación del modelo. Las casillas Convert Textures y Compress Textures sirven para exportar junto al modelo sus texturas, pero sólo sirve para modelos que no usan/tienen transparencias, y sólo deben estar activadas la primera vez que se exporta el modelo para no repetir el trabajo cada vez (es bastante más tiempo en el proceso e inútil), aunque se pueden desactivar y exportar la/s posible/s textura/s mediante otro programa, algo imprescindible si tienen texturas.

-Convert to Binary y Replace Existing Files son imprescindibles para la exportación y han de estar siempre activadas.

-Add Ref File Entr sirve para añadir la referencia del objeto automáticamente en el archivo *.ref, pero necesita tener seleccionada la Ruta en la que deseamos instalar el modelo en el campo de arriba Route.

-New .eng or .wag File y New Sound and Cab Files sirven exclusivamente para el material rodante (para que se activen en el campo de arriba Target es necesario un modelo de ése tipo), y sólo se deben activar la primera vez que se crea un modelo de material rodante si queremos que se construyan automáticamente los archivos de éste tipo, porque si están activadas después de modificar esos archivos, se sobreescribirían y perderíamos las modificaciones. Sin embargo sí se podrían volver a activar si ésas modificaciones han imposibilitado que el modelo de material rodante no funcione en el simulador y no tenemos claro qué modificación ha provocado su mal funcionamiento.

-Detail Level escribe el código necesario en el archivo *.sd para que el modelo sea visible con cierto nivel de detalle del simulador. Con el valor 0 será siempre visible y con el valor 10 sólo lo será si tenemos las barras de detalle totalmente a la derecha en las Opciones del simulador. Esto sirve para que en ordenadores no muy potentes la Ruta pueda funcionar, a costa de eliminar modelos que representan detalles no muy importantes.

-Simple Crash Detection sirve para crear la Bounding Box (coordenadas de la caja) que permite la colisión de un objeto contra otro. A no ser que pretendamos un efecto especial, debería activarse siempre.

A continuación, vamos a ver una imagen de la misma ventana con los parámetros que nos interesa y una explicación del porqué están seleccionados así:

Los parámetros que hemos escogido son los siguientes:

-Route: None - Specify Path (Ninguna - Especificar Directorio), que está arriba el todo de la lista desplegable que aparece al pulsar la flechita en el cuadrado, y que nos permite seleccionar el directorio donde queremos exportar el modelo.

-Folder: aquí, pulsando el botón de los puntos suspensivos a la derecha, hemos navegado hasta la carpeta que contiene el Proyecto y la textura en formato bmp, que es el directorio donde queremos exportar los archivos.

En las texturas alternativas hemos dejado puesto None, ya que por ahora no existen, y siempre estamos a tiempo de editar el archivo *.sd y modificar los códigos manualmente, que es lo que se suele hacer.

En Processing Options hemos desmarcado la única casilla que no nos interesa, porque no vamos a instalar el modelo automáticamente en una Ruta y por tanto, no debemos modificar ningún archivo *.ref. Recordemos que en la próxima exportación del objeto tendremos que desmarcar las casillas que tienen que ver con la exportación automática de las texturas.

El nivel de detalle lo hemos puesto en 5 porque se trata de un objeto de interés relativamente secundario. Esta consideración es muy relativa y depende de los gustos de cada cual, aunque siempre estamos a tiempo de modificar el archivo *.sd para alterar éste parámetro.

Nota: los ajustes de ésta ventana se guardan con el archivo de Proyecto al usar File>Save

Ahora, al pulsar Continue, se efectuará el proceso de exportación, y al finalizar tras unos segundos, se mostrará la siguiente ventana:

...en la que se muestran detalles pertenecientes a la exportación, y en su caso, los posibles mensajes de error. Vemos los archivos que se han creado, y nos dice que hay una copia guardada de ésta lista (que se sobreescribe con cada exportación) en la carpeta del programa. Ahora pulsamos Aceptar, seleccionamos File>Savepara guardar los cambios en la ventana Create Train Simulator Object y cerramos el programa.

Si nos dirigimos hasta la carpeta donde está nuestro Proyecto, deberíamos ver allí los siguientes archivos:

Los iconos correspondientes varían en función de los programas que tenemos instalados, pero lo ideal es que se muestren así (por ejemplo, los archivos *.sd asociados al Bloc de Notas) para poder abrirlos directamente haciendo doble clic sobre éllos (excepto en el caso del archivo *.dst, lo que no es conveniente, y asimismo en el caso de la copia de seguridad del Proyecto *.dst.bak, lo que no es necesario).

Así que, si tenemos instalado Shape Viewer, hacemos doble clic sobre el archivo peoncam1.s y podemos visionarlo libremente, ya con sus texturas:

Modificando el tamaño del modelo

Si colocamos el modelo junto a un vehículo, habremos comprobado que es realmente enorme:

Por lo tanto, hemos de cambiar su escala de manera proporcional. Abrimos el Proyecto y en Modo Part, vamos al Menú Edit y seleccionamos Select All (ó bien pulsamos "a"). Así, quedan seleccionadas todas las Parts que pertenecen al modelo, mostrándose ahora de color amarillo:

Antes, hemos cambiado el tamaño de la Rejilla (View>Grid Size) a 5 metros para tener una mejor referencia visual, ya que vamos a reducir la escala a ojo. Por otra parte, no importa la Part que tengamos seleccionada (2ª chimenea). Al seleccionar todas, es como si estuvieran enganchadas, se comportan como un todo. Ahora seleccionaremos la herramienta Scale:

Asegurándonos de que no se encuentra ningún eje bloqueado (si lo estuviera la transformación de tamaño no se produciría en ése ó ésos ejes):

Hecho ésto, estamos listos para realizar la transformación. Colocamos el ratón encima de cualquiera de las dos ventanas inferiores (aparece la S de Scale en el cursor), en un punto que nos permita mover el ratón libremente (esquinas superiores)y, pulsando el botón izquierdo del ratón y con un suave movimiento en diagonal hacia el centro, reducimos el tamaño general del modelo a una altura menor de 10 metros aproximadamente. Cuando soltamos el botón izquierdo del ratón, se actualizan las vistas, mostrando lo siguiente:

La flecha roja muestra el recorrido que ha hecho el ratón desde la esquina superior izquierda hacia el centro. Si nos equivocamos, podemos repetir la acción libremente, pero sólo si pulsamos Edit>Undo (Ctrl+Z) ó si salimos sin guardar, podremos recuperar el estado inicial.

Una vez tenemos el modelo con el tamaño que nos parece correcto, pulsamos en el Menú File>Create TS Object File... y se nos abre la ventana Create Train Simulator Object:

...en el mismo estado en que se quedó en la primera exportación que hicimos. Aquí, únicamente hay que hacer dos cambios: como no deseamos crear de nuevo la textura, desmarcamos las casillas Convert Textures y Compress Textures, quedando la ventana con el aspecto siguiente:

Y acto seguido, pulsamos en Continue para que se exporte de nuevo el modelo. Lo siguiente es sencillamente, hacer clic en File>Save con lo que daremos por concluído el Proyecto, a falta sólo de incorporar en el mismo, si se desea, texturas alterativas de Nieve y Noche:

Vemos en la imagen superior que el modelo tiene ahora un tamaño mucho más adecuado a los objetos de su entorno, como puede ser el material rodante, pero en cada caso concreto nos encontraremos diferencias y según sean los objetos que haya en sus inmediaciones, puede verse demasiado grande ó demasiado pequeño. Por ejemplo, si el objeto está destinado a estar lejos de la vía, es mejor que sea algo más grande de lo normal. En todo caso, siempre podemos cambiar su tamaño general, hasta adecuarlo a nuestras necesidades.

Correcciones finales

A menudo, cuando damos por finalizado un modelo y lo observamos con detenimiento (maniobra muy recomendable para evitar posteriores sorpresas), descubrimos que hemos cometido algunos errores, que lógicamente deberíamos corregir hasta perfeccionarlo y darlo finalmente por acabado. En nuestro caso hemos introducido un error (deliberadamente) para explicar a continuación cómo corregirlo, con vistas a resolver problemas similares en futuros modelos de cosecha propia. Si observamos la parte inferior de los testeros en Shape View:

...comprobamos que hay una parte de la hoja de textura, destinada a mostrar los cantos de las tejas perfectamente visible en la parte inferior. Esto significa que al mapear los testeros del objeto principal, nos hemos excedido unos cuantos píxels. Hemos de hacer desaparecer éste sector de la textura de la parte destinada a los testeros.

Abrimos el Proyecto, deseleccionamos todas las partes mediante el Menú Edit>Unselect All (deseleccionar todo) y, en Modo Part, navegamos usando las teclas del cursor hasta seleccionar la Part deseada, que es el cuerpo principal del edificio. Ahora, pulsamos el botón derecho del ratón sobre las ventanas y en el pop-up:

...seleccionamos Textures con lo que se abrirá la ventana Part Texture Assignments:

Pulsaremos sobre el botón Properties del campo Back, para actuar sobre éste. Aparecerá la ventana

Texture Properties, mapeado en Modo Part:

Aquí sólo hemos de cambiar el valor de Y Size:314 a Y Size:309 mediante las flechas y pulsar después OK. Haremos lo mismo con el campo Front para arreglar el testero contrario, y a continuación, pulsaremos OK en la ventana Part Texture Assignments para fijar los cambios y actualizar el mapeado en Modo Part. Observaremos, al actualizarse el mapeado, que el área de las tejas ha desaparecido de los testeros.

Aparentemente ya está todo bien, pero al reducir a lo alto el área de la textura que se aplica a los testeros, si observamos los respiraderos circulares de la parte superior, veremos que no son circulares del todo:

Si antes de ésta última modificación ya no lo éran, ahora menos lo serán al haber reducido a lo alto el área de la textura. Sólo se aprecia bien su falta de circularidad si lo observamos bien alineado con nuestro punto de vista, con la menor perspectiva posible. Por otra parte, éste elemento nos proporciona una pista muy valiosa sobre el ancho real del edificio, es decir que cuando existen elementos así (un círculo, un cuadrado perfecto) nos sirven de guía para proporcionar mejor un modelo del que no poseemos planos.

Para devolver el aspecto circular al respiradero y conseguir así una anchura más similar al edificio real, pondremos para empezar la Rejilla en 1 metro (View>Grid Size) y seleccionaremos todas las partes mediante el Menú Edit>Select All.

Seleccionamos la herramienta Scale en el Selector de Herramientas:

...y, en el Panel Constrain, bloqueamos los ejes Y y Z, dejando libre así la actuación sobre el eje X, que es el que define la anchura. Ahora, ubicamos el puntero del ratón sobre el centro de la ventana inferior izquierda (Front), pulsamos el botón izquierdo del ratón y, con un suave movimiento, ensanchamos el modelo hasta que alcance el tamaño suficiente para que el respiradero sea circular:

La flecha indica la dirección de movimiento del ratón, y en éste caso, el recorrido no ha de ser mucho. Vemos en la imagen que lo hemos ensanchado un poco por encima de los 8 metros, de forma aproximada, pues no es necesario actuar con precisión milimétrica, al contrario que cuando trabajamos sobre planos. Una vez hecho ésto, sólo queda exportar de nuevo el modelo (y después, como siempre, salvar el Proyecto mediante File>Save), salir del programa y abrir el modelo en Shape Viewer para comprobar el resultado final definitivo:

Y para acabar...

A partir de aquí, dependiendo siempre de nuestros objetivos, sólo nos restaría construir las texturas alternativas, nevadas y nocturnas, preparar el archivo *.ref de la Ruta en la que deseásemos colocar nuestro modelo y colocarlo en los lugares que nos interesase mediante el Editor de Rutas.

Habiendo seguido las indicaciones de éste Tutorial, y teniendo preparadas las texturas necesarias, estamos preparados para construir cualquier edificio con tejado a dos aguas, y por supuesto modelos más sencillos y, porqué no, atrevernos también con Proyectos más avanzados, porque los principios del modelado en 3d para Train Simulator con TSM ya los conocemos lo suficiente. Sólo es cuestión de animarse a resolver los problemas que plantea cada caso y practicar todo lo posible, porque la práctica nos acostumbrará a automatizar las tareas y realizarlas con seguridad.

Copyright © A.Asensio 2005-2020. Derechos reservados.