DrawPoly
DocsDrawPoly(x1, y1, z1, x2, y2, z2, x3, y3, z3, red, green, blue, alpha)Description
x/y/z - Location of a vertex (in world coords), presumably.
----------------
x1, y1, z1 : Coordinates for the first point
x2, y2, z2 : Coordinates for the second point
x3, y3, z3 : Coordinates for the third point
r, g, b, alpha : Color with RGBA-Values
Keep in mind that only one side of the drawn triangle is visible: It's the side, in which the vector-product of the vectors heads to: (b-a)x(c-a) Or (b-a)x(c-b).
But be aware: The function seems to work somehow differently. I have trouble having them drawn in rotated orientation. Try it yourself and if you somehow succeed, please edit this and post your solution.
I recommend using a predefined function to call this.
[VB.NET]
Public Sub DrawPoly(a As Vector3, b As Vector3, c As Vector3, col As Color)
[Function].Call(Hash.DRAW_POLY, a.X, a.Y, a.Z, b.X, b.Y, b.Z, c.X, c.Y, c.Z, col.R, col.G, col.B, col.A)
End Sub
[C#]
public void DrawPoly(Vector3 a, Vector3 b, Vector3 c, Color col)
{
Function.Call(Hash.DRAW_POLY, a.X, a.Y, a.Z, b.X, b.Y, b.Z, c.X, c.Y, c.Z, col.R, col.G, col.B, col.A);
}
BTW: Intersecting triangles are not supported: They overlap in the order they were called.Parameters
| Name | Type | Description |
|---|---|---|
x1 | float | — |
y1 | float | — |
z1 | float | — |
x2 | float | — |
y2 | float | — |
z2 | float | — |
x3 | float | — |
y3 | float | — |
z3 | float | — |
red | int | — |
green | int | — |
blue | int | — |
alpha | int | — |
Quick Snippet: Get Coordinatesx1y1z1x2
x1y1z1x2Add this command to your client script to retrieve precise locations in-game.
-- Add this to your client.lua. Type /pos in-game to copy coords.
RegisterCommand('pos', function()
local ped = PlayerPedId()
local coords = GetEntityCoords(ped)
local heading = GetEntityHeading(ped)
local output = string.format("vector4(%.2f, %.2f, %.2f, %.2f)", coords.x, coords.y, coords.z, heading)
print(output)
TriggerEvent('chat:addMessage', { args = { '^4[COORD]^0', output } })
end)Returns
voidThis native does not return a value.