lasa01 / Plumber

A Blender addon for importing Source 1 engine maps, models, materials and textures. This addon makes it possible to import full CS:GO, TF2, CS:S or other Source 1 game maps into Blender.
MIT License
395 stars 29 forks source link
blender blender-addon mdl source-engine vmf vmt

Plumber

A Blender addon for importing Source 1 engine maps, models, materials and textures.

This addon makes it possible to import full CS:GO, TF2, CS:S or other Source 1 game maps into Blender. Source 2 games, such as CS2, are not supported. The imported maps have accurate materials and overlays and correctly placed props and lights. Skyboxes are converted into a Blender-compatible format and 3D skyboxes can be easily transformed into the correct position and scale with minimal user intervention. No manual game file extraction is required and installed Source games on Steam are detected automatically. You just need to select the correct game and start importing.

Supported file types are .vmf, .mdl, .vmt and .vtf. For a more complete overview of supported features, see Supported features for imported assets.

Import dialog

Table of contents

Requirements

Quick start

Installation

You can also follow a video tutorial, such as this one by ItsJustChris. This tutorial is recorded using a beta version, but also applies to the current version.

Installing latest from source (very advanced users)

Make sure the following dependencies for building the addon are installed. The links are for Windows, for other platforms you need to figure it out yourself.

After installing the dependencies, follow the following steps:

Usage

Installed Steam games are automatically detected on the first addon startup. You can start importing immediately without any configuration required. Just remember to select the correct game when importing files.

Detecting new Steam games

If you have installed new Source games on Steam after installing the addon, you will need to redetect the installed games. This can be done from Edit -> Preferences -> Add-ons -> Plumber by pressing the Redetect installed games button.

If you need to manually detect a game that is not installed in Steam, you can use the Detect from gameinfo.txt button in the preferences.

Importing from old CS:GO installation

If you have the old CS:GO files somewhere, it is possible to manually configure a game to import old CS:GO assets.

You need to open preferences, and use the Detect from gameinfo.txt button. This opens a file select dialog, where you need to choose the gameinfo.txt file, which is present in csgo directory inside the old CS:GO installation.

Common import options

Maps

File -> Import -> Plumber -> Valve Map Format (.vmf)

Source maps that ship with the game are in a compiled .bsp file format. This addon can only import them in the original .vmf format. You can use BSPSource to decompile the map files into the .vmf format supported by this addon. BSPSource requires Java to be installed. For CS:GO, the .bsp map files can be found inside Counter-Strike Global Offensive/csgo/maps/. They can also be easily extracted using the addon's game file browser.

When importing decompiled maps, overlay related errors such as overlay contains invalid uv data or no geometry was imported for the sides the overlay was applied to can be safely ignored as BSPSource sometimes generates broken overlays.

Blender may appear frozen for a couple of seconds when importing complex maps. To see possible errors in realtime, open the Blender console from Window -> Toggle System Console before importing.

Options:

Transforming the 3D sky

Imported metadata for external scripts / addons

MDL

File -> Import -> Plumber -> Source Model (.mdl)

Options:

Materials

File -> Import -> Plumber -> Valve Material Type (.vmt)

Options:

Textures

File -> Import -> Plumber -> Valve Texture Format (.vtf)

The texture is imported as an image in Blender, and is not immediately visible after import. It can be used in materials with a Image Texture node, for example.

Game file browser

Game file browser allows you to import models, materials or textures straight from the game files, or to extract any game files.

Can be accessed from the 3D view side bar under Plumber (recommended), or alternatively from File -> Import -> Plumber -> Browse game files.

The browser only browser supported file types by default. This can be changed to display all files by opening the arrow on the lower left corner of the file list.

Troubleshooting

The FAQ has instructions for dealing with some common problems and errors.

If you can't find your problem there, you can ask on the AGR TechSupport Discord's #blender channel or open a new issue. When asking for help, always remember to open the Blender console from Window -> Toggle System Console before importing and to send the console logs afterwards with the help request by copy-pasting.

Credits

MDL reading is based on:

Skybox conversion is based on:

Also thanks to:

License

This project is licensed under the MIT license. See LICENSE for more information.