The purpose of this tutorial is to introduce the ISI GMotor materials used by rFactor. With this tutorial, you should be able to create some simple materials, to assign them to your 3D objects and to export them to rFactor.
In a further tutorial, the creation of advanced materials will be studied but I still need to learn before creating such tutorial.


The first thing to do is to install properly the ISI plugins for 3DS Max. Please refer to the ISI documentation for that point but don't forget the CoreShaders.mas file.


This tutorial is based on a Renault Sport Spider car I'm designing to build a tutorial for the french communauty. So, don't be surprised to retrieve a car very far from our usual productions.


Download MAX7 sample with textures



Image 0000 0000
Here a picture of the base object we'll work on. This is the Renault Spider chassis with its 4 wheels. During the construction of those shapes, I already made some separation between materials by building a multi/material with 6 sub-materials : #1 : aluminium chassis / #2 : chassis floor / #3 : engine / #4 : suspension / #5 : tires / #6 : rims. I know it's better to gather all data on a same texture but remember this is a tutorial so my purpose is to show the more technics possible in less steps. To build this multi/material, I simply assign a (flashy) color to each slot without using any texture. It's faster for 3DS Max to render so it's the best means to work at the beginning in my opinion.



Image 0001 0001
Now, we'll start the creation of some basics GMotor Materials using T1 shaders. The first thing is to create a new multi-material in another slot. Assign it the same number of sub-materials (here, it's 6) than the standard 3DS one.



Image 0002 0002
Let start to create the first GMotorMaterial. Enter in the sub-Material #1 and click on the [Stndard] button Select GMotorMaterial entry.



Image 0003 0003
Name the sub-material with a clear name (here [CHASSIS]). Some special ISI names can be used here but it's something we'll deal in a more advanced tutorial. Select the first DirectX level we'll work on. Usually, starting by DirectX9 is the most relevant choice.



Image 0004 0004
Select the [T1] shader. A breif description of the shader is written below. You can also set the [Specular color] and the [Specular power] fields to adjust the Specular light behaviour in game. You must check the [Source Blend] and [Destination Blend] fields too. For classic sub-materials (without transparency), you must set those fields to [One] and [Zero]. For materials with transparency (through the texture alpha layer), you need to set those fields to [Src Alpha] and [Inv Src Alpha]. Finally, click on the first slot for texture at the bottom : it's time to add a texture for our chassis.



Image 0005 0005
Here, I browse on a file called [CHASSIS.TGA]. This file is a simple 8x8 square I painted in yellow. The loaded file must be a TGA file or a DDS one. Its size must be a power of sized and it can't be smaller than 8x8. For example, 1024x1024 or 2048x1024 are valid sizes. You can click on the little blue/white checkered cube to display the texture in 3DSMax. But the GMotorMaterial are quite slow to render to it's better to avoid if your PC is rather old like mine.



Image 0006 0006
Now, it's time to switch to DirectX8 level. As we'll use [T1] shader too, the easier way is to press the [Copy Dx9] button. The other way is to redo the exact thing we did at the previous stage. You guess what follow next : DirectX7 level : just press the [Copy Dx8] button too. That's it : the first material is finalized. Just reproduce those steps for the 5 other sub-materials by assigning a different texture each time. the textures are provided with the MAX file. Then, select your 5 objects and assign this new multi/material to the 3D objects.



Image 0007 0007
The next step is to export the 3D objects as GMT files for rFactor. But, just before doing that, we have to adjust correcly the pivot point for each object. For each objects which don't move, the pivot need to be set in [0,0,0]. This is the case for the chassis here, but it's the same for the wings usually, the driver (except the helmet), the cockpit. For objects in rotation (like tires, wheel, driver helmet), the pivot need to be centered on the object itself. Best to use the dedicaced function of 3DSMax here.



Image 0008 0008
Time to export our first GMT file : the Spider's chassis. In the [Utilities] palen, just select the [GMT Converter 2.35] entry. Please add it using the [More...] button if you haven't put it yet in the default list. Then, open the [GMT Output] and [Instance] sub-panels.



Image 0009 0009
Select our 3D object in one of the viewports and click on the [Get Selected] button of the [Instance] sub-panel. The object name will appear in the textbox below the button. Please note you can select as many objects as you want and press the [Get Selected] button after. The parameters are memorized for each object so it's not a problem.



Image 0010 0010
Select the exportation path in the [GMT Output] sub-panel. Press the magic [Do Mesh] button. If you follow carefully each step above, your first GMT file is created.



Image 0011 0011
For the wheels, the parameters are the same.Select the 4 wheels and press the [Get Selected] button. A [Multiple Selected] string appears. Press the [Do Mesh] button again and you get your 4 GMT files for the wheels.



Image 0012 0012
Sometimes, a strange issue can appear in game : all faces are flipped like I simulate with MAX here. In my opinion, this is due to a problem a pivot but I never find a proper solution to solve it using the pivot modifier. There are 2 solutions though to solve that problem : The first one which is the easier for me to explain is to rebuild the whole shape. That's my favourite... well, I'm kidding here. The second one is a bit boring to do but finally quite easy. You just have to build a box using the 3DSMax object and attach the box with the shape that is flipped in game. The box should be the first selected when you do this operation. Then, remove the 8 vertices of the box and name it like the previous shape was. Finally, set the pivot at the correct place again. Last point to not forget : the GMT-Exporter settings will have been reseted so it's important to think to that when exporting this shape again.



Image 0013 0013
Last point : a little advertisement for a tool created by Virtua_LM : the GMT2-Wizard. This tool allows you to speed up the materials creation process, based on 3DSMax libraries. For example, you can load the Dx9/Dx8/Dx7 textures in one click or copy the settings from one level to another. Some batch commands are also available to change a settings for a bunch of materials for example. Not that useful for cars but for a track with more than 100 materials, it can be a needed tool. This tool is unuseful if you don't have a library to work with : you can create your own of course by simply creating materials and adding them to the current library.