Prop physics

From Valve Developer Community
Revision as of 20:37, 3 July 2005 by Omagus (talk | contribs) (A quick look at Prop_Physics)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


The entity which, when placed in a map and set to a model, creates a physics object. Physics objects can be picked up with the grav gun, according to their weight, and fully interact with their world in terms of collision, gravity, and world effects. If you have played a source game in any form you have definetly seen one in action. Additional settings in the entity include a multiplyer for weight, name field for I/O interactions, damage type (sharp or blunt), etc. Entities can be flaged to start motion disabled (think sawblades), and additionally flaged to allow or disallow gravity gun pickup, etc.

If you are creating a multiplayer map, you should use a prop_physics_multiplayer for most objects instead of a prop_physics. Prop_physics is ideal for single-player maps, where accuracy of interactions has no network overhead to worry about. The detail going into the interaction between objects in multiplayer results in an undesireably large network overhead and thus requires the detail of the interactive aspects of the objects be simplified. To solve this, Valve created prop_physics_multiplayer, which uses a much simpler structure of the model to do physics interactions, resulting in much better network play. Extremly simple models (simple being anything "boxy" [computer cases, keyboards, small jars, etc]) will not have prop_physics_multiplayer settings, but this is fine because those models are so simple that making them prop_physics will not have an adverse effect on network trafic. If you are having a problem in a multiplayer map with a small object that is behaving strangly as a prop_physics_multiplayer, try making it a prop_physics.

Valve has tryed hard to keep you from having to reinvent the chair every time you want a chair in your map. Models have built in properties that set the material, health, and sounds associated with an object. If you are dissatisfyed with the built in properties, use a prop_physics_override to gain more control over the object's properties. I have yet to require the use of this yet, so someone with more understanding of where this should be used than myself should clean this up.

If you are making a multiplayer map and want your breakable objects to come back after a while, use a prop_physics_respawnable.