Garry's Mod Wiki

util.GetModelInfo

  table util.GetModelInfo( string mdl )

Description

Returns a table containing the info about the model.

This function will silently fail if used on models with following strings in them:
  • _shared
  • _anims
  • _gestures
  • _anim
  • _postures
  • _gst
  • _pst
  • _shd
  • _ss
  • _anm
  • _include

Arguments

1 string mdl
Model path

Returns

1 table
The model info as a table with the following keys:
  • number SkinCount - Identical to Entity:SkinCount.
  • string KeyValues - Valve key-value formatted info about the model's physics (Constraint Info, etc). This is limited to 4096 characters.
  • string ModelKeyValues - Valve key-value formatted info about the model ($keyvalues command in the .qc of the model), if present

Example

Example usage of the function. We use util.KeyValuesToTablePreserveOrder in order to preserve multiple keys with the same name.

local ModelInfo = util.GetModelInfo("models/combine_gate_vehicle.mdl" ) print( ModelInfo.SkinCount ) // The skin count PrintTable( util.KeyValuesToTablePreserveOrder( ModelInfo.KeyValues ) ) // Physics data
Output:
1: Key = solid Value: 1: Key = index Value = 0 2: Key = name Value = Vehicle_Gate.Gate2_L 3: Key = mass Value = 1 4: Key = surfaceprop Value = metal 5: Key = damping Value = 0 6: Key = rotdamping Value = 0 7: Key = inertia Value = 1 8: Key = volume Value = 68522.9296875 ... 6: Key = editparams Value: 1: Key = rootname Value = 2: Key = totalmass Value = 1