└>Geo::IGeoSerialisable
└>Geo::IGeoReleasable
Handle to the PackedGeometry.
Name | Description |
---|---|
Create() | Create a new empty IPrecompPackedGeometry. |
GetBoundingBox() | Get the axis aligned bounding box of the radiosity geometry. |
GetId() | Return the unique ID of this geometry. |
GetInputMesh(Geo::s32) | Get the mesh at a given index. |
GetLod(Geo::s32) | Get a given (lodIndex) Lod of this geometry. |
GetMeshProperties(Geo::s32) | Get the mesh properties for a given index. |
GetName() | Get the full name. |
GetNumLods() | Get number of Lods of this geometry. |
GetNumMeshes() | Returns the number of meshes in the output geometry. |
GetNumVerts(Geo::s32) | Returns the number of vertices in the output geometry for the given mesh index. |
GetOutputChartIdsArray(Geo::s32) | Returns a pointer to a per-vertex chart id information for the given mesh id. |
GetOutputUvArray(Geo::s32) | Returns a pointer to the per-vertex uvs for the given mesh index. |
GetOutputUvSize() | Returns the size of the UV texture for which the UV coordinates were calculated. |
GetProjectionCost() | Get the projection cost for the geometry. |
GetProjectionCost(Geo::s32) | Get the projection cost for an individual mesh. |
GetSurfaceArea() | Get the estimated surface area of the radiosity geometry. |
GetTargetUsagePercentage() | Get the percentage of the output UV texture occupied. |
GetUVArea() | Get the estimated UV surface area of the radiosity geometry. |
Load(IGeoInputStream &, Geo::u32) | Load an instance of this class from an IGeoInputStream. |
Release() | Free this object that was created within the Enlighten libraries. |
Save(IGeoStream &, Geo::u32) | Save an instance of this class to an IGeoStream. |
public: IPrecompPackedGeometry * Create()
Create a new empty IPrecompPackedGeometry.
You can load data into an empty class with the IGeoSerialisable interface.
public: Geo::GeoBoundingBox GetBoundingBox() const
Get the axis aligned bounding box of the radiosity geometry.
public: Geo::GeoGuid GetId() const
Return the unique ID of this geometry.
public: const IPrecompInputMesh * GetInputMesh
(
Geo::s32 idx
) const
Get the mesh at a given index.
[in] | idx | The index for the mesh, returned by the AddMesh call in IPrecompInputGeometry. Must be in the range 0 <= idx < GetNumMeshes(). |
A copy of the input mesh (after required internal preprocessing such as autoUVs or face winding changes), or NULL if the index is out of range.
public: const IPrecompPackedGeometry * GetLod
(
Geo::s32 lodIndex
) const
Get a given (lodIndex) Lod of this geometry.
GetLod(0) will return the geometry itself. If lodIndex if greater or equal than value returned by GetNumLods(), then the last (lowest quality) Lod is returned.
public: const PrecompMeshProperties * GetMeshProperties
(
Geo::s32 idx
) const
Get the mesh properties for a given index.
[in] | idx | The index for the mesh, returned by the AddMesh call in IPrecompInputGeometry. Must be in the range 0 <= idx < GetNumMeshes(). |
The mesh properties provided by the user in the input geometry class, or NULL if the index is out of range.
public: const char * GetName() const
Get the full name.
public: Geo::s32 GetNumLods() const
Get number of Lods of this geometry.
public: Geo::s32 GetNumMeshes() const
Returns the number of meshes in the output geometry.
public: Geo::s32 GetNumVerts
(
Geo::s32 idx
) const
Returns the number of vertices in the output geometry for the given mesh index.
This will return -1 if the mesh did not have uvs generated for it. |
public: const Geo::s32 * GetOutputChartIdsArray
(
Geo::s32 id
) const
Returns a pointer to a per-vertex chart id information for the given mesh id.
public: const Geo::GeoPoint2 * GetOutputUvArray
(
Geo::s32 id
) const
Returns a pointer to the per-vertex uvs for the given mesh index.
This will return NULL if the mesh did not have uvs generated for it. |
public: Geo::GeoPair< Geo::s32, Geo::s32 > GetOutputUvSize() const
Returns the size of the UV texture for which the UV coordinates were calculated.
public: float GetProjectionCost() const
Get the projection cost for the geometry.
Lower is better.
This measure is not comparable between meshes. Only compare it with different projections of the same mesh. |
public: float GetProjectionCost
(
Geo::s32 meshIdx
) const
Get the projection cost for an individual mesh.
Lower is better.
This measure is not comparable between meshes. Only compare it with different projections of the same mesh. |
public: float GetSurfaceArea() const
Get the estimated surface area of the radiosity geometry.
public: float GetTargetUsagePercentage() const
Get the percentage of the output UV texture occupied.
public: float GetUVArea() const
Get the estimated UV surface area of the radiosity geometry.
public: bool Load
(
IGeoInputStream & stream,
Geo::u32 section
)
Load an instance of this class from an IGeoInputStream.
The stream must be ready to read from. You can load sections of an object by passing a bitmask representing the desired sections rather than Iff::AllSectionsMask, which will load all sections. It is also safe to call this method on an object multiple times with different section arguments to load multiple parts.
public: void Release()
Free this object that was created within the Enlighten libraries.
Expect this to behave in a similar way to calling 'delete(this)'
public: bool Save
(
IGeoStream & stream,
Geo::u32 section
) const
Save an instance of this class to an IGeoStream.
The stream must be ready to write to. You can save sections of an object by passing a bitmask representing the desired sections rather than Iff::AllSectionsMask, which will save all sections that are available.