![]()
Basetypes
![]()
geDriver_System, geMesh, geMesh_Def,
geBoolean, GE_FALSE, GE_TRUE, geFloat, NULL, int32, int16, int8, uint32, uint16, uint8
GE_ABS(x), GE_CLAMP(x,lo,hi), GE_CLAMP8(x), GE_CLAMP16(x), GE_BOOLSAME(x,y), GE_EPSILON, GE_FLOATS_EQUAL(x,y), GE_FLOAT_ISZERO(x), GE_PI, GE_RGBA, GE_Rect, geRect, geFloatRect, GE_LVertex, GE_TLVertex
Links to Types in Other Files:
Actor Types: geActor, geActor_Def, geActor_BlendingType
Bitmap Types: geBitmap, geBitmap_Palette, geBitmap_Info, geBitmap_StreamingStatus
BitmapList Types: BitmapList
Body Types: geBody
geVec3dIndexed: geVec3d
BitmapListIndexed: BitmapList
DirTreeIndexed: DirTree, DirTree_Finder
geActorIndexed: geActor, geActor_Def, geActor_BlendingType
geBodyIndexed: geBody
geBodyInstIndexed: geBodyInst, geBodyInst_Index, geBodyInst_FaceType, geBodyInst_SkinVertex, geBodyInst_Geometry
geBoxIndexed: geBox
geBSPIndexed: GBSP_Chunk, GBSP_ChunkData, GBSP_Header, GFX_SkyData, GFX_Plane, GFX_Node, GFX_BNode, GFX_AreaPortal, GFX_Area, GFX_Leaf, GFX_Cluster, GFX_LeafSide, GFX_Face, GFX_Model, GFX_Texture, GFX_TexInfo, GFX_Portal, GBSP_BSPData
geCameraIndexed: geCamera
geDriverIndexed: geEngine_FrameState, Sys_String, Sys_FontInfo, Sys_CPUInfo, geDriver_Mode, geDriver, Sys_DriverInfo, Sys_DebugInfo, geEngine_WorldList, geEngine
SystemIndexed: geEngine_FrameState, Sys_String, Sys_FontInfo, Sys_CPUInfo, geDriver_Mode, geDriver, Sys_DriverInfo, Sys_DebugInfo, geEngine_WorldList, geEngine
geErrorLogIndexed: geErrorLog_ErrorIDEnumType, geErrorLog_ErrorClassType
geExtBoxIndexed: geExtBox
geFogIndexed: SET_ATTR_CB, geFog
geFontIndexed: geFont
geMotionIndexed: geMotion
gePathIndexed: gePath_Interpolator
gePhysicsJointIndexed: gePhysicsJoint_Kind, gePhysicsJoint
gePhysicsObjectIndexed: gePhysicsObject
gePhysicsSystemIndexed: gePhysicsSystem
gePixelFormatIndexed: gePixelFormat_Composer, gePixelFormat_Decomoser, gePixelFormat_ColorGetter, gePixelFormat_ColorPutter, gePixelFormat_PixelGetter, gePixelFormat_PixelPutter, gePixelFormat_Operations, gePixelFormat
gePolyIndexed: gePoly, User_Info, gePose_BlendingType, gePose
gePuppetIndexed: gePuppet
geQKFrameIndexed: geQKFrame_InterpolationType
geQuaternionIndexed: geQuaternion
geRamIndexed: geRam_CriticalCallbackFunction
geStrBlockIndexed: geStrBlock
geTKArrayIndexed: geTKArray_TimeType, geTKArray
geVFileIndexed: geVFile, geVFile_Attributes, geVFile_Finder, geVFile_Hints, geVFile_MemoryContext, geVFile_Properties, geVFile_Time, geVFile_TypeIdentifier
geVKFrameIndexed: geVKFrame_InterpolationType
geWBitmapIndexed: geWBitmap
geWBitmapIndexed: geWBitmap_Pool
geWorldIndexed: geWorld, geWorld_Model, geWorld_Leaf, geWorld_FogData, geWorld_BSP, geWorld_SkyBox, geWorld_SkyBoxTData, geWorld_Actor, geWorld_EntClassSet, geWorld_DebugInfo, GE_Collision, GE_Contents
geXFArrayIndexed: geXFArray
geXForm3dIndexed: geXForm3d
LightIndexed: Light_DLight
LightIndexed: Light_LightInfo
Matrix33Indexed: Matrix33
MemPoolIndexed: MemPool
NetPlayIndexed: SP_DESC
NetPlayIndexed: SESSION_DESC
SurfaceIndexed: Surf_SurfInfo, Surf_TextVert, Surf_LVertex, Surf_TLVertex
VFile_SystemIndexed: geVFile_SystemAPIs, geVFile_FinderCreateFN, geVFile_FinderGetNextFileFN, geVFile_FinderGetPropertiesFN, geVFile_FinderDestroyFN, geVFile_OpenNewSystemFN, geVFile_UpdateContextFN, geVFile_OpenFN, geVFile_DeleteFileFN, geVFile_RenameFileFN, geVFile_FileExistsFN, geVFile_DisperseFN, geVFile_CloseFN, geVFile_GetSFN, geVFile_ReadFN, geVFile_WriteFN, geVFile_SeekFN, geVFile_EOFFN, geVFile_TellFN, geVFile_GetPropertiesFN, geVFile_SizeFN, geVFile_SetSizeFN, geVFile_SetAttributesFN, geVFile_SetTimeFN, geVFile_SetHintsFN
geBitmapIndexed: geBitmap
CSNetworkIndexed: geCSNetMgr, geCSNetMgr_NetID, geCSNetMgr_NetMsgType, geCSNetMgr_NetClient, geCSNetMgr_NetSession
geEntityIndexed: geEntity_ClassType, geEntity_Field, geEntity_Class, geEntity_Epair, geEntity, geEntity_EntitySet
DCommonIndexed: U8, U16, U32, C8, S8, S16, S32, geRDriver_THandle, geRDriver_PixelFormat, geRDriver_THandleInfo, DRV_Debug, DRV_CacheInfo, DRV_Window, DRV_RGB, DRV_Palette, DRV_Bitmap, DRV_LInfo, DRV_TexInfo, DRV_TLVertex, DRV_DriverHook, GInfo, DRV_EngineSettings, BEGIN_MESHES, BEGIN_MODELS, BEGIN_SCENE, BEGIN_WORLD, CREATE_TEXTURE, DESTROY_TEXTURE, DRAW_DECAL, DRV_Driver, DRV_RENDER_MODE, DRV_ENUM_PFORMAT, DRV_ENUM_MODES_CB, DRV_ENUM_DRV_CB, DRV_ENUM_PFORMAT_CB, DRV_Hook, DRV_INIT, DRV_RESET, DRV_SET_ACTIVE, DRV_SET_FOG_ENABLE, DRV_SHUTDOWN, DRV_UPDATE_WINDOW, END_MESHES, END_MODELS, END_SCENE, END_WORLD, GET_ALPHA, GET_GAMMA, GET_PALETTE, LOCK_THANDLE, RENDER_G_POLY, RENDER_MT_POLY, RENDER_W_POLY, SCREEN_SHOT, SET_ALPHA, SET_GAMMA, SETUP_LIGHTMAP_CB, SET_PALETTE, THANDLE_GET_INFO, UNLOCK_THANDLE, DRV_ENUM_DRIVER, DRV_ENUM_MODES
![]()
Types:
typedef struct geDriver_System geDriver_System;
NOTE: The contents of this structure have been intentionally left out of the interface, by the designers of this module. Think of this as a handle only.
typedef struct geMesh_Def geMesh_Def;
NOTE: The contents of this structure have been intentionally left out of the interface, by the designers of this module. Think of this as a handle only.
NOTE: The contents of this structure have been intentionally left out of the interface, by the designers of this module. Think of this as a handle only.
geFloat
#ifndef NULL
#define
NULL ((void *)0)
#endif
typedef unsigned short uint16;
#define GENESISAPI _declspec(dllexport) [or] _declspec(dllimport) [or] <nothing>
Note: If a function does not have this in its declaration, then it will not be available in precompiled libarary files.
typedef struct {
float r, g, b, a; //note: in Genesis3D v1.6 this is of type geFloat
} GE_RGBA;
typedef struct {
int32 Left;
int32 Right;
int32 Top;
int32 Bottom;
} GE_Rect;
geRect
typedef GE_Rect geRect;
typedef struct {
geFloat MinX,MaxX;
geFloat MinY,MaxY;
} geFloatRect;
typedef struct {
float X, Y, Z; // 3d vertex //note: for Genesis3D v1.6 this is of type geFloat
float u, v; // Uv's //note: for Genesis3D v1.6 this is of type geFloat
float r, g, b, a; // color //note: for Genesis3D v1.6 this is of type geFloat
} GE_LVertex;
This structure stores a Lit Vertex.
Return to Contents
typedef struct {
float x, y, z; // screen points //note: for Genesis3D v1.6 this is of type geFloat
float u, v; // Uv's //note: for Genesis3D v1.6 this is of type geFloat
float r, g, b, a; // color //note: for Genesis3D v1.6 this is of type geFloat
} GE_TLVertex;
This structure stores a Transformed Lit Vertex.
Questions:
What is meant by Transformed? This seems to be the same as GE_LVertex except the x,y,z here are labeled screen points. What are screen point? Is this in screen coordinate space?
typedef struct {
geFloat r, g, b;
} geColor;
typedef struct {
geFloat u, v;
} geUV;
typedef struct {
geFloat X;
geFloat Y;
} geCoordinate;
![]()
Macros:
Computes the absolute value of x.
If x is less than lo, lo is returned, otherwise if x is greater than hi, hi is returned, otherwise x is returned. In other words x is "clamped" between hi and lo.
This is an 8-bit unsigned (0-255) clamp. See GE_CLAMP above for more information.
This is a 16-bit unsigned (0-65536) clamp. See GE_CLAMP above for more information
This returns True if x and y are both true or both false, otherwise it returns False.
#define GE_EPSILON
((geFloat)0.000797f)
If two floating point values differ by this constant or less then they are considered equivalent per the definition of GE_FLOATS_EQUAL shown below. Thanks to Raul Beltran for clarifying and confirming my suspicions about this. I'm still uncertain what the derivation of the specific value is.
#define GE_FLOATS_EQUAL(x,y) ( GE_ABS((x) -
(y)) < GE_EPSILON )
This appears to define 2 floats (x,y) equal if they only differ by EPSILON as defined above.
#define GE_FLOAT_ISZERO(x)
GE_FLOATS_EQUAL(x,0.0f)
This defines a float as being "equal" to zero if it only differs from zero by EPSILON as define above.
#define GE_PI
((geFloat)3.14159265358979323846f)
A value to use for pi.
Model flags (geWorld_ModelSetFlags)
#define GE_MODEL_RENDER_NORMAL (1<<0) // Render in normal views
#define GE_MODEL_RENDER_MIRRORS (1<<1) // Render in mirror views
#define GE_MODEL_RENDER_ALWAYS (1<<2) // Render always, skipping all visibility tests
#define GE_MODEL_COLLIDE (1<<3) // Collide when calling geWorld_Collision