Entities Fall Through Displacements

From Valve Developer Community
Jump to navigation Jump to search
English (en)한국어 (ko)Русский (ru)Translate (Translate)

Issue

Physics entities fall through displacements. These can include prop_physics, weapons, prop_ragdolls, and prop_vehicles. Entities with hulls, including NPCs and the player, are unaffected.

This behavior only appears when using HL2 (appid 220) to play maps compiled after the August 2006 SDK update. Maps compiled prior to this date are unaffected. All maps compiled in Hammer are affected, regardless of the mod selected in the Source SDK menu.

Fix

First, ensure that none of the the boxes are ticked in the displacement tab of the face edit dialogue.

Face Edit Disp.png


If the "No Physics Collision" box is unchecked and the problem persists, there are two solutions:

  • Use Episode 1 (appid 240) or the Source SDK base (appid 215) for your map or mod. This is the best solution.
  • If you must use HL2 (appid 220) or if your mod is based on the appid 220 code base and cannot be updated, then you must add -novirtualmesh to your compile command line. Run the map in expert mode and add -novirtualmesh to the command line as indicated in the image.


Novirtualmesh command.jpg

This will increase the size of the BSP, but collisions with all entities will be rendered correctly.

Examples

Displacement test0000.jpg

Displacement Test 1 A map using displacements. Note that even though this map was compiled under the 220 appid in Hammer, it plays normally in Episode 1. If it is played in HL2, the boat, grenades and props fall through the displacements.

Displacement test0001.jpg

Displacement Test 2 The same map compiled using the -novirtualmesh command. This map plays normally in both Episode 1 and HL2, but its size has increased from 235 kb to 573 kb.

Displacement Source VMF

Remember

Tip.pngTip:Once the map is compiled, there are no commands to allow backwards compatibility.
Tip.pngTip:The best solution is to update to the latest version of the Source engine rather than make your maps reverse compatible.