Revision Difference
util.GetModelInfo#512330
<function name="GetModelInfo" parent="util" type="libraryfunc">⤶
<description>⤶
Returns a table containing the info about the model. It seems to be not working serverside, but still exists serverside.⤶
⤶
<note>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</note>⤶
</description>⤶
<realm>Shared</realm>⤶
<args>⤶
<arg name="mdl" type="string">Model path</arg>⤶
</args>⤶
<rets>⤶
<ret name="" type="table">The model info as a table with the following keys:⤶
* <page>number</page> SkinCount - Identical to <page>Entity:SkinCount.</page>⤶
* <page>string</page> KeyValues - Valve key-value formatted info about the model's physics (Constraint Info, etc). This is limited to 4096 characters.⤶
* <page>string</page> ModelKeyValues - Valve key-value formatted info about the model ($keyvalues command in the .qc of the model), if present</ret>⤶
</rets>⤶
</function>⤶
⤶
<example>⤶
<description>Example usage of the function. We use <page>util.KeyValuesToTablePreserveOrder</page> in order to preserve multiple keys with the same name.</description>⤶
<code>⤶
local ModelInfo = util.GetModelInfo("models/combine_gate_vehicle.mdl" )⤶
print( ModelInfo.SkinCount ) // The skin count⤶
PrintTable( util.KeyValuesToTablePreserveOrder( ModelInfo.KeyValues ) ) // Physics data⤶
</code>⤶
<outputfixedwidth>Fixed width</outputfixedwidth>⤶
<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⤶
</output>⤶
⤶
</example>