eng_defs.hh File Reference

Definitions, constants, settings. More...

Go to the source code of this file.

Namespaces

namespace  eng
namespace  eng::defs

Defines

#define ENG_DEFS_HH   1

Enumerations

enum  eng::defs::eLightId { eng::defs::eLightId_GLOBAL = GFX::Light::eLightId_0, eng::defs::eLightId_GRAPH = GFX::Light::eLightId_1 }

Variables

const uint eng::defs::AXIS_PITCH = AXIS_X
const uint eng::defs::AXIS_YAW = AXIS_Y
const uint eng::defs::AXIS_ROLL = AXIS_Z
const uint eng::defs::VIX_NONE = gfx::defs::MAX_VERTEXS
const uint eng::defs::NIX_NONE = gfx::defs::MAX_POLYGONS
const uint eng::defs::MAX_VERTEXS = gfx::defs::MAX_VERTEXS
const uint eng::defs::MAX_POLYGONS = gfx::defs::MAX_POLYGONS
const uint eng::defs::MAX_NORMALS = MAX_POLYGONS
const uint eng::defs::MAX_POLYGON_VERTEXS = 4
 triangles suggested, quads and greater may be non-planar
const uint eng::defs::MAX_POLYGON_VERTEXS_BITS = 3
 (4=100b) amount of bits in MAX_POLYGON_VERTEXS
const uint eng::defs::MAX_POLYGONS_ON_VERTEX = 10
 maximum polygons that can share a vertex (should be minimal)
const long eng::defs::MAX_OBJECTS = 500*1000
 max LOD normal produces a few million Objects
const long eng::defs::MAX_NODES_TOTAL = 50*1000*1000
const long eng::defs::MAX_NODES_PER_OBJECT = 5*1000
const fp eng::defs::MAX_OBJECT_RADIUS = WORLD(50*MEGABYTE)
const fp eng::defs::MIN_OBJECT_RADIUS = 0
 0 for abstract objects without geometry
const fp eng::defs::MAX_OBJECT_DISTANCE = 2000000000.0
 to catch garbage values
const uint eng::defs::DEFAULT_BSP_RECURSION_LIMIT = 64
 overriden by world.conf
const uint eng::defs::DEFAULT_BSP_NODE_LIMIT = 10*1000
 overriden by world.conf
const uint eng::defs::DEFAULT_AVG_OBJECTS_PER_BSP = 10*1000
 average amount of Objects in a BSP
const fp eng::defs::BOX_WIDTH_TO_RADIUS_SCALE = 1.732050808
 sqrt(3.0) = 1.73
const uint eng::defs::LOCUS_DESTROY_ZOMBIES_LIMIT = 20
 per idle event, deleting Quadrants/BSP/Objects is almost as slow as constructing them


Detailed Description

Definitions, constants, settings.

Id

LastChangedDate
Author:
Jim E. Brooks http://www.palomino3d.org
This header file should only contain self-contained constants (no dependencies). C++ const is preferred to use type-checking but some must be defined as some source files test them using if.

NOTE: Be sure to WRITE A PERIOD IN FLOAT CONSTANTS defined by define or integer instructions could be compiled (with loss of accuracy).

NOTE: Don't overflow 32-bits (esp. in BSP constants).

The kinds of Polygons is limited to triangles and quads. Limiting to only triangles would be ideal (guarantees planar polygons), but modeling some Objects in terms of quads is convenient.


Define Documentation

#define ENG_DEFS_HH   1

Palomino 3D Engine documents generated by doxygen 1.5.3 on Fri Nov 23 11:26:14 2007