PHY: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
(Starting to flesh out the file format as I go)
Line 1: Line 1:
[[PHY]] is the extension for Source's proprietary [[collision model]] data format.  It stores data for the rigid or jointed (ragdoll) [[collision model]] used by the [[MDL]]. In addition, it stores [[prop_data]] information about a model such as which gib-models to use if destroyed.
[[PHY]] is the extension for Source's proprietary [[collision model]] data format.  It stores data for the rigid or jointed (ragdoll) [[collision model]] used by the [[MDL]]. In addition, it stores [[prop_data]] information about a model such as which gib-models to use if destroyed.
== File Format ==
The first bytes of the file form the PHY header
<source lang="cpp">struct phyheader_t
{
int size;          // Size of header after this point (generally 16 for a total size of 20)
int id;            // Often zero, unknown purpose.
int solidCount;    // Number of solids in file
long         checkSum; // checksum of source .mdl file
}</source>
{{todo|Document headers for each solid}}
{{todo|Document "old format" if VPHY is not seen}}
{{todo|Document key-value data for each solid}}


== See also ==
== See also ==

Revision as of 01:03, 6 August 2010

PHY is the extension for Source's proprietary collision model data format. It stores data for the rigid or jointed (ragdoll) collision model used by the MDL. In addition, it stores prop_data information about a model such as which gib-models to use if destroyed.

File Format

The first bytes of the file form the PHY header

struct phyheader_t
{
	int		size;           // Size of header after this point (generally 16 for a total size of 20)
	int		id;             // Often zero, unknown purpose.
	int		solidCount;     // Number of solids in file
	long	        checkSum;	// checksum of source .mdl file
}
Todo: Document headers for each solid
Todo: Document "old format" if VPHY is not seen
Todo: Document key-value data for each solid

See also