Template:Painted variants/Tutorial

From Team Fortress Wiki
< Template:Painted variants
Revision as of 09:48, 23 November 2010 by Pilk (talk | contribs) (Modify VMT Files: OCD.)
Jump to: navigation, search

This tutorial will document the current method of painting hats using HLMV.

Setting up HLMV

We want the images to be the best quality possible, so you need to set up Half Life Model Viewer so that it generates high quality images. You can force high quality settings in your graphics cards control panel, but this does not work for some people - so I will document the alternate method.

Dxsupport.cfg

  1. Navigate to this directory T:\Steam\steamapps\username\sourcesdk\bin\orangebox\bin (where T:\ the folder your Steam folder resides in).
  2. Open up Dxsupport.cfg in a text editor of your choice. If you do not have this file, create it with this content.
  3. Find your graphics card within that file, if it is not listed go to the bottom and use ATI Unknown or NVidia Unknown depending on your graphics card manufacturer.
  4. Add or modify the following lines in Dxsupport.cfg - within the section for your graphics card, and save it.
"DxLevel"	"99"
"ConVar.mat_antialias"	"8"
"ConVar.mat_forceaniso"	"8"
"ConVar.mat_picmip"	"-10"
5. Open up a model and ensure there is no anti-aliasing or other quality defects. If there is it's likely your graphics card is not able to render images of high enough quality.

HLMV Options

  1. Open up Model Viewer via the Source SDK.
  2. Check (if it's not already checked) the Normal Mapping checkbox.
  3. Set the background colour to white for each item: Options... > Background Color...
  4. Full-screen HLMV (so you get a nice big image).
  5. When generating hat images, you should use the red team texture and angle the hat slightly forward and facing left or right (get as much of the hat in view as possible). For example: File:Painted_Tough_Guy's_Toque_7D4071.png. All the painted images of a certain hat should be in the same position.

Modify VMT Files

Name Color {R G B}
A Deep Commitment to Purple #7D4071 {125 64 113}
Aged Moustache Grey #7E7E7E {126 126 126}
Australium Gold #E7B53B {231 181 59}
Color No. 216-190-216 #D8BED8 {216 190 216}
Indubitably Green #729E42 {114 158 66}
Mann Co. Orange #CF7336 {207 115 54}
Muskelmannbraun #A57545 {165 117 69}
Noble Hatter's Violet #51384A {81 56 74}
Peculiarly Drab Tincture #C5AF91 {197 175 145}
Radigan Conagher Brown #694D3A {105 77 58}
Ye Olde Rustic Color #7C6C57 {124 108 87}
Zephaniah's Greed #424F3B {66 79 59}
An Extraordinary Abundance of Tinge #E6E6E6 {230 230 230}
A Distinctive Lack of Hue #141414 {20 20 20}
Team Spirit (RED) #B8383B {184 56 59}
Team Spirit (BLU) #5885A2 {88 133 162}

DLL Support

Instead of modifying VTF files, we can set up HLMV to correctly interpret newer VMT files and modify them directly, allowing us to have fully accurate representation of colors. To support this in-model viewer representation of paint, some SDK DLLs need updating:

  1. Copy this contents of this directory T:\Steam\steamapps\username\team fortress 2\bin to this one T:\Steam\steamapps\username\sourcesdk\bin\orangebox\bin, overwriting where necessary.

VMT Editing

  1. Extract the relevant VMT to the right place. For example, Tough Guy's Toque would use heavy_stocking_cap.vmt, and those files should be placed in: T:\Steam\steamapps\username\team fortress 2\tf\materials\models\player\items\heavy.
  2. Open the VMT file in VTFEdit or any text editor, and position the camera in HLMV to take screenshots.
  3. Near the top of the VMT, change "$detailblendfactor" .01 to "$detailblendfactor" .00. This removes the faint fire overlay (most noticeable on black painted items).
  4. Create a new line in the VMT file underneath "$colortint_base" "{VALUE}" and fill it with this content "$color2" "{R G B}". You can find a complete list of colours to copy/paste below.
  5. Paste the relevant RGB value found in the table to the left.
  6. Hit F5 in HLMV and take a screenshot of this color, and paste it in a Photoshop document.
  7. Repeat steps 5-6 for each color.
// Uncomment and re-comment as necessary.
//"$color2" "{}"            // Stock - Copy the value of "$colortint_base" into here.
//"$color2" "{125 64 113}"  // A Deep Commitment to Purple
//"$color2" "{126 126 126}" // Aged Moustache Grey
//"$color2" "{231 181 59}"  // Australium Gold
//"$color2" "{216 190 216}" // Color No. 216-190-216
//"$color2" "{114 158 66}"  // Indubitably Green
//"$color2" "{207 115 54}"  // Mann Co. Orange
//"$color2" "{165 116 69}"  // Muskelmannbraun
//"$color2" "{81 56 74}"    // Noble Hatter's Violet
//"$color2" "{197 175 145}" // Peculiarly Drab Tincture
//"$color2" "{105 77 58}"   // Radigan Conagher Brown
//"$color2" "{124 108 87}"  // Ye Olde Rustic Color
//"$color2" "{66 79 59}"    // Zephaniah's Greed
//"$color2" "{230 230 230}" // An Extraordinary Abundance of Tinge
//"$color2" "{20 20 20}"    // A Distinctive Lack of Hue
//"$color2" "{184 56 59}"   // Team Spirit (RED)
//"$color2" "{88 133 162}"  // Team Spirit (BLU)

Export and the images

  1. Go to File... > Scripts... > Export layers to file and set the destination to wherever you see fit, and the file-type to PNG-8.
  2. Ensure Transparency and Trim layers are both ticked, and hit Run.
  3. Upload a new version of the existing files on the Wiki.

Amend the appropriate pages

Once all the files are uploaded, go to User:Pilk/Painted_items and add |updated=y to the row template for that item. You're officially done!

Note

The new DLLs will mean most items will appear washed out in the model viewer. In order to fix this (for Vanilla screenshots) change the "$color2" value to the same value as "$colortint_base" and F5.