Support>Tutorials>Graphics

Repainting G-TraX Products

As we all know, manufacturers of motive power and rolling stock sell their products to a variety of railroad companies. The railroad company will usually order the product with the railroad's particular paint scheme, though sometimes the railroad will do the paint job itself.

A similar thing happens in our virtual world. Model builders like G-TraX can never hope to satisfy everyone. There are so many paint schemes and variations out there, but there are only 24 hours in a day. Luckily for all of us there are any number of talented artists in our community who enjoy providing repaints of commercial and freeware locomotives and rolling stock.

What follows are guidelines for repainting G-TraX products. If, after reading through this tutorial, you have any lingering questions about packaging your repaint or about what you can and cannot do, please contact G-TraX.

The Policy

This one's easy. Anything goes! Anyone is welcome to offer repaints of G-TraX products. No prior review or approval is required. You might be the world's best artist or a total newbie. It doesn't matter. By all means have at it!

There are only two conditions. I know what you're thinking, "here it comes," but this should be obvious.

  Condition 1  Your repaint package must be freeware. You may not re-sell what is essentially a modified G-TraX product.
  Condition 2  You must not upload files that would make it possible for someone to use your repaint without first having procured the original model from G-TraX or through Steam.

Sorry, but G-TraX does not supply templates for repainters.

Note: This tutorial does not apply to other modifications, "improvements," or "fixes" to G-TraX products. Any such modifications require prior review and approval by G-TraX. Approval will only be granted if the proposed modification contains no copyrighted material and there is a demonstrable need for the modification.

The Procedure

Let's assume, for example, you want to offer a repaint of the G-TraX lightweight passenger cars in the livery of a fictional railwoad we'll call XYZ. Assume also that you're going to use the Union Pacific passenger car set as the basis for your repaint. Start by creating a file structure like this one:

  Assets
    G-TraX
      Trains
        RailVehicles
          Passenger
            UP_Lightwt
              Railcars
                Textures
            XYZ_Lightwt
              Railcars
                Textures

Items in bold blue are new folders that you create. As you can see, the new folders have the same structure as is used for the original passenger cars. In the case of a repaint package, however, only the new Railcars and Textures folders will actually have files.

In the following discussion, the word "original" refers to files supplied by G-TraX, and "new" refers to files supplied by you.

The Railcars folder must have a new Wagon blueprint BIN file for each rolling stock item (or Engine blueprint BIN file for a locomotive). The new BIN file can either be a hacked copy of an original BIN file or a new one exported from a Wagon blueprint source file that you created.

You may also want to include a new DCSV file to define the range of numbers to be displayed on each coach. Your new BIN file must provide the correct reference to the path and file name of the new DCSV file.

In the blueprint BIN file, you'll need to revise the path to the geometry file (file name extension .GeoPcDx) so it points to the new Railcars folder, but do not change the name of the geometry file itself. The original GeoPcDx files must not be included in your package.

Your new BIN file should be checked to make sure the path to any animation files related to the original model is specified (file name extension .BAN). If your repaint is a locomotive, references to child objects (BIN), scripts (LUA) and Simulation files must also be checked. The original BAN, BIN, LUA and Simulation files must not be included in your package.

You'll probably also want to include a new DCSV file to define the range of numbers to be displayed on each coach. Your new blueprint BIN file must provide the correct reference to the path and file name of the new DCSV file.

The new blueprint BIN file must also specify the path to a Named Texture Set blueprint file. The Named Texture Set blueprint file usually resides in the Textures folder. It's the one that links each numeral texture file to an ordinal number or letter. The file UP_LtwtNums01.bin is an example of a Named Texture Set blueprint. The path that you specify can be to one of the original car-numbering BIN files, if you are using the original textures, or to a new BIN file that you created referencing new numeral textures that you made.

If you will be repainting a locomotive, you must also make sure your new Engine blueprint BIN file specifies the path to the original locomotive's LUA script and to the Simulation blueprint. You can also supply your own custom versions of these files if you prefer, but again make sure the paths are correct in the new Engine blueprint. You must also verify the paths are correct to the original locomotive's cab geometry file, audio files, BAN files, headout and interior camera files and so forth.

So in summary, the uploaded Railcars folder must contain only the new blueprint BIN files and new DCSV files for each car. Most importantly, it must not contain model geometry files (GeoPcDx) files, animation files (BAN), binary blueprint (BIN) files, scripts (LUA) or Simulation files.

The Textures folder will include all of your revised texture files (file name extension .TgPcDx) as well as the Named Texture Set BIN file. The new TgPcDx files must have the same names as the original ones, even though the road name and other content is different. That's because the texture file name references are stored in the GeoPcDx geometry files.

That covers all the files that should be included in your upload. Your upload's file structure should now look something like this:

  Assets
    G-TraX
      Trains
        RailVehicles
          Passenger
            XYZ_Lightwt
              Railcars

                  XYZ_LtwtCoach01.bin
                  UP_LtwtCoach01.dcsv
                  Textures
                      XYZ_LtwtNums01.bin
                      GX_UP_Ltwt1a.TgPcDx
                      GX_UP_Ltwt1b.TgPcDx
                      number_0.TgPcDx
                      number_1.TgPcDx
                           :
                           :
                      number_9.TgPcDx

Notice that the folders for the original railcars, the ones provided by G-TraX, are not and must not be included in your package.

Now, in order for your repaint to show up in RailWorks, the end user must place a copy of the original geometry (GeoPcDx) file and texture files (TgPcDx) you have not modified in the new folders. Your package must include a "readme" text file in which you make it clear that it is the user's responsibility to copy the relevant files from the specific, original Railcars folder and paste them into the correct, new Railcars folders. In this example, you would instruct the user to copy GeoPcDx file(s) contained in the user's UP_Lightwt folder and paste them into the new Railcars folder, and to copy any texture files that you did not modify into the new Textures folder.

The requirement to make copies of GeoPcDx and original, unmodified TgPcDx files is also true for you, the repainter. You'll need to do this in order to make sure your repaint is working properly. However, before you create your upload package in RailWorks Packager, you must exclude these files. You do this in the lefthand panel by un-ticking the files to be excluded before you move the files into the righthand panel. Alternatively, you can tick files in the righthand panel and move them back out of the package.

The end user's folder structure should look like this, where red indicates a GeoPcDx file and an original, unmodified TgPcDx file the user has copied from the original UP_Lightwt / Railcars folder.

  Assets
    G-TraX
      Trains
        RailVehicles
          Passenger
            UP_Lightwt
              Railcars
                Textures
            XYZ_Lightwt
              Railcars

                  GX_UP_LtwtCoach01.GeoPcDx
                  XYZ_LtwtCoach01.bin
                  UP_LtwtCoach01.dcsv
                  Textures
                      XYZ_LtwtNums01.bin
                      GX_UP_Ltwt1a.TgPcDx
                      GX_UP_Ltwt1b.TgPcDx
                      GX_UP_Ltwt1c.TgPcDx
                      number_0.TgPcDx
                      number_1.TgPcDx
                           :
                           :
                      number_9.TgPcDx

Problems

Sometimes, no matter how hard we try, we simply cannot find the spot on the texture bitmap where that darn white thing that we want to be red is located. Somtimes we find the spot, paint it red and then something else also turns red where we wanted it to stay white. Sometimes we want three-digit road numbers where the original had four, or, worse yet, the other way around.

If you run into situations like this, please feel free to e-mail G-TraX. As I said at the beginning, we developers can't satisfy everyone. I'll do my best to help you or at least try to find a workaround, but I may not always be able to do so.

[Home]