RedM Natives

GET_LINE_PLANE_INTERSECTION

Hash0xAB6A04CEC428258B
Runtime nameGetLinePlaneIntersection
NamespaceMISC
SideClient
NameOfficial
Docs
Since build1207
GTA V hash0xF56DFB7B61BE7276

Signature

BOOL GET_LINE_PLANE_INTERSECTION(float p0, float p1, float p2, float p3, float p4, float p5, float p6, float p7, float p8, float p9, float p10, float p11, float* p12);

Parameters

NameTypeDescription
p0float—
p1float—
p2float—
p3float—
p4float—
p5float—
p6float—
p7float—
p8float—
p9float—
p10float—
p11float—
p12float*—

Returns BOOL

Usage

Lua
local retval, p12 = GetLinePlaneIntersection(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12)

-- always works, by hash
local retval, p12 = Citizen.InvokeNative(0xAB6A04CEC428258B, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, Citizen.PointerValueFloatInitialized(p12), Citizen.ReturnResultAnyway())
JavaScript and C#
JavaScript
const [retval, p12] = GetLinePlaneIntersection(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12);

// by hash
const [retval, p12] = Citizen.invokeNative('0xAB6A04CEC428258B', p0 + 0.0000001, p1 + 0.0000001, p2 + 0.0000001, p3 + 0.0000001, p4 + 0.0000001, p5 + 0.0000001, p6 + 0.0000001, p7 + 0.0000001, p8 + 0.0000001, p9 + 0.0000001, p10 + 0.0000001, p11 + 0.0000001, Citizen.pointerValueFloatInitialized(p12), Citizen.returnResultAnyway());
C#
var p12 = new OutputArgument();
bool retval = Function.Call<bool>((Hash)0xAB6A04CEC428258B, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12);
// p12.GetResult<float>()
  • 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.
  • The last argument is an in/out pointer: pass its initial value, and the updated value is returned after the result.

Sources

alloc8or RDR3 NativeDB

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