This is the documentation for Enlighten.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

class Enlighten::IPrecomputeLoaderGeometry

    └>Geo::IGeoSerialisable
        └>Geo::IGeoReleasable

The Interface to Geometry data.

Contains the geometry precompute data required by Enlighten at runtime.

Typedefs

Name Description
Geo::GeoPair< Geo::s32, Geo::s32 > TextureSize

Texture size of the output uv's.

Functions

Name Description
Create()

Create an empty object.

GetId()

Get geometry id.

GetLodCount()

Get number of lod's.

GetMeshCount()

Get number of meshes.

GetOutputUvSize(Geo::s32)

Returns the size of the UV texture for which the UV coordinates were calculated, for a given lod.

GetSurfaceArea(Geo::s32)

Get the estimated surface area of the geometry, for a given lod.

GetTargetUsagePercentage(Geo::s32)

Get the percentage of the output UV texture occupied, for a given lod.

GetUvs(Geo::s32, Geo::s32)

Get uvs array for the mesh index idx at given lod.

GetVerticesCount(Geo::s32)

Get number of vertices for the mesh index idx.

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.


static IPrecomputeLoaderGeometry* Enlighten::IPrecomputeLoaderGeometry::Create


public: IPrecomputeLoaderGeometry * Create()


Create an empty object.


virtual const Geo::GeoGuid& Enlighten::IPrecomputeLoaderGeometry::GetId


public: const Geo::GeoGuid & GetId() const


Get geometry id.


virtual Geo::s32 Enlighten::IPrecomputeLoaderGeometry::GetLodCount


public: Geo::s32 GetLodCount() const


Get number of lod's.


virtual Geo::s32 Enlighten::IPrecomputeLoaderGeometry::GetMeshCount


public: Geo::s32 GetMeshCount() const


Get number of meshes.


virtual TextureSize Enlighten::IPrecomputeLoaderGeometry::GetOutputUvSize


public: TextureSize GetOutputUvSize
(
    Geo::s32 lod
) const


Returns the size of the UV texture for which the UV coordinates were calculated, for a given lod.


virtual float Enlighten::IPrecomputeLoaderGeometry::GetSurfaceArea


public: float GetSurfaceArea
(
    Geo::s32 lod
) const


Get the estimated surface area of the geometry, for a given lod.


virtual float Enlighten::IPrecomputeLoaderGeometry::GetTargetUsagePercentage


public: float GetTargetUsagePercentage
(
    Geo::s32 lod
) const


Get the percentage of the output UV texture occupied, for a given lod.


virtual const Geo::GeoPoint2* Enlighten::IPrecomputeLoaderGeometry::GetUvs


public: const Geo::GeoPoint2 * GetUvs
(
    Geo::s32 lod,
    Geo::s32 idx
) const


Get uvs array for the mesh index idx at given lod.


virtual Geo::s32 Enlighten::IPrecomputeLoaderGeometry::GetVerticesCount


public: Geo::s32 GetVerticesCount
(
    Geo::s32 idx
) const


Get number of vertices for the mesh index idx.


virtual bool Geo::IGeoSerialisable::Load


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.


virtual void Geo::IGeoReleasable::Release


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)'


virtual bool Geo::IGeoSerialisable::Save


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.

  • No labels