panda3d.core.RenderModeAttrib

class RenderModeAttrib

Bases: RenderAttrib

Specifies how polygons are to be drawn.

Inheritance diagram

Inheritance diagram of RenderModeAttrib

static make(mode: Mode, thickness: float, perspective: bool, wireframe_color: LColor) → RenderAttrib

Constructs a new RenderModeAttrib object that specifies whether to draw polygons in the normal, filled mode, or wireframe mode, or in some other yet-to-be-defined mode.

The thickness parameter specifies the thickness to be used for wireframe lines, as well as for ordinary linestrip lines; it also specifies the diameter of points. (Thick lines are presently only supported in OpenGL; but thick points are supported on either platform.)

If perspective is true, the point thickness represented is actually a width in 3-d units, and the points should scale according to perspective. When it is false, the point thickness is actually a width in pixels, and points are a uniform screen size regardless of distance from the camera.

In M_filled_wireframe mode, you should also specify the wireframe_color, indicating the flat color to assign to the overlayed wireframe.

Return type

RenderAttrib

static makeDefault() → RenderAttrib

Returns a RenderAttrib that corresponds to whatever the standard default properties for render attributes of this type ought to be.

Return type

RenderAttrib

getMode() → Mode

Returns the render mode.

Return type

Mode

getThickness() → float

Returns the line width or point thickness. This is only relevant when rendering points or lines, such as when the mode is M_wireframe or M_point (or when rendering actual points or lines primitives in M_polygon mode).

getPerspective() → bool

Returns the perspective flag. When this is true, the point thickness represented by getThickness() is actually a width in 3-d units, and the points should scale according to perspective. When it is false, the default, the point thickness is actually a width in pixels, and points are a uniform size regardless of distance from the camera.

getWireframeColor() → LColor

Returns the color that is used in M_filled_wireframe mode to distinguish the wireframe from the rest of the geometry.

Return type

LColor

getGeomRendering(geom_rendering: int) → int

Returns the union of the Geom::GeomRendering bits that will be required once this RenderModeAttrib is applied to a geom which includes the indicated geom_rendering bits.

static getClassSlot() → int
static getClassType() → TypeHandle
Return type

TypeHandle

property mode

Returns the render mode.

Return type

Mode

property thickness

Returns the line width or point thickness. This is only relevant when rendering points or lines, such as when the mode is M_wireframe or M_point (or when rendering actual points or lines primitives in M_polygon mode).

Return type

float

property perspective

Returns the perspective flag. When this is true, the point thickness represented by getThickness() is actually a width in 3-d units, and the points should scale according to perspective. When it is false, the default, the point thickness is actually a width in pixels, and points are a uniform size regardless of distance from the camera.

Return type

bool

property wireframe_color

Returns the color that is used in M_filled_wireframe mode to distinguish the wireframe from the rest of the geometry.

Return type

LColor

property class_slot
Return type

int

enum Mode
enumerator M_unchanged = 0
enumerator M_filled = 1

Normal, filled polygons.

enumerator M_wireframe = 2

Wireframe polygons, possibly with thickness.

enumerator M_point = 3

Points at vertices only, possibly with thickness andor perspective sizing.

enumerator M_filled_flat = 4

Filled polygons, without any particular emphasis on perspective correctness (a particularly useful designation for software rendering sprites).

enumerator M_filled_wireframe = 5

Filled polygons with wireframe rendered in front. The wireframe is given a solid color.