SgPlane

A flat 2D surface in 3D space, typically one-sided and infinitely thin. Ideal for decals, terrain tiles, UI surfaces, or projection effects. Supports texture mapping and scaling to fit different use cases.

Inherits from

Usage

To use this class, add the following require at the top of your script:

local SgPlane = require 'engine/sceneobjects/sgplane'

Reference

class SgPlane
module:
create(options, parent)

Create a new plane object in the scenegraph.

Parameters:
  • options (table) – A table of options to fill the parameters

  • parent (SceneObject) – The parent scene object to add this to

Returns:

a promise which will resolve to the created object

Return type:

Promise

Usage:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
-- Options can be omitted. This example shows the defaults,
-- only specify the ones you want different.
SgPlane:create({
    active = true,
    name = "",
    transform = Transform.new(),
    layers = {0},
    tags = {},
    receiveShadow = false,
    castShadow = false,
    material = nil,
    width = 1,
    height = 1,
    widthSegments = 1,
    heightSegments = 1
})

Examples