Because the Body template is a wildcard you can use the correct AO for any particular car configuration. So how the car is set up using the GEN string or upgrades (which ever you use). Use the matching Body ID in the teams folder. (as you would in rF1) I know rF2 doesn't use folders but it's the best way to describe it. The issue you'll have by using the upgrades is the different parts will be available to install on the car. If the Body ID hasn't got these parts they'll be all black. The safer way so end users can't change the parts on the fly in the tuning menu is to use the GEN String. This is then locked in on any one particular car configuration. For custom cars the painters will use the veh+ GEN String that suits their needs. If the color of the rims doesn't suit them, they simply change the rim GenString to the number they desire. Just be sure to try and keep the Body ID as close to each as possible. I wouldn't mind seeing a few pics of the car. Could make it easier to see what your trying to archive.
Don't know about Body ID I'll have to understand it more. The AO is saved in the main WCCARBODY texture. Here are 2 picks 2nd one I want the AO to change to match the spoiler.
Just extend the boot shader to cover the pic on the bottom. The other will look fine with the color out under the spoiler. If you don't want to have the color there, Just use a blanking layer on the one template. Or a darker shadow there you can use on or off. But if you use upgrades, changing the spoiler in the tuning want be a issue if you just let the game shadow the boot under the spoiler. I see no reason here for two templates. I wouldn't want to have the rear wings foot marked on the boot lid. This would just add to the "not" being able to change the rear wings. The same Template could then be used for a road car that has no rear wing at all. That's were I'd be going with it. Just the road car, and then you can use either rear wing as a upgrade or no wing at all and still have a clean looking livery. Sorry if my use of Body ID is confusing. It's just what I'm used to. Each template has a ID. Each meaning for the hole car there are a number of templates. Interior, interior low res. Rims. Tyre wall, tyre tread, and so on. On a new build we use numbers ID. Hens the Body ID. (Main body Template or AO as you call it) Same thing. The car looks like a XB or XC Falcon to me. If so neither rear wing suits it specially the NASCAR style one. If I'm right, do you have the original GT or Cobra rear spoiler for it? For those that don't know. It was the XB Coupe they used in the "Mad Max" movie as the black Interceptor. The movie was call "Road Warrior" in the US.
I'm not sure if this is still applicable but I notice that the header section of the rFactor 2's veh files are still identical to how they read in F1C. When I used to mod for F1C the wildcards used to be pre-coded (hard-coded) into the executable file. Thus one wasn't able to create new wildcard textures beyond what was already hard-coded into the game. Originally, and from what I recall, only the WCCARBODY, WCWING, WCHELMET, WCDRIVER, WCARMS, WCPITBODY textures were able to be switched as team and track specific textures because these were the only wildcard textures that were hard-coded into the game's executable. However, this doesn't mean these are still the only "hard-coded" wildcards in rFactor 2. They could be different, but the veh file header's are still worded the same. In F1C, if I had decided to assign a wildcard sounding texture name to a material, lets say WCSIDEPOD for example, this didn't automatically mean I was able to create a new wildcard texture called WCSIDEPOD. This was because WCSIDEPOD wasn't one of the originally defined (hard-coded) wildcard textures. It would only have meant I was creating a unique texture called wcsidepod which wouldn't have been recognized as being a wildcard texture. This would've meant that other teams/cars that had their comparable objects mapped to the WCSIDEPOD texture would have used the same textures. Here's an example from a veh file from a mod I'd worked on in the past. // // The first section defines what maps to load for the new vehicle skinning // technology. The first line defines a "prefix" to be used for all generic maps. // Currently, generic maps are used for the livery, wing, driver, driver arms, // driver helmet, and pit crew. The second line will replace the default livery // with the new specified, for the track specified. The format is as follows: // // DefaultLivery="PREFIX" // PREFIX is the base texture map name, assumed to be BMP unless specified // PitCrewLivery="PREFIX" // This is only needed if it differs from the default livery PREFIX // TrackLivery="TRACK, PREFIX" // TRACK is the track name as defined in the event GDB // TrackLivery="TRACK, PREFIX" // For example, "2001_Monza" // TrackLivery="TRACK, PREFIX" // You can have an infinite # of these lines // // // For the 1990 Singles Mod to use track specific liveries remove the first two forward slashes "//" for // which you have a livery. For example if you have a livery specific to Pheonix, the line should look // like: TrackLivery="Phoenix 1990, Martini90a" This tells F1C to use the liveries wildcarded as Martini90A. // // For the liveries provided with this mod, ensure that the line "TrackName =" in the track's GDB file is // the same as the name typed below. For example: if the track being used is the US Grand Prix at Phoenix, // ensure that the line "TrackName = Phoenix 1990" is used in the track GDB file. This line is usually the sixth // line from the top in the GDB file. Do not use commas in the track name, remember it the track's name, // not it's location. DefaultLivery="Martini90A" PitCrewLivery="Minardi90A" //TrackLivery="Phoenix 1990, Martini90A" //Round One //TrackLivery="Interlagos 1990, Martini90A" //Round Two TrackLivery="Imola 1990, Martini90B" //Round Three //TrackLivery="Monaco 1990, Martini90A" //Round Four //TrackLivery="Gilles Villeneuve 1990, Martini90A" //Round Five //TrackLivery="Hermanos Rodriguez 1990, Martini90A" //Round Six //TrackLivery="Paul Ricard 1990, Martini90A" //Round Seven //TrackLivery="Silverstone 1990, Martini90A" //Round Eight //TrackLivery="Hockenheim 1990, Martini90A" //Round Nine TrackLivery="Hungaroring 1990, Martini90E" //Round Ten TrackLivery="Spa Francorchamps 1990, Martini90E" //Round Eleven //TrackLivery="Monza 1990, Martini90A" //Round Twelve TrackLivery="Estoril 1990, Martini90D" //Round Thirteen TrackLivery="Jerez 1990, Martini90C" //Round Fourteen TrackLivery="Suzuka 1990, Martini90F" //Round Fifteen TrackLivery="Adelaide Street 1990, Martini90F" //Round Sixteen In the example above, because the DefaultLivery was identified as "Martini90A", then the default textures that the game looked for would have been Martini90ACARBODY, Martini90AWING, Martini90ADRIVER, Martini90AARMS, Martini90AHELMET, Martini90APITBODY. But of course, this works when the mesh/object was properly texture mapped to the appropriate wildcard (WC) texture. In this case Martini's helmet would be have to be mapped to the WCHELMET texture. But in my example, because I identified some track specific liveries such as TrackLivery="Imola, Martini90B" when I would load the Imola circuit the game would then look for all the wildcard textures that began with Martini90B as the wildcard (WC) replacement. If it didn't find any with the Martini90B prefix, then it would simply use the default texture prefix which is Martini90A. In the above example, when I loaded different circuits the appropriate liveries, helmet, pit uniforms, etc that were used at a specific circuit would load. But, I notice this is a little more complicated in rFactor 2 because of the upgrades options for car parts. Maybe not do much for track specific helmets or diver and pit crew uniforms.
Really interesting discussion. Is there a place or can someone explain, show, or point to the steps to make an existing file into a wildcard file that can be painted? In the example I am thinking about, each car(Rf1 sourced) holds the specific file, which is unique to the specific car model. In my example, it is the cockpit file. So the cockpit view is not paintable and is wanting to be paintable to be consistent with the exterior view. How does one switch that on?
All you would need to do is change the material name of the object you want as a wildcard to an available WCEXTRA and add the new texture to the team. eg if WCEXTRA4 is next name the material WCEXTRA4 and save the texture as my_car_nameextra4.
Ok Thanks. I'm a newbie to modding, so maybe not able to connect the dots names to file extension, material I assume is the *.dds, while the object is the GMT?? So as an I have two cars in a team that appear to share {"Car name"_COCKPIT_TEXTURE.DDS}from the "car".mas but the other textures are "driver/car specific" in the "Car teams".mas. Make two new textures eg. {"Driver name x"_"car number A"_extra4.DDS} and eg. {"Driver name y"_"car number B"_extra4.DDS} and replace the orignal single texture and assign the two new textures, to the object. That, I assume is representative of what you mean by changing the material name of the object. Then I would have paintable materials assigned to the objects? If I am way too newbie, where is the place to start learning?
Im also new to this, I have only done tracks in the past. This thread has most of the info you need. eg material name for the car body is WCCARBODY with a texture called "whatever.dds" as a place holder so when it reads the veh file it now selects the team/driver name.dds So with the cockpit texture the one in the car mas is a place holder and what will be used if you don't make a separate texture in the teams. The material for the cockpit can be called any WCEXTRA. Going with the above example we called the material WCEXTRA4 so now you make a new texture for each team/driver and name it team/drivernameextra4.dds (no underscore). So now when the game reads the veh file if there is no extra4 it will use the place holder texture in car.mas or if I finds a extra4 it will load that instead. Hope that makes more sense.
Ok, then I gotta go back and reread this is hereafter and figure out where the code defining the "extra"'s actually go.
They go inside the veh file something like depending on what you name things. rims="rims" Extra2="extra2" Extra3="extra3" Extra4="extra4" Extra5="inwshield" WCWINDOWSOUT="windowsout" WCWINDOWSIN="windowsin" Helmet="helmet"
The 'code' is the material name defined in the gmt. You can type things into the veh until you are blue in the face, if the mesh is not set up to use wildcards, definition in the veh will be ignored.
Just do a new AO rebake. I've done this withe Camaro without spoiler. ==> https://forum.studio-397.com/index.php?threads/help-for-first-mod.52506/#post-856720 You can bake a lighting map to alpha (for reflections) in one bake. And adjust both in photoshop to you liking.
Thanks, more useful information. Is there a place that explains how you set the mesh to use the wildcard? Sounds like you are suggesting the specific material name within the corresponding gmt needs to be adjusted? How is this done? Is there an example of this process somewhere? Cheers
I couldn't find much info that's why I started this thread here is a list of the names you can use. Not all tested wcarms arms wccarbody wcdriver driver wcextra0 extra0 wcextra1 extra1 wcextra2 extra2 wcextra3 extra3 wcextra4 wcextra5 wcextra6 pitbox wcextra7 wcextra8 wcextra9 wchelmet helmet wclollipop lollipop wcpitbody pitbody wcpithelmet pithelmet wcrefueler refueler wcrims rims wcspinner wcsponsor wcswheel swheel wcwindow window wcwindowsin windowsin wcwindowsout windowsout wcwindshieldin windshieldin wcwindshieldout windshieldout wcwing wing All you need to do is change the material name to match one in the above list. Change the name in your 3dmodeling programme and export the .gmt with new material name. Then create new texture for each car you want to change with the naming as discussed above.
lordpantsington was correct as is Nibiru. The mesh (GMT) must be properly UV mapped to a material (texture) that has the wildcard name, such as WCDRIVER.DDS. The "WC" in the material's name IS the "wildcard" placeholder. Thus for a material called WCDRIVER.DDS the game will substitute the WC for whatever wildcard you specified in the VEH file. So let's say you created track specific liveries for a driver named Bob. If you edited the VEH file correctly and your GMT mesh is mapped to the proper WCdriver.dds material, the game should look for different or appropriate WCDRIVER.DDS (like BOB1DRIVER.DDS, BOB2DRIVER.DDS....) if you specified the use of various track specific dds textures in the VEH file for the driver named Bob. If there aren't any track specific textures noted in the VEH file (using TrackLivery=" ") the game will just look for whatever default texture you specified, like DefaultLivery="BOB" for example. Again, if the GMT was mapped to WCDRIVER.DDS material then the game will look for a BOBDRIVER.DDS texture by default. Tough to explain but once you understand its pretty straightforward.
rF2 has animations for windscreens that can add dirt and bugsplats? Or it has that ability but no car has it so far?