Skybox (2D) with Terragen
Terragen is a freeware scenery generator which can be used to create 2D skyboxes. The freeware version has a limitation that effectively limits the texture dimensions of the skybox to 960, so it can only really be used for skies at 512x512. If Terragen is registered for $99 (US), the size limitation is removed, so skies at 1024x1024 could potentially be rendered.
This tutorial will explain how to use a scene in Terragen to create a 2D skybox that can be used in Hammer.
Contents
Creating the Scene
Terragen can be downloaded here.
Terragen takes a little bit of practice to get the hang of. There are many websites that can teach you the basics. Here are some good ones:
Create your scene and save it. The camera position doesn't matter for now. Terragen can render realistic land if you're very skilled. In source engine games making terrain is not recommended for a 2D skybox, since Source has 3D skyboxes; however, it can often be a good idea to use the tool to create a downwards facing texture to use on a displacement map in your skybox, like de_inferno in CSS. Removing FOV distortion can be a pain, but its not entirely necessary.
Set up the Script
The skybox requires six images to be rendered. This script will automate the creation of all six so you do not have to repeatedly come back to your computer and readjust the camera after each render.
Use Notepad to save the following script as skyboxscript.tgs. It can be saved anywhere.
initanim "C:\output\sky_testft", 1 ;_ft Zoom 1.0 CamH 0 CamP 0 CamB 0 frend initanim "C:\output\sky_testlf", 1 ;_lf Zoom 1.0 CamH 90 CamP 0 CamB 0 frend initanim "C:\output\sky_testup", 1 ;_up Zoom 1.0 CamH 270 CamP 90 CamB 0 frend initanim "C:\output\sky_testbk", 1 ;_bk Zoom 1.0 CamH 180 CamP 0 CamB 0 frend initanim "C:\output\sky_testrt", 1 ;_rt Zoom 1.0 CamH 270 CamP 0 CamB 0 frend initanim "C:\output\sky_testdn", 1 ;_dn Zoom 1.0 CamH 270 CamP -90 CamB 0 frend
Render the Skybox
1. Now, in Terragen, uncheck both of the Fixed Height Above Surface boxes in the Rendering Control window. Place your Terragen camera where you want the viewpoint of the skybox to be. What's important here is the Camera Position. The Camera Orientation doesn't matter. Note that changing the height can affect the appearance of the clouds even though the horizon is always in the same location.
2. Set the detail all the way up in the Rendering Control window. Set the width and height both to 512. This is the best you can do with the freeware version. If you have registered Terragen, set them both to 1024.
3. You should double check that you did the first two steps right so you don't waste a lot of time. Now, choose Execute Script... from the Terragen menu, and choose the file skyboxscript.tgs that you created earlier. Now the rendering will commence. It may take a couple of hours or more. Call someone you love.
4. When the rendering is complete, a dialog will pop up saying the script is complete. Quit Terragen.
Get the Textures Ready
Now, if you open up the C: drive, you'll see six new BMP files. Rename them as follows, where xxxx is whatever you want to name your sky:
Original filename | Change to |
---|---|
skyrender0001.bmp | xxxxft.bmp |
skyrender0002.bmp | xxxxlf.bmp |
skyrender0003.bmp | xxxxup.bmp |
skyrender0004.bmp | xxxxbk.bmp |
skyrender0005.bmp | xxxxrt.bmp |
skyrender0006.bmp | xxxxdn.bmp |
Use Photoshop or PaintShopPro to save them as TGA files into ...sourcesdk_content/materialsrc/skybox
. Create the folder if you have to. Then drag the six TGAs onto Vtex to create your VTFs.
Create the VMTs
Head over to your new VTFs. They'll be in ...materials/skybox
for whichever game you're editing. Now create six VMTs with the same names as the VTFs using this format:
"UnlitGeneric" { "$basetexture" "skybox/xxxxbk" "$nofog" 1 "$ignorez" 1 }
Where xxxx represents the name of your sky. For each of the six VMTs, change that bk to the appropriate suffix to match its filename.
Completion
The skybox is complete. To use it in Hammer, go to Map properties... in the Map menu and change the skybox entry to xxxx, where xxxx represents the name you chose for your sky.
Environment articles: | |
---|---|
Skies and environment maps | Skybox (2D) • Skybox (3D) • HDR Skies • Skybox with Terragen • Skybox with Terragen - Advanced • List of skies |
Terrain and displacement mapping | Displacements • Creating Holes in Displacements • Digital Elevation Models • Creating custom terrain with Worldmachine |
|