trensim.comSimulación Ferroviaria
   

Trensimpedia :: Simulación Ferroviaria.
 
 

:: 18.218.3.204 :: Discusión para esta IP :: Entrar

RS:Numeración dinámica de vehículos en RS

De TrenSimpedia

(Diferencias entre revisiones)
(Modificación de la malla del vagón)
(Modificación de la malla del vagón)
Línea 89: Línea 89:
[[Imagen:Numeros06.jpg|thumb|Matrícula texturada]]A continuación pasaremos a texturar cada polígono de la matrícula con las [[RS:Numeración_dinámica_de_vehículos_en_RS#Generación_de_las_texturas_de_las_ubicaciones_de_los_números|texturas de ubicaciones de números]] generadas anteriormente. Para el último dígito de la matrícula (primero por la derecha) usaremos la textura ''primarynumber_0.bmp'', para el penúltimo dígito usaremos la textura ''primarynumber_1.bmp'', para el antepenúltimo la textura ''primarynumber_2.bmp'', y así sucesivamente.
[[Imagen:Numeros06.jpg|thumb|Matrícula texturada]]A continuación pasaremos a texturar cada polígono de la matrícula con las [[RS:Numeración_dinámica_de_vehículos_en_RS#Generación_de_las_texturas_de_las_ubicaciones_de_los_números|texturas de ubicaciones de números]] generadas anteriormente. Para el último dígito de la matrícula (primero por la derecha) usaremos la textura ''primarynumber_0.bmp'', para el penúltimo dígito usaremos la textura ''primarynumber_1.bmp'', para el antepenúltimo la textura ''primarynumber_2.bmp'', y así sucesivamente.
-
===Grupo de las matrículas===
+
De estos conjuntos de dígitos para la matrícula podemos tener tantos como queramos en el mismo grupo, pues necesitaremos uno para cada ubicación de la matrícula del vehículo:
 +
[[Imagen:Numeros07.jpg|thumb]]
 +
* lado derecho, lado izquierdo
 +
* en la caja, en el bastidor
 +
* en los laterales, en los testeros
 +
* etc.
-
===Elementos de matrícula===
+
Para todos estos elementos es recomendable usar el shader '''TrainBasicObjectDiffuse.fx''', salvo que estemos componiendo números que deban iluminarse por la noche, como en los indicadores luninosos de matrícula de las locomotoras, en cuyo caso usaremos el shader '''Tex'''.
-
 
+
-
===LODs de las matrículas===
+
-
 
+
-
===Modificación del blueprint del vagón===
+
==Consideraciones de diseño==
==Consideraciones de diseño==

Revisión de 14:24 6 dic 2008

En Rail Simulator se contempla la posibilidad de que una misma malla de un vehículo, ya sea locomotora, coche o vagón, presente diferentes matrículas de forma individualizada. No es esta una técnica meramente estética, pues la matrícula personalizada de un vehículo también da nombre a éste en la simulación, lo cual se refleja en las marcas flotantes que se muestran sobre el material y se utiliza en las actividades llevadas a cabo en los escenarios.

Veamos como implementar esta técnica en nuestras creaciones:

Icono de en curso

Este artículo o sección se encuentra en fase de desarrollo por parte de un contribuidor. Es posible que la información suministrada aquí no sea completa. Ampliándolo ayudarás a mejorar la TrenSimpedia, pero recuerda que alguien posiblemente ya tiene en mente completarlo.


Contenido

Generación de las texturas de los números

Número con su canal Alpha
Antes de nada debemos proveernos de un juego de texturas para los elementos de la matrícula, típicamente los dígitos del 0 al 9. Cada número utilizará una, y sólo una, hoja de textura del estilo a la mostrada. El tamaño de los números suele ser de 32 x 64 píxeles, con el número en el color deseado sobre un fondo lo más parecido posible a la superficie sobre la que irá impreso el número, o sobre un color lo más neutro posible si el juego de números será reutilizado para varias superficies. En cualquier caso, la textura portará un canal alpha con la silueta del número lo más contrastado posible en blanco y negro.

El archivo ha de ser con formato ace y puede tener cualquier nombre, pero por convención se suele nombrar de la forma number_##.ace, donde ## indica el número o carácter representado en la textura. De esta forma, el archivo de la textura mostrada, que corresponde al número ocho, se denominaría number_8.ace.

Cabe señalar, como se verá más adelante, que además de poder reproducir números para las matrículas también cabe la posibilidad de reproducir letras y caracteres especiales.

Creación del blueprint de los números

Blueprint de un juego de caracteres para matrícula
Junto con el conjunto de texturas de números deberemos crear un archivo xml para el blueprint del juego de caracteres, que luego referenciaremos desde el blueprint del vehículo que incorpore matrículas.

El blueprint ha de ser del tipo Named texture set blueprint y puede tener cualquier nombre, pero por convención se suele nombrar con el sufijo _Digits, es decir en la forma XXXX_Digits.xml.

Este blueprint es muy simple y se compone básicamente de un conjunto de entradas S texture entry con únicamente dos parámetros en cada una de ellas:

  • Texture name - Carácter de la matrícula. Típicamente se tratará de un dígito numérico del 0 al 9, pero admite también caracteres alfabéticos o especiales.
  • Texture ID - ruta del archivo de textura asociado, dentro del Provider y del Product donde reside el blueprint.

El conjunto de Blueprint y texturas asociadas podemos tenerlo en un subdirectorio o incluso Provider cualesquieras, y de esta forma un mismo conjunto de dígitos podrá ser usado en varios vehículos.

Generación de las texturas de las ubicaciones de los números

Texturas de las ubicaciones de los números
Necesitaremos también un juego de texturas denominadas primarynumber_##.bmp donde ## indica un número de orden de un dígito de la matrícula.

Estos archivos se usarán para texturar los polígonos que recibirán los números dinámicos de la matrícula, y su contenido es intrascendente, pero su nombre determina cual de los caracteres de la matrícula se ubicará en cada uno de dichos polígonos.

Necesitaremos tantas de estas texturas como la longitud máxima de dígitos de la matrícula. Para una matrícula de cuatro dígitos (p.e. 1615) necesitaremos cuatro texturas: primarynumber_0.bmp, primarynumber_1.bmp, primarynumber_2.bmp y primarynumber_3.bmp. La longitud máxima de caracteres de una matrícula no está indicada en la documentación del simulador, pero personalmente he ensayado con 14 dígitos sin problemas.

La textura primarynumber_0.bmp se utilizará para texturar el polígono que deberá contener el ultimo dígito de la matrícula (unidades). La textura primarynumber_1.bmp se utilizará para el polígono que contendrá el penúltimo dígito de la matrícula (decenas). La textura primarynumber_2.bmp referenciará el antepenúltimo dígito de la matrícula (centenas) y así seguiremos con el resto.

El contenido de las texturas es irrelevante. Se recomienda usar texturas de 32x 32 pixels de un gris medio uniforme (128, 128, 128). No obstante, mi recomendación es que usemos una textura con un dígito impreso, lo cual nos permitirá, como veremos más adelante, identificar fácilmente la textura que hemos usado en cada polígono de la matrícula.

Si disponemos de la utilidad KRS Bin Convert podemos importar las texturas que al respecto encontraremos en la ruta "Rail Simulator\Assets\Kuju\RailSimulator\System\Textures".

Generación del archivo de esquema de numeración

Este es un archivo en formato csv (fichero de texto con los campos separados por comas) que contendrá la colección de matrículas válidas para el material en cuestión.

Podemos crearlo y editarlo con cualquier editor de texto como Notepad, o con más comodidad con alguna de las múltiples utilidades freeware disponibles como Notepad++.

El contenido se estructura en registros con dos primeros campos numéricos, que necesariamente deben ser cero, y un campo alfanumérico que contendrá una a una todas las matrículas posibles:

0,0,1601
0,0,1602
0,0,1603
0,0,1604
0,0,1605
0,0,1606
0,0,1607
etc...

Las matrículas reseñadas en este archivo pueden contener caracteres no numéricos, y ser de diferente longitud. Por ejemplo, El Santander Mediterráneo tuvo 15 coches de primera clase encuadrados en la serie AA-1 a AA-15. Parte del archivo csv correspondiente sería:

...
0,0,AA-8
0,0,AA-9
0,0,AA-10
0,0,AA-11
...

Obsérvese que las dos primeras matrículas mostradas tienen una longitud de cuatro caracteres, mientras que las dos últimas tienen una longitud de cinco caracteres. Esto no es ahora relevante (salvo por conocer que podemos hacerlo) pero más adelante deberemos tenerlo en cuanta al implementar la matrícula en la malla del coche.

Composición de la matrícula

A la hora de diseñar el contenido del archivo csv pudiera ser que decidiéramos incluir en él únicamente la parte variable y numérica de la matrícula, dejando la parte invariable fijada en la textura del vehículo. De esta forma, para la subserie de "Mikados" Renfe 141-2101 a 141-2125 podríamos incluir en el archivo csv tan sólo los dos últimos caracteres (01 a 25) dado que el resto de la misma no se altera. Esto, aunque es perfectamente factible, nos puede reportar dos problemas a la hora de usar el modelo en el simulador:

  • Por un lado la identificación de estas locomotoras en el simulador puede no ser reconocible para el jugador. De esta forma la 141-2109 el juego la reconocería tan sólo como 09.
  • Por otro lado, si otro autor modelase la Confederación e hiciera lo mismo un jugador que instalase ambas obtendría para la 242-2009 la identificación 09 también, con lo que no podría distinguir en las instrucciones si se trata de una o de otra locomotora.

Incluso la existencia del guión está plenamente justificada, y no tan sólo por costumbre, pues podemos de esta forma incluir en las matrículas la indicación de locomotora fuelizada: 242F2009 para la Confederación, pudiendo tener el carácter "F" asociada una textura con la letra efe sobre el guión.

Imagen:Aviso.gif Aviso

Por tanto la recomendación es que al componer el archivo csv se incluya en cada matrícula toda la información que ésta contenga, con el fin de poder identificar de forma única los vehículos en la simulación.

Modificación de la malla del vagón

Comentaremos la creación de una matrícula, entendiendo que si deseamos más de una par el vehículo tan sólo debemos repetir los mismos pasos para cada una de ellas.

Crearemos un polígono dividido en tantas celdas como dígitos deba tener la matrícula, a semejanza de la imagen adjunta, o bien crearemos los polígonos por separado, y los situaremos y fusionaremos un una única pieza a efectos de manejabilidad, aunque cada dígito puede ser un polígono separado.

Al grupo de esta pieza lo denominaremos primarydigits_##, donde ## será el número de dígitos que componen la matrícula, en el presente caso sería primarydigits_8. Se da por entendido que al nombre del grupo se antepondrá el prefijo de número de LOD y distáncia de visión para la matrícula, por ejemplo, 1_0050_primarydigits_8.

Matrícula texturada
A continuación pasaremos a texturar cada polígono de la matrícula con las texturas de ubicaciones de números generadas anteriormente. Para el último dígito de la matrícula (primero por la derecha) usaremos la textura primarynumber_0.bmp, para el penúltimo dígito usaremos la textura primarynumber_1.bmp, para el antepenúltimo la textura primarynumber_2.bmp, y así sucesivamente.

De estos conjuntos de dígitos para la matrícula podemos tener tantos como queramos en el mismo grupo, pues necesitaremos uno para cada ubicación de la matrícula del vehículo:

  • lado derecho, lado izquierdo
  • en la caja, en el bastidor
  • en los laterales, en los testeros
  • etc.

Para todos estos elementos es recomendable usar el shader TrainBasicObjectDiffuse.fx, salvo que estemos componiendo números que deban iluminarse por la noche, como en los indicadores luninosos de matrícula de las locomotoras, en cuyo caso usaremos el shader Tex.

Consideraciones de diseño

Matrículas no numéricas

Matrículas de diferentes longitudes para un mismo vehículo

Diferentes tipos de caracteres en un mismo vehículo

Diferentes secuencias de numeración en un mismo vehículo