Me permito copiar aquí lo que el usuario Transiberiano a publicado en el foro de Trainz respecto a lo que permite el TRS2004.
¿Qué permite realizar Trainz?
La creación de mundos virtuales en 3D en los que:
Puedes poner todo tipo de objetos relacionados con el ferrocarril:
- Todo tipo de vías, con o sin balasto, túneles y puentes.
- Desde luego, el material rodante.
- Todo tipo de señalización, tanto fija como dinámica y también luminosa, además de desvíos.
- Todo tipo de objetos y edificios relacionados con el mundo del ferrocarril, como estaciones, instalaciones ferroviarias e industriales, etc.
- Dispones de herramientas para medir, como reglas para la distancia, altímetro para la elevación y medidores de pendiente del terreno.
Puedes Crear elevaciones y depresiones del terreno y poner agua. Incluso puedes crear modelos topográficos fidedignos a partir de fotografías de satélite.
Situar splines regulares, tales como carreteras, caminos, vallas y muros, etc
Situar splines especiales, como vías invisibles dotar de movimiento a barcos, aviones, etc.
Situar objetos del terreno, desde edificios residenciales y comerciales de todo tipo, hasta gente, animales, vegetación, mobiliario urbano, máquinas y vehículos, etc.
Puedes texturizar el cielo y la tierra y el agua, de forma creativa o partir de fotos reales, normales o de satélite. O todo combinado.
Puedes personalizar desde el color de la luz natural, para simular las estaciones o la latitud geográfica real o crear efectos “psicodélicos”, hasta el clima y las condiciones meteorológicas, pasando por el sonido ambiente del layout.
Puedes personalizar la visión que tendré el jugador, al disponer de la facultad para situar cámaras en lugares estratégicos.
Para empezar, dispones de una base de datos con 20.000 objetos de todo tipo que puedes instalar gratuitamente en tu ordenador. Pero si tus conocimientos o ganas, van más allá, puedes crearlos tú mismo.
Tienes al menos 3 vertientes creativas principales:
2D. Esta faceta es ideal para los artistas de las 2 dimensiones. Se podrán crear texturas para cielo, tierra, agua, material rodante (repintados de trenes), edificios, mercancías (productos) y personajes.
3D. Esta área está firmemente asentada y se puede crear casi cualquier cosa, desde locomotoras, coches y vagones (creo que el material rodante es tu especialidad), hasta splines de cualquier tipo, edificios, gente, animales, vegetación, etc.
Escenarios. Los que dispongan de conocimientos mínimos de programación, pueden crear escenarios, que para decirlo muy simplificadamente, permiten un control muy fino del comportamiento del escenario, de los objetos y la gestión de situaciones complejas de tráfico ferroviario; es decir, dotar de viveza a un layout. Por poner aplicaciones que nos son cercanas, se han creado sistemas para que los usuarios puedan planificar itinerarios para los conductores. Y sistemas basados en reglas para controlar los sistemas de iluminación de los trenes. Y se podrían (de hecho se puede) hacer muchas más cosas, como el control dinámico del clima o dotar de aleatoriedad a una sesión de conducción para que cada vez se juegue de una manera dierente un mismo escenario...
Con TRS2004, además, en los objetos 3D se pueden incluir animaciones y efectos de partículas; y se pueden programar para dotarlos de la funcionalidad y controlar su comportamiento. El ejemplo más típico de esto es, efectivamente, todo el sistema de industrias interactivas para carga y descarga de mercancías, y las próximas estaciones de viajeros, que están a punto de salir.
¿Se me olvida algo? Seguro que sí. En cualquier caso, yo, lo que destaco de Trainz, es que no se limita a un pequeño número de características de las que enseguida te cansas, sino que te permite ir descubriendo numerosas facetas creativas que dan mucho juego. Incluso se pueden conducir trenes...
El sistema de programación de TrainZ
TrainZ cuenta con un entorno de programación propio y dispone de una librería de clases, conocida en el mundo informático como API. Esta clases, son el reflejo de los diferentes componentes del juego. Algunas son abstractas, y manejan conceptos. Por ejemplo, la clase Schedule se identifica con el concepto Itinerario que puede ser asignado a un conductor para que visite diferentes puntos de un circuito. Otras clases son reales, como la clase Signal, que se asocia con los semáforos que existen en el escenario. Así hasta 69 clases a disposición del programador.
Todas estas clases son tratadas mediante Trainzscript, un lenguaje orientado a objetos, que permite controlar de forma bastante precisa lo que ocurre en nuestro escenario. Todos los objetos del juego se comunican entre sí mediante mensajes. A cada objeto del juego, hay que dotarle de un mecanismo para cada tipo de mensaje que se desee tratar. Si a algún objeto le llega un mensaje para el cual no tiene mecanismo de tratamiento, simplemente lo ignora.
Hasta la aparición de TRS2004, la aplicación más habitual de este sistema de programación era el control del tráfico ferroviario. Para controlar el tráfico, se disponen de una serie de elementos estándar. Algunos de estos elementos nos son absolutamente familiares, otros no tanto. Estos son:
Las vías, por donde circulan los trenes.
Los trenes, o composiciones de vehículos y locomotoras.
Las agujas, como mecanismo de desvío entre una vía y otra.
Los semáforos, que actúan como reguladores o válvulas del flujo circulatorio.
Las marcas viarias, que se colocan en la vía y señalan, principalmente, el punto de origen de cada composición.
Los triggers, que también se colocan en la vía y que actúan como detectores de presencia de un tren en ese determinado punto de la vía.
Los permisos de circulación, que son peticiones que un tren realiza al juego, para circular por un determinado trayecto con seguridad.
Estos elementos se pueden utilizar combinadamente mediante la siguiente secuencia:
Un tren parte de una marca viaria y se pone en movimiento. Cuando lleva recorrida una determinada distancia se encuentra con un Trigger. Este Trigger envía un mensaje al tren, diciéndole “Estás en el punto X”. El tren trata este mensaje y se detiene. Frente a sí, tiene un desvío, y realiza una petición para circular hacia la derecha. Cuando recibe permiso, avanza hacia el semáforo que hay a junto al desvío. Si está rojo, se detiene hasta que se ponga verde, o si lo está ya, simplemente continúa hasta que se encuentre con un semáforo en rojo o bien hasta que encuentre con otro Trigger, momento en el cual se detendrá, volverá a pedir permiso de circulación, y así sucesivamente.
Desde la aparición de TRS2004, se han abierto nuevas vías para el control del tráfico ferroviario. Ahora, la planificación del tráfico ferroviario ya no está exclusivamente en manos de los programadores, sino que se ha democratizado. Los usuarios, sin importar el nivel de conocimientos que dispongan, pueden planificar sus propias rutas, mediante la utilización de interfaces amigables. Se ha introducido de forma mucho más abierta, el concepto de tren automático. Se han introducido también los conductores, de manera que ya no son los trenes los destinatarios de nuestras órdenes, sino conductores con rostro y con nombre propio dotados de inteligencia artificial a los que ya no se les da la orden de “toma el siguiente desvío a la izquierda”, sino que les dan órdenes de alto nivel tales como “Dirígete al puerto marítimo”
Se ha introducido el concepto de reglas de comportamiento, que se pueden utilizar no sólo con trenes y conductores, sino con los sistemas de señalización, con industrias interactivas, o con las condiciones meteorológicas del escenario.
Uno de los aspectos más interesantes introducidos con TRS2004 es la animación de los objetos 3D, y la capacidad para controlar dicha animación en tiempo real mediante programación en función de los eventos que se produzcan en el escenario. El ejemplo más evidente de esto es el sistema de carga y descarga de mercancías, en cual podemos ver, por ejemplo, cómo se activa un sistema de partículas simulando la salida de mineral de los depósitos de carga en una mina de carbón y cómo las tolvas de un tren se llenan de forma gradual, al posicionarse un determinado tren en el muelle de carga de esta industria.
Estos sistemas, para que funcionen, necesitan siempre de un programa de control Trainzscript que está asociado con dicho objeto. Como creadores, tendremos la facultad de programar los eventos y las repuesta de los objetos a dichos eventos, de manera que optimizando la relación recursos disponibles e impacto visual, proporcionemos al usuario la mejor experiencia de conducción imaginable.
Publicado en: http://foro.[TRENSIM]: Cita no autorizada.com/viewtopic.php?t=982