Level Transitions

From Valve Developer Community
Jump to: navigation, search

Level transitions allow you transfer the player from one map to another, essentially making two separate levels seem like one larger map.

Why change levels?

The Source Engine, while expansive, still has limits as to the the amount data that can be processed. Breaking up levels also helps split up the work load and compile times during the design process.

Types of level transitions

Two way transitions

A two way level transition allows a player to travel back and forth between two connected maps.

One way transitions

One way transitions prevent the player from traveling back to previously explored areas after being completed. An obstacle or chain of events makes a previous area inaccessible.

Methods / Styles of transitioning

Seamless

  • Example:
    • A door or hallway connecting two rooms

Displacement

  • Example:
    • A portal connecting two worlds
    • A character getting knocked unconscious and dragged into a new area

Creating a seamless transition

To create a seamless transition, parts of one level are included inside the next level being loaded. The exception being "teleportation" style transitions, where the players are transported into an entirely new world or environment. Below is an example from Half-Life 2's d1_trainstation_01, the first level of the game.
D1 trn sta 01.jpg D1 trn sta 02.jpg D1 trn sta 03.jpg D1 trn sta 04.jpg D1 trn sta 05.jpg

  • In the 1st image you can see the trigger_changelevel in the doorway that loads the next map.
  • In the 2nd image, zoomed out you can see the map actually ends at the staircase just beyond the door in the first picture. Most of the level lies on the right of the picture here.
  • Once the player touches the changelevel, they're greeted by a loading seen as demonstrated in the 3rd image, the next map is loaded over the current map.
  • Now the player is in an entirely new map, but from the other side of the door, it appears the old level is still there.
  • However, if you zoom out, you can see that a new level was loaded and the original level was almost entirely removed. There is no longer the any parts of the level that were in the right from the zoomed out screenshot above, but an entirely new area in the upper left.

See Also

External Links