CSGPolygon

Inherits: CSGPrimitive < CSGShape < GeometryInstance < VisualInstance < Spatial < Node < Object

Extrudes a 2D polygon shape to create a 3D mesh.

Description

This node takes a 2D polygon shape and extrudes it to create a 3D mesh.

Properties

float

depth

1.0

Material

material

Mode

mode

0

bool

path_continuous_u

float

path_interval

bool

path_joined

bool

path_local

NodePath

path_node

PathRotation

path_rotation

PoolVector2Array

polygon

PoolVector2Array( 0, 0, 0, 1, 1, 1, 1, 0 )

bool

smooth_faces

false

float

spin_degrees

int

spin_sides

Enumerations

enum Mode:

  • MODE_DEPTH = 0 —- Shape is extruded to depth.

  • MODE_SPIN = 1 —- Shape is extruded by rotating it around an axis.

  • MODE_PATH = 2 —- Shape is extruded along a path set by a Shape set in path_node.


enum PathRotation:

  • PATH_ROTATION_POLYGON = 0 —- Slice is not rotated.

  • PATH_ROTATION_PATH = 1 —- Slice is rotated around the up vector of the path.

  • PATH_ROTATION_PATH_FOLLOW = 2 —- Slice is rotate to match the path exactly.

Property Descriptions

Default

1.0

Setter

set_depth(value)

Getter

get_depth()

Extrusion depth when mode is MODE_DEPTH.


Setter

set_material(value)

Getter

get_material()

Material to use for the resulting mesh.


Default

0

Setter

set_mode(value)

Getter

get_mode()

Extrusion mode.


  • bool path_continuous_u

Setter

set_path_continuous_u(value)

Getter

is_path_continuous_u()

If true the u component of our uv will continuously increase in unison with the distance traveled along our path when mode is MODE_PATH.


Setter

set_path_interval(value)

Getter

get_path_interval()

Interval at which a new extrusion slice is added along the path when mode is MODE_PATH.


Setter

set_path_joined(value)

Getter

is_path_joined()

If true the start and end of our path are joined together ensuring there is no seam when mode is MODE_PATH.


Setter

set_path_local(value)

Getter

is_path_local()

If false we extrude centered on our path, if true we extrude in relation to the position of our CSGPolygon when mode is MODE_PATH.


Setter

set_path_node(value)

Getter

get_path_node()

The Shape object containing the path along which we extrude when mode is MODE_PATH.


Setter

set_path_rotation(value)

Getter

get_path_rotation()

The method by which each slice is rotated along the path when mode is MODE_PATH.


Default

PoolVector2Array( 0, 0, 0, 1, 1, 1, 1, 0 )

Setter

set_polygon(value)

Getter

get_polygon()

Point array that defines the shape that we’ll extrude.


Default

false

Setter

set_smooth_faces(value)

Getter

get_smooth_faces()

Generates smooth normals so smooth shading is applied to our mesh.


Setter

set_spin_degrees(value)

Getter

get_spin_degrees()

Degrees to rotate our extrusion for each slice when mode is MODE_SPIN.


  • int spin_sides

Setter

set_spin_sides(value)

Getter

get_spin_sides()

Number of extrusion when mode is MODE_SPIN.