Chapitre 16 Caractéristiques spécifiques de ligne de la OR

Fonctionnalités d'itinéraire spécifiques OR


En règle générale et comme déjà indiqué, Open Rails fournit toutes les fonctionnalités d'itinéraire qui étaient déjà disponibles pour MSTS, ainsi que certaines opportunités telles que l'acceptation de textures au format .dds.


16.1 Modifications des fichiers .trk


De nombreuses fonctionnalités décrites dans ce chapitre nécessitent l'ajout de paramètres supplémentaires dans le fichier .trk de la route. Les paramètres supplémentaires peuvent être directement ajoutés à la fin (juste au-dessus de la dernière parenthèse) du fichier .trk de la route résidant dans le dossier racine de la route. N'ajoutez pas de tels paramètres dans d'autres positions du fichier, car cela créerait des problèmes si vous souhaitez utiliser les éditeurs MSTS avec la route associée. Cependant, pour éviter de modifier le fichier d'origine, la méthode Include décrite ici s'applique également au fichier .trk, en créant un nouveau fichier .trk inséré dans un dossier OpenRails dans le dossier racine de la route. Par exemple, dans le cas du paramètre nécessaire pour éviter les arbres forestiers sur les pistes (voir ici), ce fichier .trk supplémentaire contiendra :


inclure ( ../Surfliner2.trk )


ORTSUserPreferenceForestClearDistance ( 2 )


Seul OR cherchera dans le dossier Openrails.


Pour une liste complète des paramètres, voir Développement de contenu OU - Paramètres et jetons


16.2 Répétition des textures de terrain enneigé


OR fournit un moyen simple d'ajouter des textures de terrain de neige : les noms de texture de neige par défaut suivants sont reconnus : ORTSDefaultSnow.ace et ORTSDefaultDMSnow.ace, à positionner dans le dossier TERRTEX\SNOW de l'itinéraire concerné. Pour les textures de neige manquantes dans le sous-dossier SNOW, et uniquement pour elles, ORTS utilise ces fichiers pour afficher la neige, s'ils sont présents, au lieu d'utiliser le fichier blank.bmp.


Pour avoir un ensemble de textures de neige de travail minimum, le fichier microtex.ace doit également être présent dans le sous-dossier SNOW.


16.3 Textures de neige avec textures de nuit


MSTS n'autorisait pas l'utilisation de textures de neige avec des textures de nuit. Cela signifiait avoir des bâtiments sombres lors de l'exécution d'une activité la nuit lorsque le temps est réglé sur la neige. Il s'avère que OR est capable de fonctionner avec des textures de neige et des textures de nuit. Pour ce faire, vous devez créer le dossier Night\ dans le répertoire Textures\Snow\ et copier les textures nécessaires dans le dossier Night\. Cela permettra aux textures nocturnes d'être visibles lorsque vous travaillez dans la neige la nuit. Gardez à l'esprit que les textures nocturnes actuelles telles que les bâtiments n'incluent pas la neige, donc de nouvelles textures devront être créées.


Un avertissement, si vous décidez de le faire, il est possible que vous rencontriez des problèmes de ressources.


16.4 Utilisation des platines et transférables


Une fonctionnalité intéressante disponible dans OR est celle de faire fonctionner les platines et les transférables. Dans MSTS, ils sont statiques et ne peuvent pas faire pivoter et transférer des rames. Les platines et les transférables sont gérés de manière similaire par OR, et partagent également une partie importante du code. Par conséquent, il sera fait ici référence aux platines, puis seules les différences pour les transférables seront décrites.


Attention : Les platines et les transférables ne peuvent pas être directement connectés à un interrupteur principal. Une section de voie d'au moins 1 mètre doit être posée entre les deux.


16.4.1 Platines


La meilleure façon de rendre un plateau tournant opérationnel est de se référer à un exemple. Voici donc les instructions et les fichiers pour tester cette fonction, aussi bien pour la route Catane-Messine (SICILE 1) que pour les autres routes utilisant a1t27mturntable.s. L'itinéraire Catane-Messine peut être téléchargé ici . Un fichier .ws dans le sous-répertoire World doit être remplacé par le fichier w-005631+014158.zip disponible dans le pack Open Rails dans le sous-dossier Documentation\SampleFiles\Manual. (cela n'a rien à voir avec les platines, c'est un fichier qui contient des données incohérentes qui peuvent provoquer un plantage). Svp. notez que les autres exemples de fichiers cités dans ce paragraphe sont également disponibles dans ce sous-dossier.


Deux chemins de test, inclus dans le fichier Turntable_PATHS.zip, un pour chaque plaque tournante de l'itinéraire, qui peuvent être utilisés soit en mode exploration, soit dans les activités sont disponibles dans le pack Open Rails. Dans le dossier de la route, un sous-dossier OpenRails doit être créé, qui doit contenir 2 fichiers. Le premier suit le fichier turntables.dat, qui contient les données nécessaires à OU pour localiser et spécifier la plaque tournante.


turntables.dat:


2

Turntable(

WFile ( "w-005625+014198.w" )

UiD ( 1280 )

XOffset ( 0 )

ZOffset ( 13.4 )

TrackShapeIndex ( 253 )

Animation ( "TRACKPIECE" )

Diameter ( 27 )

)

Turntable(

WFile ( "w-005631+014158.w" )

UiD ( 638 )

XOffset ( 0 )

ZOffset ( 13.4 )

TrackShapeIndex ( 253 )

Animation ( "TRACKPIECE" )

Diameter ( 27 )

)


Pour générer ce fichier pour d'autres itinéraires, il faut prendre en compte :


• la première ligne doit être vide


• le nombre de la deuxième ligne (2 dans le fichier ci-dessus) est le nombre de plaques tournantes en fonctionnement dans l'itinéraire


• WFile est le nom du fichier .w où la platine est présente


• Le numéro dans la ligne UiD est le numéro UiD du bloc TrackObj () dans le fichier .w lié à la platine


• XOffset, YOffset et ZOffset sont les décalages du centre de rotation de la plaque tournante par rapport au zéro de la forme de la plaque tournante


• TrackShapeIndex est l'index du bloc TrackShape () dans tsection.dat qui fait référence à la plaque tournante ; veuillez noter que si un nouveau bloc TrackShape () pour la platine est nécessaire, il n'est pas nécessaire de modifier tsection.dat ; il est possible de procéder comme décrit ici


• Le paramètre Animation est le nom de la matrice de la pièce en rotation dans le fichier .s


• la valeur Diamètre est le diamètre de la plaque tournante en mètres.


Le fichier ci-dessus fait référence aux platines utilisant la forme a1t27mturntable.s.


Le deuxième fichier à insérer dans le sous-dossier Openrails de la route est un petit fichier d'intégration .trk qui indique le nom du fichier son .sms à associer au plateau tournant. Pour la route SICILIA 1 ce fichier est donc nommé SICILIA 1.trk, comme son fichier parent. Voici le contenu du fichier.


SICILE 1.trk :


inclure ( "../Sicilia 1.trk" )


ORTSDefaultTurntableSMS ( turntable.sms )


La première ligne doit être vide.


Le fichier a1t27mturntable.s doit être modifié pour ajouter les données d'animation, car MSTS l'a fourni sous forme de fichier statique. Pour cela, décompressez-le avec Route Riter ou Shapefilemanager et insérez juste au-dessus de la dernière parenthèse le contenu du fichier a1t27mturntable_animations.zip. Si d'autres fichiers .s doivent être utilisés pour les platines, ou si de nouveaux doivent être développés, il faut considérer que l'animation de rotation doit être la suivante :


animation ( 3599 30

anim_nodes ( ..

..

..

..

anim_node TRACKPIECE (

controllers ( ..

tcb_rot ( 5

tcb_key ( 0 0 0 0 1 0 0 0 0 0 )

tcb_key ( 900 0 0.7071068 0 0.7071067 0 0 0 0 0 )

tcb_key ( 1800 0 1 0 0.0 0 0 0 0 0 )

tcb_key ( 2700 0 -0.7071068 0 0.7071067 0 0 0 0 0␣

˓→)

tcb_key ( 3600 0 0 0 -1 0 0 0 0 0 )

)


ou comme suit :


animation ( 3599 30

anim_nodes ( ..

..

..

..

anim_node WHEEL1 (

controllers ( 1

tcb_rot ( 5

slerp_rot ( 0 0 0 0 1 )

slerp_rot ( 900 0 0.7071068 0 0.7071067 )

slerp_rot ( 1800 0 1 0 -1.629207E-07 )

slerp_rot ( 2700 0 -0.7071066 0 0.7071069 )

slerp_rot ( 3600 0 0 0 1 )

)

)

)


Les noms ci-dessus des anim_nodes sont bien sûr au choix. Le sens de rotation de l'animation tel que défini ci-dessus doit être dans le sens inverse des aiguilles d'une montre.


Dans le dossier Sound de base (pas celui de la route), le fichier .sms turntablesSOUND.zip doit être ajouté pour fournir du son lorsque la platine tourne. Il utilise les deux fichiers MSTS .wav par défaut pour le son. Ils ont un volume un peu faible. Il est ouvert à tous d'améliorer ces fichiers. La gâchette discrète 1 est déclenchée lorsque la plaque tournante commence à tourner à vide, la gâchette discrète 2 est déclenchée lorsque la plaque tournante commence à tourner avec le train à bord et la gâchette discrète 3 est déclenchée lorsque la rotation s'arrête.


Pour aider à générer les entrées tsection.dat pour les nouveaux types de platines, une feuille de calcul .xls approximative (turntable_sectionidxs.xls) peut être trouvée dans Documentation\SampleFiles\Manual. Il calcule les paramètres X, Z et degrés à insérer dans les lignes SectionIdx du bloc TrackShape dans le fichier tsection.dat. Vous n'avez qu'à insérer le diamètre du plateau tournant et le pas de degré. Bien entendu il ne faut prendre que les lignes jusqu'à celle qui précède celle avec degrés = 180.


Des plateaux tournants qui peuvent tourner à moins de 360 degrés peuvent également être implémentés, comme celui de l'image ci-dessous :

Dans ce cas, la ligne suivante doit être ajoutée à la fin du bloc Turntable() dans le fichier turntables.dat pour un plateau tournant qui ne peut tourner qu'entre 0 et 40 degrés :


AngleMax ( 40 )


Les angles augmentent dans le sens des aiguilles d'une montre.


Déjà de nombreux plateaux tournants existants ont été animés avec succès et de nombreux nouveaux ont été créés. Plus peut être lu dans ce fil de discussion.


16.4.2 Cessibles


Les informations pour les transférables sont également stockées dans le fichier turntables.dat. Ce fichier peut contenir des informations pour les transférables et les platines ensemble. Voici un exemple d'un tel fichier pour une platine et un transférable :


2

Turntable(

WFile ( "w-005625+014198.w" )

UiD ( 1280 )

XOffset ( 0 )

ZOffset ( 13.4 )

TrackShapeIndex ( 253 )

Animation ( "TRACKPIECE" )

Diameter ( 27 )

)

Transfertable(

WFile ( "w-005578+014976.w" )

UiD ( 72 )

XOffset ( 0 )

ZOffset ( 15.0)

TrackShapeIndex ( 37300 )

Animation ( "TRACKPIECE" )

Length ( 29.4 )

)


Les paramètres ont la même signification que pour les platines. "Longueur" est la longueur du pont de transfert (donc la longueur de la voie au-dessus ou un peu moins, selon les dimensions du bassin du transférable).


Le format de fichier d'intégration .trk décrit au paragraphe précédent peut également être utilisé pour les transférables, utilisant le même son.


Dans la tsection.dat standard, il n'y a pas de transférables utilisables définis. Par conséquent, au moins un nouveau bloc Track-Shape doit être créé. Dans ce cas également, il est suggéré de définir le bloc supplémentaire dans le tsection.dat spécifique de l'itinéraire.


Voici ci-dessous un exemple de tsection.dat spécifique à une route contenant un TrackShape pour un transférable :


include ( "../../../Global/tsection.dat" )

_INFO ( Track section and shape addition for transfer table derived from turntable 27m )

TrackSections ( 40000

_SKIP ( No change here )

)

TrackShapes ( 40000

_INFO(TrackShape for for 30 m transfer table derived from turntable 27m)

TrackShape ( 37300

FileName (

A1t30mTransfertable.s )

NumPaths ( 9 )

SectionIdx ( 1 0 -0.18 -1.1 0 339 )

SectionIdx ( 1 4.985 -0.18 -1.1 0 339 )

SectionIdx ( 1 9.97 -0.18 -1.1 0 339 )

SectionIdx ( 1 14.955 -0.18 -1.1 0 339 )

SectionIdx ( 1 19.94 -0.18 -1.1 0 339 )

SectionIdx ( 1 24.925 -0.18 -1.1 0 339 )

SectionIdx ( 1 29.91 -0.18 -1.1 0 339 )

SectionIdx ( 1 34.895 -0.18 -1.1 0 339 )

SectionIdx ( 1 39.88 -0.18 -1.1 0 339 )

)

)


La première ligne doit être vide.


Le bloc d'animation pour le transférable ci-dessus est le suivant :


animations ( 1

animation ( 3600 30

anim_nodes ( 2

anim_node BASIN (

controllers ( 0 )

)

anim_node TRACKPIECE (

controllers ( 1

linear_pos ( 2

linear_key (

0

0

-1.92177

0

)

linear_key (

3600

39.88

-1.92177

0

)

)

)

)

)

)

)


3600 n'est pas une valeur obligatoire, cependant pour avoir une vitesse de transfert raisonnable un nombre de clés d'animation égal à 60 - 90 tous les mètres doit être sélectionné.


16.4.3 Ascenseurs pour locomotives et wagons


L'ascenseur est géré par ORTS comme un transférable à déplacement vertical. Ainsi, les fichiers nécessaires sont les mêmes que ceux utilisés pour un transférable, avec le contenu modifié si nécessaire.


Les informations permettant d'identifier un ascenseur dans un itinéraire sont stockées dans le fichier turntables.dat, comme c'est le cas pour les platines et transférables. Le même fichier peut stocker des informations pour déplacer des tables de différents types. Voici un fichier turntables.dat qui contient des informations pour un ascenseur :


1

Transfertable(

WFile ( "w-005578+014976.w" )

UiD ( 75 )

XOffset ( 0 )

YOffset ( -0.18 )

ZOffset ( 13.405)

VerticalTransfer ( 1 )

TrackShapeIndex ( 37301 )

Animation ( "TRACKPIECE" )

Length ( 26.81 )

)


Ce qui l'identifie comme un ascenseur est la présence du paramètre VerticalTransfer avec la valeur 1. L'autre différence avec un transférable est la présence du paramètre YOffset, qui est le décalage vertical de la position zéro de l'ascenseur par rapport au fichier de forme zéro .


Un exemple du bloc d'animation dans le fichier de forme d'ascenseur est illustré ci-dessous :


animations ( 1

animation ( 1800 30

anim_nodes ( 2

anim_node BASIN (

controllers ( 0 )

)

anim_node TRACKPIECE (

controllers ( 1

linear_pos ( 2

linear_key (

0

0

-1.92177

0

)

linear_key (

1800

0

6.07823 0

)

)

)

)

)

)

)


qui génère un mouvement vertical d'une envergure de 8 mètres qui est parcouru en 60 secondes. Bien sûr, la valeur 1800 peut être modifiée pour obtenir la vitesse de déplacement souhaitée.


L'ascenseur doit également être défini en tant que TrackShape dans tsection.dat. Il est suggéré de le définir dans un fichier d'extension tsection.dat spécifique à l'itinéraire, qui, pour l'exemple d'ascenseur, est le suivant :


include ( "../../../Global/tsection.dat" )

_INFO ( Ajout de section et de forme de voie pour table de transfert dérivée de la plaque tournante 27m )

TrackSections ( 40000

_SKIP ( Pas de changement ici )

)

TrackShapes ( 40000

_INFO ( Ajout de section et de forme de voie pour table de transfert dérivée de la plaque tournante 27m )

TrackShape ( 37301

FileName ( A1t27mVerticalTransfertable.s )

NumPaths ( 2 )

SectionIdx ( 1 0 -0.18 0.0000 0 338 )

SectionIdx ( 1 0 7.82 0.0000 0 338 )

)

)


Pour insérer l'ascenseur dans un itinéraire utilisant TSRE5, il faut se rappeler que ce dernier ne regarde pas le fichier tsection.dat dans le sous-dossier Openrails. Ainsi, pour le seul temps de l'édition de la route, le bloc TrackShape() doit être inséré dans le tsection.dat global. Une fois l'édition de l'itinéraire terminée, le blocage peut être supprimé. Tsection.dat build 38 ou supérieur est requis dans le dossier Global principal.


Lors de l'exécution, l'ascenseur est déplacé avec les clés utilisées pour les transférables et les plaques tournantes. Alt-C déplace l'ascenseur vers le haut, tandis que Ctrl-C déplace l'ascenseur vers le bas.


16.4.4 Considérations relatives à la pose et à l'exploitation du chemin


En construisant un chemin qui entre dans la plaque tournante ou transférable, en sort par le côté opposé et possède un point de retournement quelques mètres après la fin de la plaque tournante ou transférable, il est possible d'utiliser la plaque tournante ou transférable en mode activité. Le joueur enfoncera la consistance dans la platine ou transférable et l'arrêtera. A ce point le point d'inversion aura effet et placera logiquement le consist dans le sous-chemin de retour. Le joueur mettra la composition en mode manuel, fera tourner le plateau tournant (au cas où il utiliserait un plateau tournant)


de 180 degrés et revenir en mode automatique. À ce stade, la composition sera à nouveau sur le chemin d'activité.


Si au contraire le joueur veut que la composition sorte vers d'autres pistes, il doit conduire la composition en mode manuel hors de la platine ou transférable. S'il veut ensuite refouler le train dans la plaque tournante ou transférable et faire pivoter ou translater le train pour qu'il sorte de la plaque tournante ou transférable sur la voie où il y est entré initialement, il peut remettre le train en mode auto après rotation, à condition le chemin est construit comme défini ci-dessus.


En utilisant la fonction pour changer de train de joueur, il est également possible d'entrer et de sortir n'importe quelle locomotive sur n'importe quelle voie, par ex. une rotonde ou utiliser un locotracteur pour faire entrer et sortir un wagon d'une table transférable.


16.5 Modificateurs de fichiers .w


Un sous-dossier Openrails peut être créé dans le dossier World de l'itinéraire. Dans ce sous-dossier, des morceaux de fichiers .w peuvent être positionnés. ORTS lira d'abord les fichiers .w de base, puis corrigera ces fichiers avec les morceaux de fichiers du sous-dossier Openrails. Cela peut être utilisé à la fois pour modifier des paramètres ou pour ajouter des paramètres spécifiques à l'OR. Voici un exemple de w. morceau de fichier pour le fichier USA1 .w w-011008+014318.w :


SIMISA@@@@@@@@@@JINX0w0t______

Tr_Worldfile (

CarSpawner (

UiD ( 532 )

ORTSListName ( "List2" )

)

CarSpawner (

UiD ( 533 )

ORTSListName ( "List3" )

)

Static (

UiD ( 296 )

FileName ( hut3.s )

)

)


Avec les deux blocs de bloc CarSpawner OR interprète les CarSpawners avec le même UiD présent dans le fichier .w de base comme des étendus (voir ici). Avec le bloc statique OU remplace la forme définie dans le bloc statique avec le même UiD dans le fichier .w de base par celui défini dans le bloc de fichier. WAny Pickup, Transfer, Forest, Signal, Speedpost, LevelCrossing, Hazard, CarSpawner, Static, Gantry peuvent avoir des paramètres modifiés ou ajoutés par le fichier .w "modifiant".


Attention : si la route est modifiée avec un éditeur de route, les UiD peuvent changer et les morceaux de fichier .w peuvent donc être obsolètes et doivent être modifiés.


Attention : La saisie de données erronées dans les morceaux de fichier .w peut entraîner des dysfonctionnements du programme.


16.6 Listes de générateurs de voitures multiples


Avec cette fonctionnalité spécifique à OR, il est possible d'associer n'importe quel générateur de voitures à l'une des listes de voitures supplémentaires, permettant ainsi par ex. faire apparaître différents véhicules sur une autoroute et sur une petite route de campagne.


Les listes de voitures supplémentaires doivent être définies dans un fichier nommé carspawn.dat à insérer dans un sous-dossier Openrails dans le dossier racine de l'itinéraire. Ce fichier doit avoir la structure comme dans l'exemple suivant :


SIMISA@@@@@@@@@@JINX0v1t______

3

CarSpawnerList(

ListName ( "List1" )

2

CarSpawnerItem( "car1.s" 4 )

CarSpawnerItem( "postbus.s" 4 )

)

CarSpawnerList(

ListName ( "List2" )

3

CarSpawnerItem( "policePHIL.S" 6 )

CarSpawnerItem( "truck1.s" 13 )

CarSpawnerItem( "postbus.s" 6 )

)

CarSpawnerList(

ListName ( "List3" )

2

CarSpawnerItem( "US2Pickup.s" 6 )

CarSpawnerItem( "postbus.s" 13 )

)


Les 3 premiers définissent le nombre de listes de générateurs de voitures supplémentaires. Pour associer un bloc CarSpawner à l'une de ces listes, une ligne comme celle-ci :


ORTSListName ( "List2" )


doit être inséré dans le bloc CarSpawn, dans n'importe quelle position après la ligne UiD.


Si le bloc CarSpawner ne contient pas une telle ligne supplémentaire, il sera associé au fichier de base carspawn.dat présent dans le répertoire racine de la route.


Attention : si l'itinéraire est modifié avec l'éditeur d'itinéraire MSTS modifiant les fichiers .w faisant référence aux générateurs de voitures supplémentaires, la ligne ci-dessus sera supprimée.


Pour éviter ce problème, deux autres possibilités s'offrent à vous pour insérer la ligne supplémentaire. L'un est décrit ici. L'autre consiste à utiliser l'éditeur de route TSRE spécifique à OR, qui gère nativement cette fonctionnalité. Dans ce dernier cas également, cependant, si la route est modifiée ultérieurement avec l'éditeur de route MSTS, la ligne ci-dessus sera supprimée.


16.7 Générateurs de voitures utilisés pour la marche des personnes


L'éditeur d'itinéraire TSRE spécifique à l'OR est capable de générer des chemins de génération de voitures également en dehors des routes. Cela a de nombreuses applications, dont l'une est de générer des chemins pour les personnes qui marchent. Les personnes qui marchent ont la particularité que sur un chemin incliné, elles ne s'inclinent pas comme le ferait un véhicule, mais restent verticales. Pour permettre à OR de gérer spécifiquement ces générateurs de voitures (ou de meilleures personnes), le paramètre IgnoreXRotation () doit être inséré dans la liste des générateurs de voitures, juste après le nombre d'éléments du générateur de voitures.

Voici un exemple de fichier générateur de voitures spécifique aux piétons à insérer dans le sous-dossier Openrails de l'itinéraire ( voir ici ) :


SIMISA@@@@@@@@@@JINX0v1t______

1

CarSpawnerList(

ListName ( "People1" )

3

IgnoreXRotation ()

CarSpawnerItem( "walkingperson1.s" 3 )

CarSpawnerItem( "walkingperson2.s" 1 )

CarSpawnerItem( "walkingperson3.s" 1 )

)


16.8 TrackSections et TrackShapes spécifiques à une route


Il arrive assez souvent que pour des itinéraires spéciaux, des TrackSections et des TrackShapes spéciaux soient également nécessaires. Étant donné que le fichier tsection.dat est unique pour chaque installation, pour de telles routes, une installation dite de mini-route était nécessaire. La présente fonctionnalité surmonte ce problème. La route utilise toujours le tsection.dat commun, mais elle peut y ajouter des TrackSections et des TrackShapes spécifiques à la route, et peut modifier les communes. Cela se produit en plaçant dans un sous-dossier OpenRails dans le dossier racine de la route un morceau de tsection.dat spécifique à la route, qui comprend les TrackSections et les TrackShapes à ajouter ou à modifier. Voici un exemple fictif pour la route USA1 (la première ligne doit être vide) :


include ( "../../../Global/tsection.dat" )

_INFO ( Track sections and shapes specific for USA1

)

_Skip (

Further comments here

)

TrackSections ( 40000

_Skip (

Comment here

)

_SKIP ( Bernina )

TrackSection ( 33080

SectionSize ( 0.9 1.5825815 )

)

TrackSection ( 19950

SectionSize ( 0.9 12 )

)

)

TrackShapes ( 40000

_Skip (

Comment here

)

-INFO(Bernina Pass narrow gauge sections / wood tie texture)

_INFO(by Massimo Calvi)

_INFO(straight sections)

TrackShape ( 30000

FileName ( track1_6m_wt.s )

NumPaths ( 1 )

SectionIdx ( 1 0 0 0 0 33080 )

)

TrackShape ( 19858

FileName ( track12m_wt.s )

NumPaths ( 1 )

SectionIdx ( 1 0 0 0 0 19950 )

)

)


Dans cet exemple fictif, les premières TrackSection et TrackShape sont également présentes dans Global tsection.dat, de sorte que l'effet est que la TrackSection et la TrackShape d'origine sont modifiées ; les seconds ne sont pas présents, ils sont donc ajoutés aux listes.


Remarque : Pour pouvoir utiliser ces éléments modifiés avec les MSTS RE et AE réels, il est nécessaire que ces éléments modifiés soient également présents dans le fichier tsection.dat d'origine. Cependant, lorsque le travail avec le RE est terminé et que la route est distribuée, il suffit de distribuer le fichier tsection.dat spécifique de la route ci-dessus.


16.9 Extensions de câbles aériens


16.9.1 Double fil


OU fournit une fonction expérimentale qui active le fil supérieur pour les itinéraires électrifiés. Le paramètre facultatif ortsdoublewireenabled dans le fichier .trk de la route peut forcer l'activation ou la désactivation de l'option en remplaçant le paramètre utilisateur dans le panneau des options.


Dans cet exemple, le fil supérieur est activé et remplace le paramètre utilisateur :


OrtsDoubleWireEnabled (Activé)


tandis que dans celui-ci le fil supérieur est forcé d'être désactivé :


OrtsDoubleWireEnabled (Désactivé)


Un autre paramètre (ortsdoublewireheight) spécifie la hauteur du fil supérieur par rapport au fil de contact ; s'il n'est pas spécifié, la valeur par défaut est 1 mètre. Dans cet exemple, le câble supérieur est à 130 cm au-dessus du câble principal (comme dans la plupart des voies italiennes) :


include ( "../tures.trk" )

OrtsTriphaseEnabled ( Off )

OrtsDoubleWireEnabled ( On )

OrtsDoubleWireHeight ( 130cm )


Bien sûr, vous pouvez utiliser n'importe quelle unité de mesure de distance prise en charge par OR.


16.9.2 Lignes triphasées


Les locomotives électriques modernes sont alimentées en courant continu ou en courant alternatif monophasé, mais il y a quelques années, il existait des locomotives alimentées en courant alternatif triphasé. Un circuit triphasé a besoin de trois fils (un pour chaque phase, aucun fil n'est nécessaire pour le neutre); dans les systèmes ferroviaires, deux fils sont aériens et le troisième est fait par les rails.


OU peut activer le deuxième fil aérien avec le paramètre ortstriphaseenabled de cette façon :


OrtsTriphaseEnabled ( On )


Si le paramètre est manquant ou sa valeur est Off, le fil unique habituel est affiché.


Un autre paramètre (ortstriphasewidth) spécifie l'espace entre les deux fils avec une valeur par défaut (si le paramètre n'est pas déclaré) de 1 mètre.


16.10 écran de chargement


Dans le fichier .trk de la route le paramètre loadingscreen peut être utilisé comme dans cet exemple :


Écran de chargement (Load.ace)


Si dans le répertoire principal de la route il y a un fichier avec le même nom mais avec l'extension .dds et que le support de texture DDS est activé, ce dernier est affiché à la place de celui avec l'extension .ace. Si le paramètre est omis, le fichier load.ace est chargé (comme dans MSTS) ou load.dds (s'il est présent et, encore une fois, le support dds est activé).


L'image de l'écran de chargement peut avoir n'importe quelle résolution et rapport d'aspect ; il sera affiché en boîte aux lettres sur l'écran en conservant le format d'image.


Un autre paramètre facultatif, ortsloadingscreenwide, peut spécifier l'image à afficher lorsque l'utilisateur charge l'itinéraire sur un écran large (16:9). Ce paramètre est ignoré lorsqu'un affichage 4:3 traditionnel est utilisé.


16.11 Indexation des sémaphores compatible MSTS


Lorsqu'une forme de signal a un sémaphore (partie mobile) et que sa définition d'animation dans le fichier .s ne comporte que deux lignes (par exemple, des lignes slerp_rot), MSTS interprète les lignes SemaphorePos() dans sigcfg.dat conformément à la règle suivante :


- SemaphorePos (2) est exécuté comme SemaphorePos (1)


- SemaphorePos (1) est exécuté comme SemaphorePos (0)


- SemaphorePos (0) est exécuté comme SemaphorePos (0).


Open Rails suit cette règle, dans le cas où l'une des lignes SemaphorePos a 2 comme paramètre. Il ne suit pas cette règle dans le cas où seuls 1 et 0 comme paramètres sont présents, car dans un tel cas, en suivant la règle ci-dessus, ils seraient tous deux exécutés en tant que SemaphorePos (0) et donc le sémaphore serait statique.


Il est cependant fortement recommandé de toujours avoir trois lignes d'animation dans le fichier .s, où généralement la troisième ligne reprend les paramètres de la première ligne (sauf pour l'étape d'animation).


16.12 Ouverture/fermeture automatique des portes sur les trains AI


La fonctionnalité est expliquée ici.


Pour remplacer la sélection effectuée dans la fenêtre Options expérimentales, une ligne de commande doit être insérée dans un petit fichier d'intégration .trk, qui doit être situé dans un sous-dossier Openrails du dossier de l'itinéraire et doit porter le même nom que le dossier de base. Ci-dessous un exemple d'un tel fichier :


inclure ( "../Platformtest.trk" )


ORTSOpenDoorsInAITrains ( 1 )


La première ligne doit être vide.


ORTSOpenDoorsInAITrains ( 1 ) force l'ouverture/la fermeture de la porte pour cet itinéraire même si l'option dans la fenêtre d'options expérimentales n'est pas cochée.


ORTSOpenDoorsInAITrains ( 0 ) désactive l'ouverture/fermeture des portes pour cet itinéraire même si l'option dans la fenêtre Options expérimentales est cochée.


16.13 Enlèvement des arbres forestiers des pistes et des routes


OR et MSTS déterminent différemment la position des arbres dans les forêts. Cela peut entraîner l'apparition d'arbres sur les pistes ou les routes. Pour éviter les arbres sur les pistes, un paramètre spécifique à OR peut être ajouté au fichier .trk de la route :


ORTSUserPreferenceForestClearDistance ( 2 )


où le paramètre représente une distance minimale en mètres de la piste pour le placement des forêts. Alternativement, le fichier .trk d'origine peut être laissé tel quel et un nouveau fichier .trk inséré dans un dossier OpenRails dans le dossier racine de la route. Ceci est expliqué ici.


A éviter également les arbres forestiers sur les routes suivant la ligne :


ORTSUserPreferenceRemoveForestTreesFromRoads ( 1 )


doit être ajouté sous la ligne :


ORTSUserPreferenceForestClearDistance ( 2 )


soit dans le fichier .trk racine de la route, soit dans le fichier .trk "Inclure".


Il n'est pas possible d'abattre les arbres uniquement sur les routes et non sur les pistes.


16.14 Bruits de plusieurs passages à niveau


Cette fonctionnalité permet d'avoir des sons de passage à niveau différents de celui par défaut pour un passage à niveau spécifique sur un itinéraire ou pour une forme de passage à niveau spécifique. Pour obtenir un son de passage à niveau différent de celui par défaut pour un son de passage à niveau spécifique sur un itinéraire, une ligne comme la suivante doit être insérée dans le bloc LevelCrObj du fichier .w :


ORTSSoundFileName ( "differentcrossingsound.sms" )


où « differentcrossingsound.sms » doit être remplacé par le nom de fichier .sms souhaité.


Attention : Si la route est éditée avec l'éditeur de route MSTS modifiant les fichiers .w contenant une telle ligne, la ligne ci-dessus sera supprimée.


Pour éviter ce problème, deux autres possibilités s'offrent à vous pour insérer la ligne supplémentaire. L'un est décrit ici. L'autre consiste à utiliser l'éditeur de route TSRE spécifique à OR, qui gère nativement cette fonctionnalité. Dans ce dernier cas également, si la route est modifiée ultérieurement avec l'éditeur de route MSTS, la ligne ci-dessus sera supprimée.


Pour obtenir un son de passage à niveau différent de celui par défaut pour une forme de passage à niveau spécifique, une ligne comme celle-ci doit être insérée dans le fichier .sd de la forme de passage :


ESD_ORTSSoundFileName ( "differentcrossingsound.sms" )


Si les deux lignes sont présentes, la première remplace la seconde. Pour le premier cas, il est suggéré de placer le fichier son dans le dossier son de l'itinéraire, bien qu'il soit également recherché dans le dossier général Train Simulator Sound. Pour le deuxième cas, il n'y a aucune suggestion. Le fichier sera à nouveau recherché dans les deux dossiers.


16.15 Définition du dévers de la courbe


Cette fonction permet d'attribuer aux courbes de l'itinéraire une valeur de dévers. Il est inséré soit dans le fichier .trk racine de la route, soit dans le fichier .trk "Include".


Il convient de noter qu'actuellement, ces informations ne s'appliquent qu'aux calculs physiques pour le dévers. Le mouvement visuel du train dû au dévers est défini dans le menu d'options.


Les valeurs sont affectées en insérant le paramètre suivant :


ORTSTrackSuperElevation ( x y .......... )


où x et y sont une série de paramètres appariés spécifiant le rayon de la courbe en mètres (valeur x) et la quantité de dévers en mètres (valeur y). L'instruction prendra autant de valeurs appariées que vous le souhaitez. Chaque ensemble de valeurs appariées doit avoir une valeur x et y présente. Si l'on souhaite "maintenir" une certaine valeur de SuperElevation pour un certain nombre de courbes de rayons différents, la même valeur y doit être utilisée pour les valeurs successives du rayon de courbe. Lorsque la valeur y change entre les rayons de courbe, Open Rails extrapole la valeur y entre les deux points.


16.16 Fil aérien (caténaire)


Open Rails utilise la texture overheadwire.ace pour afficher le fil aérien. Une telle texture doit être présente dans le dossier TEXTURES de la route. Si la texture n'y est pas trouvée, Open Rails la recherche dans le dossier GLOBAL\TEXTURES. Si la texture n'est pas là non plus, Open Rails sélectionne la texture GLOBAL\TEXTURES\diselsmoke.ace. Il est cependant fortement suggéré d'utiliser une texture spécifique pour afficher le fil aérien. Une texture possible à utiliser peut être téléchargée ici Documentation\SampleFiles\Manual\overheadwire.zip.


16.17 Feux de signalisation décolorés


Dans Open Rails, les feux de signalisation s'allument et s'éteignent pour un effet de transition visuellement agréable. Le temps de fondu est par défaut d'un cinquième de seconde. Il peut être personnalisé dans le bloc SignalType du fichier sigcfg.dat à l'aide de la propriété ORTSOnOffTimeS :


SignalTypes( ...

SignalType ( "AM14Light"

...

ORTSOnOffTimeS ( 0.2 )

)

)


La valeur est le temps de fondu en secondes. Utilisez 0 pour désactiver complètement l'effet.


16.18 Horloges animées

Des horloges animées indiquant le temps de simulation peuvent être ajoutées ou réajustées sur un itinéraire. Les horloges peuvent avoir une trotteuse qui fait tic-tac chaque seconde, ou une qui se déplace en douceur ou pas du tout. En règle générale, les horloges peuvent être des horloges de gare, des horloges de tour d'église ou des horloges d'autres bâtiments publics. Ils sont placés comme des formes statiques normales dans un itinéraire, similaires à d'autres formes telles que des maisons ou des arbres.


Remarque : les cabines de locomotives sont déjà équipées d'horloges analogiques et numériques.


16.18.1 Aperçu


Tu auras besoin de:


1. Fichiers de forme et de texture


Un fichier de forme qui définit chaque forme d'horloge, ses aiguilles et leur animation et les fichiers de texture utilisés par la forme.


2. Fichier de référence


Pour chaque forme d'horloge de la route, une référence au fichier de forme dans le fichier de référence.


3. Fichier mondial


L'emplacement de chaque horloge dans le monde doit être indiqué dans le fichier mondial.


16.18.2 Détails


1. Fichiers de forme et de texture


Créez une horloge comme n'importe quelle autre forme. Les aiguilles de l'horloge doivent être des sous-objets dans la forme. Ils doivent avoir des noms spécifiques et une animation.


Open Rails recherche les noms d'aiguilles d'horloge suivants dans le fichier de forme et les anime en fonction du temps de simulation.


Les noms des aiguilles de l'horloge doivent commencer par :


• "ORTS_HHand_Clock" pour l'aiguille des heures


• "ORTS_MHand_Clock" pour l'aiguille des minutes


• "ORTS_SHand_Clock" pour la trotteuse


• « ORTS_CHand_Clock » pour la trotteuse


Ce dernier est utilisé pour fournir un mouvement fluide en centièmes de seconde tandis que la trotteuse avance une fois par seconde. Il est suggéré d'utiliser soit la trotteuse, soit la centiseconde, soit ni l'une ni l'autre.

Si une horloge doit avoir plusieurs aiguilles du même type, il suffit d'ajouter un numéro au nom des aiguilles, comme ceci :

L'animation nécessite 4 images clés aux positions 12, 3, 6 et 9 et calcule les positions intermédiaires à l'aide d'une interpolation linéaire.

Par exemple:


anim_node ORTS_HHand_Clock01 (

controllers ( 1

tcb_rot ( 5

slerp_rot ( 0

0

0 0 -1 )

slerp_rot ( 1 -0.707 0 0 -0.707 )

slerp_rot ( 2 -1

0 0

0 )

slerp_rot ( 3 -0.707 0 0

0.707 )

slerp_rot ( 4

0

0 0

1 )

)

)

)


Enfin, déplacez la forme d'horloge et ses textures dans les dossiers SHAPES et TEXTURES correspondants de votre route, tels que ROUTES\<nom_route>\SHAPES\clocks.s


2. Fichier de référence


Ajoutez une référence au fichier de forme dans le fichier de référence ROUTES\<route_name>\<route_name>.ref Assurez-vous que cette référence commence par le mot-clé "Static". :


Static (

Filename

( "ChurchClock.s" )

Class

( "Clocks" )

Align

( None )

Description ( "ChurchClock" )

)


3. Fichier mondial


Utilisez un éditeur de route pour localiser les horloges dans le fichier mondial.


Remarque : n'insérez pas les formes sous forme d'animations. Sinon, si MSTS est utilisé pour afficher l'itinéraire, les aiguilles de l'horloge tourneront follement. Dans Open Rails, ils correspondront de toute façon au temps de simulation.

Share by: