xoreos  0.0.5
Classes | Typedefs | Enumerations | Functions | Variables
Graphics::Aurora Namespace Reference

Classes

class  ABCFont
 An ABC/SBM font, as used by Jade Empire. More...
 
class  Animation
 
class  AnimationChannel
 
class  AnimationThread
 
class  AnimNode
 
class  BorderQuad
 
class  Cube
 A simple, rotating cube. More...
 
class  CubeSide
 A cube side. More...
 
class  Cursor
 A cursor as used in the Aurora engines. More...
 
class  CursorManager
 The global Aurora cursor manager. More...
 
struct  DefaultAnim
 
struct  Face
 
struct  FaceVert
 
class  FadeQuad
 
class  FontHandle
 A handle to a font. More...
 
class  FontManager
 The global Aurora font manager. More...
 
class  FPS
 An autonomous FPS display. More...
 
class  GeometryObject
 
class  GUIQuad
 
class  Highlightable
 
class  HighlightableGUIQuad
 
class  HighlightableText
 
class  KotORDialogFrame
 
struct  ManagedFont
 A managed font, storing how often it's referenced. More...
 
struct  ManagedTexture
 A managed texture, storing how often it's referenced. More...
 
class  Model
 
class  Model_DragonAge
 A 3D model in the Dragon Age MMH+MSH format. More...
 
class  Model_Jade
 A 3D model in the Jade Empire MDL/MDX format. More...
 
class  Model_KotOR
 A 3D model in the NWN binary MDL format. More...
 
class  Model_NWN
 A 3D model in the NWN MDL format. More...
 
class  Model_NWN2
 A 3D model in the NWN2 MDB format. More...
 
class  Model_Sonic
 A 3D model in Nintendo's NSBMD format. More...
 
class  Model_Witcher
 A 3D model in the The Witcher MDB format. More...
 
class  ModelNode
 
class  ModelNode_DragonAge
 
class  ModelNode_Jade
 
class  ModelNode_KotOR
 
class  ModelNode_NWN2
 
class  ModelNode_NWN_ASCII
 
class  ModelNode_NWN_Binary
 
class  ModelNode_Sonic
 
class  ModelNode_Witcher
 
class  NFTRFont
 
class  PLTFile
 
struct  PositionKeyFrame
 
struct  QuaternionKeyFrame
 
class  SubSceneQuad
 
class  Text
 A text object. More...
 
class  Texture
 A texture. More...
 
class  TextureFont
 A texture font, as used by NWN and KotOR/KotOR2. More...
 
class  TextureHandle
 A handle to a texture. More...
 
class  TextureManager
 The global Aurora texture manager. More...
 
class  TTFFont
 
class  Walkmesh
 

Typedefs

typedef Common::PtrMap< Common::UString, ManagedFontFontMap
 
typedef glm::vec3 Vec3
 
typedef std::map< Common::UString, ManagedTexture * > TextureMap
 
typedef Common::PtrMap< Common::UString, class Model, Common::UString::ilessModelCache
 

Enumerations

enum  FontFormat {
  kFontFormatUnknown = 0, kFontFormatTexture, kFontFormatABC, kFontFormatTTF,
  kFontFormatNFTR
}
 The format of a font. More...
 
enum  AnimationChannelName { kAnimationChannelAll = 0, kAnimationChannelHead = 1 }
 
enum  NodeType {
  kNodeTypeNode = 0x00000001, kNodeTypeLight = 0x00000003, kNodeTypeEmitter = 0x00000005, kNodeTypeCamera = 0x00000009,
  kNodeTypeReference = 0x00000011, kNodeTypeTrimesh = 0x00000021, kNodeTypeSkin = 0x00000061, kNodeTypeAABB = 0x00000221,
  kNodeTypeTrigger = 0x00000421, kNodeTypeSectorInfo = 0x00001001, kNodeTypeWalkmesh = 0x00002001, kNodeTypeDanglyNode = 0x00004001,
  kNodeTypeTexturePaint = 0x00008001, kNodeTypeSpeedTree = 0x00010001, kNodeTypeChain = 0x00020001, kNodeTypeCloth = 0x00040001
}
 
enum  NodeControllerType { kNodeControllerTypePosition = 84, kNodeControllerTypeOrientation = 96, kNodeControllerTypeScale = 184 }
 
enum  NodeTrimeshControllerType { kNodeTrimeshControllerTypeSelfIllumColor = 276, kNodeTrimeshControllerTypeAlpha = 292 }
 
enum  ModelType { kModelTypeObject = kRenderableTypeObject, kModelTypeGUIFront = kRenderableTypeGUIFront }
 The display type of a model. More...
 

Functions

static float dotQuaternion (float x1, float y1, float z1, float q1, float x2, float y2, float z2, float q2)
 Return the dot product of two quaternions. More...
 
static void normQuaternion (float xIn, float yIn, float zIn, float qIn, float &xOut, float &yOut, float &zOut, float &qOut)
 Normalize a quaternion. More...
 
static void multiply (const float *v, const glm::mat4 &m, float *rv)
 
static const GFF4Struct * getChild (const GFF4Struct &children, size_t i)
 
static bool isType (const GFF4Struct *strct, uint32 type)
 
static bool isType (const GFF4Struct &strct, uint32 type)
 
static const GFF4Struct * findMeshChunk (const GFF4Struct &mshTop, const Common::UString &name)
 
static bool fuzzyEqual (const float *a, const float *b)
 
bool operator== (const FaceVert &a, const FaceVert &b)
 
std::size_t hash_value (const FaceVert &b)
 
static bool nodeComp (ModelNode *a, ModelNode *b)
 
static uint32 convertToUTF32 (byte c, Common::Encoding encoding)
 

Variables

const Common::UString kEmptyString
 
const char * kSystemFontMono = "_xoreosSystemFontMono"
 Identifier used for the monospaced system font. More...
 
static const Common::UString kNoState
 
static std::list< ModelNode * > kEmptyNodeList
 
static const uint32 kMMHID = MKTAG('M', 'M', 'H', ' ')
 
static const uint32 kMSHID = MKTAG('M', 'E', 'S', 'H')
 
static const uint32 kVersion01 = MKTAG('V', '0', '.', '1')
 
static const uint32 kVersion10 = MKTAG('V', '1', '.', '0')
 
static const uint32 kNODEID = MKTAG('n', 'o', 'd', 'e')
 
static const uint32 kMSHHID = MKTAG('m', 's', 'h', 'h')
 
static const uint32 kCRSTID = MKTAG('c', 'r', 's', 't')
 
static const uint32 kTRSLID = MKTAG('t', 'r', 's', 'l')
 
static const uint32 kROTAID = MKTAG('r', 'o', 't', 'a')
 
static const uint32 kCHNKID = MKTAG('c', 'h', 'n', 'k')
 
static const uint32 kDECLID = MKTAG('d', 'e', 'c', 'l')
 
static const uint32 kGFFID = MKTAG('G', 'F', 'F', ' ')
 
static const uint32 kXMLID = MKTAG('<', '?', 'x', 'm')
 
static const uint32 kMAOID = MKTAG('M', 'A', 'O', ' ')
 
static const uint32 kFLOTID = MKTAG('f', 'l', 'o', 't')
 
static const uint32 kFLT4ID = MKTAG('f', 'l', 't', '4')
 
static const uint32 kTEXID = MKTAG('t', 'e', 'x', ' ')
 
static const DefaultAnim kDefaultAnims []
 
static const char *const kPalettes [PLTFile::kLayerMAX]
 The palette image resource names for all layers. More...
 
static const TXI kEmptyTXI
 
static GLenum kTextureUnit []
 
static const size_t kTextureUnitCount = ARRAYSIZE(kTextureUnit)
 
const float kHAlignLeft = 0.0f
 
const float kHAlignCenter = 0.5f
 
const float kHAlignRight = 1.0f
 
const float kVAlignTop = 1.0f
 
const float kVAlignMiddle = 0.5f
 
const float kVAlignBottom = 0.0f
 

Typedef Documentation

◆ FontMap

Definition at line 49 of file fonthandle.h.

◆ ModelCache

Definition at line 59 of file types.h.

◆ TextureMap

Definition at line 48 of file texturehandle.h.

◆ Vec3

typedef glm::vec3 Graphics::Aurora::Vec3

Definition at line 1352 of file model_nwn.cpp.

Enumeration Type Documentation

◆ AnimationChannelName

Enumerator
kAnimationChannelAll 
kAnimationChannelHead 

Definition at line 58 of file model.h.

◆ FontFormat

The format of a font.

Enumerator
kFontFormatUnknown 

Unknown font format.

kFontFormatTexture 

Textured font, used by NWN and KotOR/KotOR2.

kFontFormatABC 

ABC/SBM font, used by Jade Empire.

kFontFormatTTF 

TTF font, used by NWN2.

kFontFormatNFTR 

NFTR font, used by Sonic.

Definition at line 45 of file fontman.h.

◆ ModelType

The display type of a model.

Enumerator
kModelTypeObject 

A real object in the game world.

kModelTypeGUIFront 

An element of the front GUI.

Definition at line 51 of file types.h.

◆ NodeControllerType

Enumerator
kNodeControllerTypePosition 
kNodeControllerTypeOrientation 
kNodeControllerTypeScale 

Definition at line 79 of file model_witcher.cpp.

◆ NodeTrimeshControllerType

Enumerator
kNodeTrimeshControllerTypeSelfIllumColor 
kNodeTrimeshControllerTypeAlpha 

Definition at line 85 of file model_witcher.cpp.

◆ NodeType

Enumerator
kNodeTypeNode 
kNodeTypeLight 
kNodeTypeEmitter 
kNodeTypeCamera 
kNodeTypeReference 
kNodeTypeTrimesh 
kNodeTypeSkin 
kNodeTypeAABB 
kNodeTypeTrigger 
kNodeTypeSectorInfo 
kNodeTypeWalkmesh 
kNodeTypeDanglyNode 
kNodeTypeTexturePaint 
kNodeTypeSpeedTree 
kNodeTypeChain 
kNodeTypeCloth 

Definition at line 60 of file model_witcher.cpp.

Function Documentation

◆ convertToUTF32()

static uint32 Graphics::Aurora::convertToUTF32 ( byte  c,
Common::Encoding  encoding 
)
static

Definition at line 49 of file texturefont.cpp.

References Common::UString::begin(), Common::UString::empty(), Common::kEncodingASCII, Common::kEncodingInvalid, and Common::readString().

Referenced by Graphics::Aurora::TextureFont::load().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dotQuaternion()

static float Graphics::Aurora::dotQuaternion ( float  x1,
float  y1,
float  z1,
float  q1,
float  x2,
float  y2,
float  z2,
float  q2 
)
static

Return the dot product of two quaternions.

Definition at line 130 of file animation.cpp.

Referenced by Graphics::Aurora::Animation::interpolateOrientation(), and normQuaternion().

Here is the caller graph for this function:

◆ findMeshChunk()

static const GFF4Struct* Graphics::Aurora::findMeshChunk ( const GFF4Struct &  mshTop,
const Common::UString name 
)
static

Definition at line 116 of file model_dragonage.cpp.

References isType(), kCHNKID, Aurora::GFF4FieldNamesEnum::kGFF4MeshChunks, and Aurora::GFF4FieldNamesEnum::kGFF4Name.

Referenced by Graphics::Aurora::ModelNode_DragonAge::readMesh().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fuzzyEqual()

static bool Graphics::Aurora::fuzzyEqual ( const float *  a,
const float *  b 
)
static

Definition at line 697 of file model_nwn.cpp.

Referenced by operator==(), and Graphics::Aurora::ModelNode_NWN_Binary::readMesh().

Here is the caller graph for this function:

◆ getChild()

static const GFF4Struct* Graphics::Aurora::getChild ( const GFF4Struct &  children,
size_t  i 
)
static

◆ hash_value()

std::size_t Graphics::Aurora::hash_value ( const FaceVert b)

◆ isType() [1/2]

static bool Graphics::Aurora::isType ( const GFF4Struct *  strct,
uint32  type 
)
static

◆ isType() [2/2]

static bool Graphics::Aurora::isType ( const GFF4Struct &  strct,
uint32  type 
)
static

Definition at line 112 of file model_dragonage.cpp.

References isType().

Here is the call graph for this function:

◆ multiply()

static void Graphics::Aurora::multiply ( const float *  v,
const glm::mat4 &  m,
float *  rv 
)
static

Definition at line 241 of file animation.cpp.

Referenced by Graphics::Aurora::Animation::updateSkinnedModel().

Here is the caller graph for this function:

◆ nodeComp()

static bool Graphics::Aurora::nodeComp ( ModelNode a,
ModelNode b 
)
static

Definition at line 55 of file modelnode.cpp.

References Graphics::Aurora::ModelNode::isInFrontOf().

Referenced by Graphics::Aurora::ModelNode::orderChildren().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ normQuaternion()

static void Graphics::Aurora::normQuaternion ( float  xIn,
float  yIn,
float  zIn,
float  qIn,
float &  xOut,
float &  yOut,
float &  zOut,
float &  qOut 
)
static

Normalize a quaternion.

Definition at line 137 of file animation.cpp.

References dotQuaternion().

Referenced by Graphics::Aurora::Animation::interpolateOrientation().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator==()

bool Graphics::Aurora::operator== ( const FaceVert a,
const FaceVert b 
)

Definition at line 1360 of file model_nwn.cpp.

References fuzzyEqual(), Graphics::Aurora::FaceVert::n, Graphics::Aurora::FaceVert::p, and Graphics::Aurora::FaceVert::t.

Here is the call graph for this function:

Variable Documentation

◆ kCHNKID

const uint32 Graphics::Aurora::kCHNKID = MKTAG('c', 'h', 'n', 'k')
static

Definition at line 77 of file model_dragonage.cpp.

Referenced by findMeshChunk().

◆ kCRSTID

const uint32 Graphics::Aurora::kCRSTID = MKTAG('c', 'r', 's', 't')
static

◆ kDECLID

const uint32 Graphics::Aurora::kDECLID = MKTAG('d', 'e', 'c', 'l')
static

◆ kDefaultAnims

const DefaultAnim Graphics::Aurora::kDefaultAnims[]
static
Initial value:
= {
{"pausesh" , 5},
{"pausebrd", 5},
{"hturnl" , 5},
{"hturnr" , 5},
{"pause1" , 100},
{"pause2" , 100},
{"chturnl" , 5},
{"chturnr" , 5},
{"cpause1" , 100}
}

Definition at line 506 of file model_nwn.cpp.

Referenced by Graphics::Aurora::Model_NWN::populateDefaultAnimations().

◆ kEmptyNodeList

std::list<ModelNode *> Graphics::Aurora::kEmptyNodeList
static

Definition at line 471 of file model.cpp.

Referenced by Graphics::Aurora::Model::getNodes().

◆ kEmptyString

const Common::UString Graphics::Aurora::kEmptyString

◆ kEmptyTXI

const TXI Graphics::Aurora::kEmptyTXI
static

Definition at line 95 of file texture.cpp.

Referenced by Graphics::Aurora::Texture::getTXI().

◆ kFLOTID

const uint32 Graphics::Aurora::kFLOTID = MKTAG('f', 'l', 'o', 't')
static

◆ kFLT4ID

const uint32 Graphics::Aurora::kFLT4ID = MKTAG('f', 'l', 't', '4')
static

◆ kGFFID

const uint32 Graphics::Aurora::kGFFID = MKTAG('G', 'F', 'F', ' ')
static

Definition at line 80 of file model_dragonage.cpp.

Referenced by Graphics::Aurora::ModelNode_DragonAge::readMAO().

◆ kHAlignCenter

const float Graphics::Aurora::kHAlignCenter = 0.5f

◆ kHAlignLeft

const float Graphics::Aurora::kHAlignLeft = 0.0f

◆ kHAlignRight

const float Graphics::Aurora::kHAlignRight = 1.0f

◆ kMAOID

const uint32 Graphics::Aurora::kMAOID = MKTAG('M', 'A', 'O', ' ')
static

◆ kMMHID

const uint32 Graphics::Aurora::kMMHID = MKTAG('M', 'M', 'H', ' ')
static

◆ kMSHHID

const uint32 Graphics::Aurora::kMSHHID = MKTAG('m', 's', 'h', 'h')
static

◆ kMSHID

const uint32 Graphics::Aurora::kMSHID = MKTAG('M', 'E', 'S', 'H')
static

◆ kNODEID

const uint32 Graphics::Aurora::kNODEID = MKTAG('n', 'o', 'd', 'e')
static

◆ kNoState

const Common::UString Graphics::Aurora::kNoState
static

Definition at line 360 of file model.cpp.

Referenced by Graphics::Aurora::Model::getState().

◆ kPalettes

const char* const Graphics::Aurora::kPalettes[PLTFile::kLayerMAX]
static
Initial value:
= {
"pal_skin01",
"pal_hair01",
"pal_armor01",
"pal_armor02",
"pal_cloth01",
"pal_cloth01",
"pal_leath01",
"pal_leath01",
"pal_tattoo01",
"pal_tattoo01"
}

The palette image resource names for all layers.

Definition at line 166 of file pltfile.cpp.

Referenced by Graphics::Aurora::PLTFile::getColorRows(), and Graphics::Aurora::PLTFile::getLayerPalette().

◆ kROTAID

const uint32 Graphics::Aurora::kROTAID = MKTAG('r', 'o', 't', 'a')
static

◆ kSystemFontMono

const char * Graphics::Aurora::kSystemFontMono = "_xoreosSystemFontMono"

Identifier used for the monospaced system font.

Definition at line 41 of file fontman.cpp.

Referenced by Graphics::Aurora::FontManager::createFont(), Engines::LoadProgress::LoadProgress(), and Engines::Engine::showFPS().

◆ kTEXID

const uint32 Graphics::Aurora::kTEXID = MKTAG('t', 'e', 'x', ' ')
static

◆ kTextureUnit

GLenum Graphics::Aurora::kTextureUnit[]
static

Definition at line 45 of file textureman.cpp.

Referenced by Graphics::Aurora::TextureManager::activeTexture().

◆ kTextureUnitCount

const size_t Graphics::Aurora::kTextureUnitCount = ARRAYSIZE(kTextureUnit)
static

Definition at line 80 of file textureman.cpp.

Referenced by Graphics::Aurora::TextureManager::reset().

◆ kTRSLID

const uint32 Graphics::Aurora::kTRSLID = MKTAG('t', 'r', 's', 'l')
static

◆ kVAlignBottom

const float Graphics::Aurora::kVAlignBottom = 0.0f

◆ kVAlignMiddle

const float Graphics::Aurora::kVAlignMiddle = 0.5f

◆ kVAlignTop

const float Graphics::Aurora::kVAlignTop = 1.0f

◆ kVersion01

const uint32 Graphics::Aurora::kVersion01 = MKTAG('V', '0', '.', '1')
static

◆ kVersion10

const uint32 Graphics::Aurora::kVersion10 = MKTAG('V', '1', '.', '0')
static

◆ kXMLID

const uint32 Graphics::Aurora::kXMLID = MKTAG('<', '?', 'x', 'm')
static

Definition at line 81 of file model_dragonage.cpp.

Referenced by Graphics::Aurora::ModelNode_DragonAge::readMAO().