Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal
  • Who's Online   1 Member, 0 Anonymous, 33 Guests (See full list)

  • Recently Browsing   0 members

    No registered users viewing this page.

Lus0rius

Remplacer les textures au sol

Recommended Posts

Lus0rius    680

Bonsoir à tous !
Aujourd'hui je vais vous décrire comment remplacer les textures de sol d'une ligne par d'autres textures. Merci d'ailleurs à @Lahm de me l'avoir expliqué en MP suite à sa modification de la Maurienne-Tarentaise.

Le principe de base est très simple :
Les textures d'une ligne dépendent de la map (du modèle) de base que vous avez choisi lorsque vous avez créé votre ligne. Cependant, vous pouvez choisir après-coup un autre modèle de textures via le fichier RouteProperties.xml de votre ligne (qui se trouve dans C:\Program Files (x86)\Steam\steamapps\common\RailWorks\Content\Routes\LE_DOSSIER_DE_VOTRE_LIGNE ). Ouvrez ce fichier .xml avec le bloc-notes Windows (ou avec Notepad++ si vous l'avez). Les textures de base d'une ligne sont paramétrées dans la section :

	<TerrainBlueprint>
		<iBlueprintLibrary-cAbsoluteBlueprintID>
			<BlueprintSetID>
				<iBlueprintLibrary-cBlueprintSetID>
					<Provider d:type="cDeltaString">Kuju</Provider>
					<Product d:type="cDeltaString">RailSimulator</Product>
				</iBlueprintLibrary-cBlueprintSetID>
			</BlueprintSetID>
			<BlueprintID d:type="cDeltaString">Environment\Terrain\Texturing.xml</BlueprintID>
		</iBlueprintLibrary-cAbsoluteBlueprintID>
	</TerrainBlueprint>

Les textures sont spécifiées par le fichier Texturing.bin qui se trouve dans les Assets de la plupart des lignes paywares, généralement dans un sous-dossier Environnement\Terrain. Ce fichier s'appelle parfois également Terrain.bin selon les lignes (ou même Complete_v1.xml dans le cas des UTKS Freeware Packs). Ce fichier .bin est "lu" par le jeu comme étant un fichier .xml (d'où le chemin d'accès ci-dessus), même s'il n'y a pas de fichier .xml dans le même dossier.

Il suffit donc que vous changiez le Provider (ci-dessus Kuju), le Product (ci-dessus RailSimulator) et le chemin d'accès du Texturing.xml. Par exemple, avec les textures de l'UKTS Freeware Pack Terrain Textures, voici ce que ça donne :

	<TerrainBlueprint>
		<iBlueprintLibrary-cAbsoluteBlueprintID>
			<BlueprintSetID>
				<iBlueprintLibrary-cBlueprintSetID>
					<Provider d:type="cDeltaString">UKTS_FP</Provider>
					<Product d:type="cDeltaString">Terrain_Textures</Product>
				</iBlueprintLibrary-cBlueprintSetID>
			</BlueprintSetID>
			<BlueprintID d:type="cDeltaString">TextureSets\Complete_v1.xml</BlueprintID>
		</iBlueprintLibrary-cAbsoluteBlueprintID>
	</TerrainBlueprint>

Vous pouvez relancer Train Simulator, mais ensuite n'oubliez pas d'activer le Provider via le cube bleu avec la flèche orange dans le menu de l'éditeur, sinon vous aurez une texture blanche sur toute votre ligne ! Vous devrez ensuite relancer la ligne pour que les changements prennent effet (cliquez sur l'image pour l'agrandir) :

KwiP.md.png

 

Cela peut parfois se compliquer lorsque les textures que vous voulez utiliser ne sont pas ordonnées de la même manière dans leur fichier Texturing.bin que dans le modèle utilisé précédemment. C'est le cas pour la Konstanz-Villingen. Cette ligne possède des très jolies textures, mais si vous modifiez seulement le RouteProperties.xml pour lier le fichier Texturing.xml de la KoVi, alors vous obtiendrez de la neige à la place de l'herbe, des rochers à la place des champs, etc...

Il vous faudra alors réordonner les textures dans le fichier Texturing.bin (en le décompilant en .xml avec SerzMaster.exe situé dans le répertoire RailWorks (C:\Program Files (x86)\Steam\steamapps\common\RailWorks), puis en le recompilant en .bin) en comparant avec l'ordre dans lequel étaient classées les textures dans le Texturing.bin que vous utilisiez précédemment.

Cependant, je vous épargne ce travail en mettant ci-joint le fichier Texturing.bin de la Kontanz-Villingen réarrangé pour qu'il soit compatible avec les lignes qui utilisaient précédemment des textures Kuju/RSC/DTG. Il est à décompresser dans le répertoire RailWorks. Cela n'écrase pas d'autre fichiers, vous n'aurez donc pas de changements de textures pour la ligne Konstanz-Villingen en elle-même.

Pour la Konstanz-Villingen, vous devrez donc modifier le RouteProperties comme suit :

	<TerrainBlueprint>
		<iBlueprintLibrary-cAbsoluteBlueprintID>
			<BlueprintSetID>
				<iBlueprintLibrary-cBlueprintSetID>
					<Provider d:type="cDeltaString">virtualRailroads</Provider>
					<Product d:type="cDeltaString">Konstanz-Villingen</Product>
				</iBlueprintLibrary-cBlueprintSetID>
			</BlueprintSetID>
			<BlueprintID d:type="cDeltaString">Environment\Terrain\EUTexturing.xml</BlueprintID>
		</iBlueprintLibrary-cAbsoluteBlueprintID>
	</TerrainBlueprint>

Comme indiqué précédemment, il ne vous reste plus qu'à activer le Provider !
 

Voilà, maintenant vous savez comment rapidement et simplement changer de textures de sol pour votre ligne !


---------------------------- BONUS : comprendre le Texturing.bin

Ce fichier ne sert en fait qu'à dire au jeu où sont les textures, dont les vrai fichiers .TgPcDx se trouvent dans leurs sous-dossiers respectifs. En convertissant le Texturing.bin avec SerzMaster (dans le répertoire RailWorks aux côtés de l'exécutable du jeu), vous pourrez lire le fichier Texturing.xml avec le bloc-notes ou Notepad++. Vous y trouverez donc, pour chaque texture, son nom dans l'éditeur et son chemin d'accès pour chaque saison. Il y est également paramétré la flore procédurale pour toutes les textures qui en utilisent.

Mais tout à la fin du fichier, vous trouverez des informations plus intéressantes :

Ces lignes, par exemple, déterminent la couleur du terrain distant (quand les textures citées dans le reste du fichier n'ont pas été chargées) en été et en hiver. Il faut multiplier ces valeurs par 255 pour obtenir la teinte en RGB, par exemple R 0.360784 ; G 0.396078 ; B 0.219608 donnent une teinte RGB 92 101 56, ce qui produit une sorte de vert kaki en été.

			<DistantTerrainColour>
				<cHcColour>
					<Red d:type="sFloat32" d:alt_encoding="000000C01517D73F" d:precision="string">0.360784</Red>
					<Green d:type="sFloat32" d:alt_encoding="000000805759D93F" d:precision="string">0.396078</Green>
					<Blue d:type="sFloat32" d:alt_encoding="000000601D1CCC3F" d:precision="string">0.219608</Blue>
					<Alpha d:type="sFloat32" d:alt_encoding="000000000000F03F" d:precision="string">1</Alpha>
				</cHcColour>
			</DistantTerrainColour>
			<WinterDistantTerrainColour>
				<cHcColour>
					<Red d:type="sFloat32" d:alt_encoding="000000A05959E93F" d:precision="string">0.792157</Red>
					<Green d:type="sFloat32" d:alt_encoding="000000A05959E93F" d:precision="string">0.792157</Green>
					<Blue d:type="sFloat32" d:alt_encoding="000000A05959E93F" d:precision="string">0.792157</Blue>
					<Alpha d:type="sFloat32" d:alt_encoding="0000000000000000" d:precision="string">0</Alpha>
				</cHcColour>
			</WinterDistantTerrainColour>

KwiB.md.jpg

 

Les dernières lignes de code, enfin, déterminent l'auto-texturing de la map. Par exemple, lorsque vous surélevez fortement le terrain, il prendra automatiquement une texture de rocher. Les TextureIndex correspondent au numéro de la texture listée dans le fichier. La texture de roche ici sera la 9e texture en partant depuis le haut, qui correspond effectivement à Rock000 pour la Konstanz-Villingen. La suite détermine sous quelles conditions ces textures "automatiques" apparaîtront : en dessous de 1200m, le jeu applique la texture Low, entre 1200 et 2000m la texture Mid et à partir 2000m la texture High (ces paramètres seront surtout utiles pour l'affichage du terrain distant sur des maps de montagne comme la Maurienne). À partir de 15° (ou 15% de pente, je dois dire que je n'ai pas vérifié), la texture de roche apparaîtra au sol. Le Threshold est la largeur de la transition entre les deux textures, également en mètres. Enfin, le ProceduralFloraTextureID détermine la flore procédurale par défaut.

			<LowGroundTextureIndex d:type="sUInt32">39</LowGroundTextureIndex>
			<MidGroundTextureIndex d:type="sUInt32">33</MidGroundTextureIndex>
			<HighGroundTextureIndex d:type="sUInt32">16</HighGroundTextureIndex>
			<RockTextureIndex d:type="sUInt32">9</RockTextureIndex>
			<LowToMidHeightPoint d:type="sFloat32" d:alt_encoding="0000000000C09240" d:precision="string">1200</LowToMidHeightPoint>
			<LowToMidThreshold d:type="sFloat32" d:alt_encoding="0000000000005940" d:precision="string">100</LowToMidThreshold>
			<MidToHighHeightPoint d:type="sFloat32" d:alt_encoding="0000000000409F40" d:precision="string">2000</MidToHighHeightPoint>
			<MidToHighThreshold d:type="sFloat32" d:alt_encoding="0000000000005940" d:precision="string">100</MidToHighThreshold>
			<RockGradient d:type="sFloat32" d:alt_encoding="0000000000002E40" d:precision="string">15</RockGradient>
			<RockThreshold d:type="sFloat32" d:alt_encoding="0000006066661A40" d:precision="string">6.6</RockThreshold>
			<ShadowTextureScaleFactor d:type="sFloat32" d:alt_encoding="000000E04D62403F" d:precision="string">0.0005</ShadowTextureScaleFactor>
			<ProceduralFloraTextureID d:type="cDeltaString">virtualRailroads\Konstanz-Villingen\Environment\Terrain\[05]grass</ProceduralFloraTextureID>

 

J'espère que ce tutoriel a été assez clair et bien évidemment qu'il vous a été utile ! ;)

Bonne soirée,

Clément

Texturing Konstanz-Villingen.zip

  • Like 7
  • Thanks 4

Share this post


Link to post
Share on other sites
jeje    1,304

super merci pour ton tuto ;)

  • Like 1

Share this post


Link to post
Share on other sites
Lahm    539

Merci d'avoir pris le temps d'écrire ce tuto @Lus0rius !

C'est très bien fait et très clair, j'aurais pas fait mieux :)

Edited by Lahm
  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
Rollover    1,163

bonjour
Ton tuto m'a bien aidé. Je m'amuse à tenter de reconstituer Fribourg Bale rien que sur la base des update et patches. Ligne que je n'ai pas l'intention d'acheter vu le prix inversement proportionnel à la distance. Un vrai plaisir de retrouver dans mon stock d'assets les 3 fois rien manquants :-D
J'ai remarqué que cette ligne à beaucoup de points commun avec Munster Breme. J'ai donc appliqué ton tuto et d'un seul coup boum, apparition de la voie dans des zones ou elle ne s'affichait pas, un peu plus de signaux et d'éléments caténaire et surtout les textures du sol.
J'y retourne, il me manque 900 assets pour finir.
Merci

Share this post


Link to post
Share on other sites
Rollover    1,163

De la neige sur la LGV Méd'
C'est raté pour la voie et quelques batiments mais y a l'ambiance... :rolleyes:

image.jpg

  • Like 1

Share this post


Link to post
Share on other sites
Rollover    1,163

bon pour la LGV Méd TS crashe au départ de Part Dieu et Marseille. Raté.
par contre c'est bon pour la ligne de la Bosse

image.jpg

  • Like 2

Share this post


Link to post
Share on other sites
garcia richard    1,892

Bonjour,

J'ai bien lu le tito, pour les textures, mais cela ne dit pas, comment ajouter une testure Neige (par exemple) a une ligne qui n'en possède pas?

Y as t'il un mayen sans passer par le "Route Propercie"???

Merci de votre aide 

Share this post


Link to post
Share on other sites
Rollover    1,163

Bonjour
bah comme montré sur le screenshot, on sélectionne l'éditeur (ici ukts mais ça peut être autre chose) on coche les terrain textures si présents. Si pas présent c'est qu'on a pas fait le bon choix de l'éditeur. De mémoire on vide le cache, on se met en hiver pour voir le résultat. Si pas de neige c'est qu'on s'est planté donc à refaire. Une fois que c'est bon par contre voir le résultat en situation "été", possible que ce soit la jungle sur les voie. Dans ce cas on refait autrement pour tenter une amélioration.

Share this post


Link to post
Share on other sites

×