# EggRenderMode¶

from panda3d.egg import EggRenderMode

class EggRenderMode

This class stores miscellaneous rendering properties that is associated with geometry, and which may be set on the geometry primitive level, on the group above it, or indirectly via a texture. It’s intended to be a base class for egg objects that can have these properties set.

This class cannot inherit from EggObject, because it causes problems at the EggPolygon level with multiple appearances of the EggObject base class. And making EggObject a virtual base class is just no fun.

Inheritance diagram

enum AlphaMode

Specifies implementation of transparency.

enumerator AM_unspecified = 0
enumerator AM_off = 1

No transparency.

enumerator AM_on = 2

Use whatever the default model is.

enumerator AM_blend = 3

Normal alpha blending, e.g. TransparencyAttrib::M_alpha.

enumerator AM_blend_no_occlude = 4

Alpha blending w/o depth write.

enumerator AM_ms = 5

TransparencyAttrib::M_multisample

enumerator AM_ms_mask = 6

enumerator AM_binary = 7

TransparencyAttrib::M_binary

enumerator AM_dual = 8

TransparencyAttrib::M_dual

enumerator AM_premultiplied = 9

TransparencyAttrib::M_premultiplied_alpha

enum DepthTestMode
enumerator DTM_unspecified = 0
enumerator DTM_off = 1
enumerator DTM_on = 2
enum DepthWriteMode
enumerator DWM_unspecified = 0
enumerator DWM_off = 1
enumerator DWM_on = 2
enum VisibilityMode
enumerator VM_unspecified = 0
enumerator VM_hidden = 1
enumerator VM_normal = 2
__eq__(other: EggRenderMode)bool

Comparison operators are handy.

__init__()
__init__(copy: EggRenderMode)
__lt__(other: EggRenderMode)bool
__ne__(other: EggRenderMode)bool
assign(copy: EggRenderMode)EggRenderMode
clearBin()None

Removes the bin name that was set for this particular object. See setBin().

clearDepthOffset()None

Removes the depth-offset flag from this particular object. See setDepthOffset().

clearDrawOrder()None

Removes the draw-order flag from this particular object. See setDrawOrder().

getAlphaMode() → AlphaMode

Returns the alpha mode that was set, or AM_unspecified if nothing was set. See setAlphaMode().

getBin()str

Returns the bin name that has been set for this particular object, if any. See setBin().

static getClassType()panda3d.core.TypeHandle
getDepthOffset()int

Returns the “depth-offset” flag as set for this particular object. See setDepthOffset().

getDepthTestMode() → DepthTestMode

Returns the depth_test mode that was set, or DTM_unspecified if nothing was set. See setDepthTestMode().

getDepthWriteMode() → DepthWriteMode

Returns the depth_write mode that was set, or DWM_unspecified if nothing was set. See setDepthWriteMode().

getDrawOrder()int

Returns the “draw-order” flag as set for this particular object. See setDrawOrder().

getVisibilityMode() → VisibilityMode

Returns the visibility mode that was set, or VM_unspecified if nothing was set. See setVisibilityMode().

hasBin()bool

Returns true if a bin name has been set for this particular object. See setBin().

hasDepthOffset()bool

Returns true if the depth-offset flag has been set for this particular object. See setDepthOffset().

hasDrawOrder()bool

Returns true if the draw-order flag has been set for this particular object. See setDrawOrder().

setAlphaMode(mode: AlphaMode)None

Specifies precisely how the transparency for this geometry should be achieved, or if it should be used. The default, AM_unspecified, is to use transparency if the geometry has a color whose alpha value is non-1, or if it has a four-channel texture applied; otherwise, AM_on forces transparency on, and AM_off forces it off. The other flavors of transparency are specific ways to turn on transparency, which may or may not be supported by a particular rendering backend.

setBin(bin: str)None

Sets the “bin” string for this particular object. This names a particular bin in which the object should be rendered. The exact meaning of a bin is implementation defined, but generally a GeomBin matching each bin name must also be specifically added to the rendering engine (e.g. the CullTraverser) in use for this to work. See also setDrawOrder().

setDepthOffset(bias: int)None

Sets the “depth-offset” flag associated with this object. This adds or subtracts an offset bias into the depth buffer. See also DepthOffsetAttrib and panda3d.core.NodePath.setDepthOffset().

setDepthTestMode(mode: DepthTestMode)None

Specifies whether this geometry should be tested against the depth buffer when it is drawn (assuming the rendering backend provides a depth buffer). Note that this is different, and independent from, the depth_write mode.

setDepthWriteMode(mode: DepthWriteMode)None

Specifies whether writes should be made to the depth buffer (assuming the rendering backend provides a depth buffer) when rendering this geometry.

setDrawOrder(order: int)None

Sets the “draw-order” flag associated with this object. This specifies a particular order in which objects of this type should be drawn, within the specified bin. If a bin is not explicitly specified, “fixed” is used. See also setBin().

setVisibilityMode(mode: VisibilityMode)None

Specifies whether this geometry is to be considered normally visible, or hidden. If it is hidden, it is either not loaded into the scene graph at all, or loaded as a “stashed” node, according to the setting of egg- suppress-hidden.

static stringAlphaMode(string: str) → AlphaMode

Returns the EggRenderModeAlphaMode value associated with the given string representation, or AM_unspecified if the string does not match any known EggRenderModeAlphaMode value.

static stringDepthTestMode(string: str) → DepthTestMode

Returns the EggRenderModeDepthTestMode value associated with the given string representation, or DTM_unspecified if the string does not match any known EggRenderModeDepthTestMode value.

static stringDepthWriteMode(string: str) → DepthWriteMode

Returns the EggRenderModeDepthWriteMode value associated with the given string representation, or DWM_unspecified if the string does not match any known EggRenderModeDepthWriteMode value.

static stringVisibilityMode(string: str) → VisibilityMode

Returns the HiddenMode value associated with the given string representation, or VM_unspecified if the string does not match any known HiddenMode value.

write(out: panda3d.core.ostream, indent_level: int)None

Writes the attributes to the indicated output stream in Egg format.