Skip to content

render

The render namespace. Nyx Lua API v1.

paint

render.line(a: vector, b: vector, col: number, thickness: number?) -> ()

A line from a to b.

paint

render.rect(min: vector, max: vector, col: number, rounding: number?, thickness: number?) -> ()

A rectangle outline.

paint

render.rect_filled(min: vector, max: vector, col: number, rounding: number?) -> ()

A filled rectangle.

paint

render.rect_gradient(min: vector, max: vector, tl: number, tr: number, br: number, bl: number) -> ()

A rectangle with a colour per corner.

paint

render.circle(center: vector, radius: number, col: number, segments: number?, thickness: number?) -> ()

A circle outline.

paint

render.circle_filled(center: vector, radius: number, col: number, segments: number?) -> ()

A filled circle.

paint

render.triangle_filled(a: vector, b: vector, c: vector, col: number) -> ()

A filled triangle.

paint

render.poly(points: {vector}, col: number, thickness: number?) -> ()

A closed outline through 2 to 512 points.

paint

render.poly_filled(points: {vector}, col: number) -> ()

A filled convex polygon.

paint

render.text(font: number, pos: vector, col: number, text: string, flags: string?) -> ()

Text; flags may contain center, outline, shadow.

render.measure_text(font: number, text: string) -> (number, number)

Width and height of text in a font.

render.font(name: string, size: number?) -> number

A Nyx font (ui, ui_bold, esp, esp_title, mono) at the nearest size.

paint

render.push_clip(min: vector, max: vector) -> ()

Clips later drawing to a rectangle.

paint

render.pop_clip() -> ()

Ends the last push_clip.

render.load_image(file: string) -> number

Loads a PNG from the scripts folder (bare file name).

paint

render.image(image: number, pos: vector, size: vector, tint: number?) -> ()

Draws a loaded image.

paint

render.icon(name: string, pos: vector, size: number, col: number) -> ()

A Font Awesome 7 Free solid icon by name or alias (fontawesome.com/search?ic=free&s=solid) in a size x size box at pos; an unknown name is an error.

paint

render.line_3d(a: vector, b: vector, col: number, thickness: number?) -> ()

A line between two world points, projected every rendered frame so it stays on the world at any frame rate; the part behind the camera is cut off. Not in a window.

paint

render.text_3d(font: number, pos: vector, col: number, text: string, flags: string?) -> ()

Text anchored at a world point, projected every rendered frame; flags as render.text; hidden while the point is behind the camera. Not in a window.

paint

render.circle_3d(center: vector, radius: number, col: number, segments: number?, thickness: number?) -> ()

A circle lying flat around a world point (radius in world units, 3 to 128 segments, default 32), projected every rendered frame. Not in a window.

paint

render.box_3d(min: vector, max: vector, col: number, thickness: number?) -> ()

The 12 edges of the world box between two corners, projected every rendered frame. Not in a window.

render.world_to_screen(pos: vector) -> vector?

Screen position of a world point, nil off screen.

render.screen_size() -> vector

Screen width and height.