[Include] Model Sizes
#1

Originally posted by ******, but since he left, I decided to repost it. Credits to Kalcor for the raw object data.

Download:

https://raw.githubusercontent.com/em...modelsizes.inc

There are three functions in this include:

pawn Код:
forward Float:GetColSphereRadius(objectmodel);
This gets the radius of the collision spheres for all the GTA objects used in SA (including the SA:MP objects); except skins, vehicles, and weapons. The collision sphere entirely encompases the object, so is a good estimator of the size of the object (for example to set the view distance accordingly). Returns 0.0 on invalid models.

pawn Код:
forward GetColSphereOffset(objectmodel, &Float:x, &Float:y, &Float:z);
This gets the offsets of the collision sphere for all objects. This information is kept in a separate array as it is generally less useful than the sphere radius. It indicates where the centre of the collision sphere is relative to the centre of the object, a position set to minimise the size of the sphere relative to the object. Note that you can't accurately calculate the exact center of the collision sphere without the quaternion rotation of the object, that is why this is a separate "stock" array - so it isn't included in the compiled code if not used.

pawn Код:
forward GetColCount();
Gets the total number of models for which collision data is stored:

Usage is VERY simple. For model IDs up to 19901, simply use that number as an index in to the data, any other IDs don't exist (but return 0.0):

pawn Код:
for (new i = 0; i != GetColCount(); ++i)
{
    printf("%f", GetColSphereRadius(i));
    new Float:x, Float:y, Float:z;
    GetColSphereOffset(i, x, y, z);
    printf("%f %f %f", x, y, z);
}
Big thanks to Kalcor for dumping the raw data for this out of the game.

Note that due to the sheer volume of data here, the files sets:

pawn Код:
#pragma compress 0
To avoid the warning that it gets set anyway.
Reply


Messages In This Thread
Model Sizes - by Emmet_ - 14.04.2015, 22:30
Re: Model Sizes - by Crayder - 14.04.2015, 22:34
Re: Model Sizes - by Abagail - 14.04.2015, 22:34
Re: Model Sizes - by Emmet_ - 14.04.2015, 22:35
Re: Model Sizes - by Baltazar - 23.05.2015, 21:35
Re: Model Sizes - by Crayder - 23.05.2015, 22:35
Re: Model Sizes - by Pottus - 24.05.2015, 03:32
Re: Model Sizes - by Crayder - 24.05.2015, 04:41
Re: Model Sizes - by Crayder - 16.08.2015, 16:31
Re: Model Sizes - by Pottus - 16.08.2015, 23:28

Forum Jump:


Users browsing this thread: 5 Guest(s)