RedM Natives

VDIST2

Calculates distance between vectors but does not perform Sqrt operations.

Hash0xB7A628320EFF8E47
Runtime nameVdist2
NamespaceBUILTIN
SideClient
NameOfficial
Docs
Since build1207
GTA V hash0xB7A628320EFF8E47

Signature

float VDIST2(float x1, float y1, float z1, float x2, float y2, float z2);

Parameters

NameTypeDescription
x1float—
y1float—
z1float—
x2float—
y2float—
z2float—

Returns float

Description

Calculates distance between vectors but does not perform Sqrt operations. (Its way faster)
The value returned will be in RAGE units.

Usage

Lua
local retval = Vdist2(x1, y1, z1, x2, y2, z2)

-- always works, by hash
local retval = Citizen.InvokeNative(0xB7A628320EFF8E47, x1, y1, z1, x2, y2, z2, Citizen.ResultAsFloat())
JavaScript and C#
JavaScript
const retval = Vdist2(x1, y1, z1, x2, y2, z2);

// by hash
const retval = Citizen.invokeNative('0xB7A628320EFF8E47', x1 + 0.0000001, y1 + 0.0000001, z1 + 0.0000001, x2 + 0.0000001, y2 + 0.0000001, z2 + 0.0000001, Citizen.returnResultAnyway(), Citizen.resultAsFloat());
C#
float retval = Function.Call<float>((Hash)0xB7A628320EFF8E47, x1, y1, z1, x2, y2, z2);
  • Float parameters: Lua integers (10, or whole numbers decoded from NUI/JSON) are sent as ints and read as garbage. Write 10.0 or value + 0.0. The generated JS wrappers add 0.0000001 to non-zero floats for the same reason.

Sources

alloc8or RDR3 NativeDB

Something wrong or missing? Contribute a verified note — corrections ship through pull requests.