panda3d.egg

EggAnimData

A base class for EggSAnimData and EggXfmAnimData, which contain rows and columns of numbers.

EggAnimPreload

This corresponds to an <AnimPreload> entry.

EggAttributes

The set of attributes that may be applied to vertices as well as polygons, such as surface normal and color.

EggBin

A type of group node that holds related subnodes.

EggBinMaker

This is a handy class for collecting related nodes together.

EggComment

A comment that appears in an egg file within a <Comment> entry.

EggCompositePrimitive

The base class for primitives such as triangle strips and triangle fans, which include several component triangles, each of which might have its own color and/or normal.

EggCoordinateSystem

The <CoordinateSystem> entry at the top of an egg file.

EggCurve

A parametric curve of some kind.

EggData

This is the primary interface into all the egg data, and the root of the egg file structure.

EggExternalReference

Defines a reference to another egg file which should be inserted at this point.

EggFilenameNode

This is an egg node that contains a filename.

EggGroup

The main glue of the egg hierarchy, this corresponds to the <Group>, <Instance>, and <Joint> type nodes.

EggGroupNode

A base class for nodes in the hierarchy that are not leaf nodes.

EggGroupUniquifier

This is a specialization of EggNameUniquifier to generate unique names for EggGroup nodes.

EggLine

A line segment, or a series of connected line segments, defined by a <Line> entry.

EggMaterial

EggMaterialCollection

This is a collection of materials by MRef name.

EggNameUniquifier

This is a handy class for guaranteeing unique node names in an egg hierarchy.

EggNamedObject

This is a fairly low-level base class–any egg object that has a name.

EggNode

A base class for things that may be directly added into the egg hierarchy.

EggNurbsCurve

A parametric NURBS curve.

EggNurbsSurface

A parametric NURBS surface.

EggObject

The highest-level base class in the egg directory.

EggPatch

A single “patch”, a special primitive to be rendered only with a tessellation shader.

EggPoint

A single point, or a collection of points as defined by a single <PointLight> entry.

EggPolygon

A single polygon.

EggPolysetMaker

A specialization on EggBinMaker for making polysets that share the same basic rendering characteristic.

EggPoolUniquifier

This is a specialization of EggNameUniquifier to generate unique names for textures, materials, and vertex pools prior to writing out an egg file.

EggPrimitive

A base class for any of a number of kinds of geometry primitives: polygons, point lights, nurbs patches, parametrics curves, etc.

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.

EggSAnimData

Corresponding to an <S$Anim> entry, this stores a single column of numbers, for instance for a morph target, or as one column in an EggXfmSAnim.

EggSurface

A parametric surface of some kind.

EggSwitchCondition

This corresponds to a <SwitchCondition> entry within a group.

EggSwitchConditionDistance

A SwitchCondition that switches the levels-of-detail based on distance from the camera’s eyepoint.

EggTable

This corresponds to a <Table> or a <Bundle> entry.

EggTexture

Defines a texture map that may be applied to geometry.

EggTextureCollection

This is a collection of textures by TRef name.

EggTransform

This represents the <Transform> entry of a group or texture node: a list of component transform operations, applied in order, that describe a net transform matrix.

EggTriangleFan

A connected fan of triangles.

EggTriangleStrip

A connected strip of triangles.

EggUserData

This is a base class for a user-defined data type to extend egg structures in processing code.

EggVertex

Any one-, two-, three-, or four-component vertex, possibly with attributes such as a normal.

EggVertexAux

The set of named auxiliary data that may or may not be assigned to a vertex.

EggVertexPool

A collection of vertices.

EggVertexUV

The set of UV’s that may or may not be assigned to a vertex.

EggXfmAnimData

Corresponding to an <Xfm$Anim> entry, this stores a two-dimensional table with up to nine columns, one for each component of a transformation.

EggXfmSAnim

This corresponds to an <Xfm$Anim_S$> entry, which is a collection of up to nine <S$Anim> entries that specify the nine components of a transformation.

Global Functions

PointerTo<PandaNode> load_egg_data(EggData *data, CoordinateSystem cs = ::CS_default)
PointerTo<PandaNode> load_egg_file(Filename const &filename, CoordinateSystem cs = ::CS_default, BamCacheRecord *record = nullptr)
bool save_egg_data(EggData *data, PandaNode *node)
bool save_egg_file(Filename const &filename, PandaNode *node, CoordinateSystem cs = ::CS_default)