From Valve Developer Community
Jump to: navigation, search

HL2Tex HL2Tex, or The Half-Life: 2 - Texture Tool, is a tool created by Daedalus to assist people in creating graphics for the Source engine. It simplifies the transformation of TARGA images to VTF files, creates the Txt configuration file for Vtex, and creates the VMT file that Hammer uses.

HL2Tex has a number of options available through its dialogs.


  • Start the application
  • First time users: Setup your vtex path!
    • On the VTEX Options panel click Select.
    • Vtex.exe will be located in your Steam\SteamApps\your@email\sourcesdk\bin\ folder.
    • Select Vtex.exe and click Open.
    • Note: HL2Tex saves this setting so you won't have to do it next time.
  • Navigate to your materialsrc folder
  • Select the file you wish to convert to VTF (only .tga files are displayed)
  • Set your options in the bottom two dialogs
  • Click Run VTEX. This also creates the .txt setting file (if desired) and the .vmt file (if desired)


There are two versions available.

Visual Basic .NET version

This is the recommended version to download. It's bigger, however it's written in .NET which a lot of people have these days, and is easier to distribute.

The first download contains an installer to automatically install all required files.

The second download is just the files themselves.

Visual Basic 6.0 version

This version is a great deal smaller, however Visual Basic 6.0 is required and there is no installer.

Source code

The source code can be downloaded at one of Daedalus' SourceForge projects.

Note that the VB6 version is much easier to read, and there is only enough changes to get it to run in .Net otherwise.

The .Net version is provided for compilation purposes.

Source code license

Released under the GNU Public License.

You may not take this code, edited or not, and simply call it your own.



  • This is the least commented code Daedalus has ever written. He apologizes that it was made public!
  • Daedalus completed the program (both VB6 and .Net version) in about 6 hours. He hopes there are no bugs :\
  • The VB6 version was written initially, as Daedalus didn't think he could make a .Net version
  • The .Net version was a test of the .Net Upgrade Wizard. Daedalus tried it for fun, and it worked almost flawlessly.
  • Daedalus attempted a few things he hadn't done in VB6 before and ... it almost all worked on the first go...weird
  • The hardest thing to get working for the .Net version: getting all the windows to display when you clicked the main one