📄 typedef.h
字号:
float* pyfList;
DWORD dwYFNumX;
DWORD dwYFNumZ;
float width;
float height;
DWORD dwFacesNumX;
DWORD dwFacesNumZ;
DWORD dwTriNumPerObj;
DWORD dwVerticesNumPerObj;
WORD* pwTileTable;
DWORD dwFacesNumPerTileAxis;
DWORD dwTileNumPerObjAxis;
DWORD dwTileNumX;
DWORD dwTileNumZ;
float fTileSize;
};
struct HFIELD_OBJECT_DESC
{
DWORD dwPosX;
DWORD dwPosZ;
DWORD dwObjPosX;
DWORD dwObjPosZ;
// IMAGE_DESC* pTexImage;
// LIGHT_TEXTURE LightTexture;
};
struct SYSTEM_STATUS
{
DWORD dwAvaliableTexMem;
DWORD dwTotalTexMem;
char szDeviceType[MAX_NAME_LEN];
};
struct TILE_ENTRY_DESC
{
// 4啊瘤 版快俊 措茄 牢郸胶府胶飘狼 浚飘府.
WORD wTilePosEntry;
WORD wTilePosNum;
};
struct INDEX_ENTRY_DESC
{
DWORD dwStartIndex;
DWORD dwTriNum;
};
struct ALPHAMAP_DESC
{
char* pAlphaMapBits;
void* pVoidExt;
WORD wWidthHeight;
BYTE bReserved0;
BYTE bReserved1;
};
struct TILE_BUFFER_DESC
{
private:
WORD wTileIndexIntegrated;
BYTE bReserved1;
BYTE bReserved2;
public:
INDEX_ENTRY_DESC indexEntryDesc[4];
// 捞 辆幅狼 鸥老叼胶农赋磐俊 加茄 牢郸胶甸狼 笼钦.
DWORD dwTilePosNumPri;
DWORD dwTilePosNumExt;
ALPHAMAP_DESC alphaMapDesc;
INDEX_POS* pTilePosPri;
TILE_ENTRY_DESC tileEntryDescPri[4];
INDEX_POS* pTilePosExt;
TILE_ENTRY_DESC tileEntryDescExt[4];
WORD GetIntegratedTileIndex() {return wTileIndexIntegrated;}
WORD GetTileIndex() {return wTileIndexIntegrated & 0x3fff;}
DWORD GetTileDir() {return (wTileIndexIntegrated & 0xc000)>>14;}
void SetTileIndex(WORD wTileIndex)
{
wTileIndexIntegrated = wTileIndex;
}
WORD IsEqual(WORD wTileIndex)
{
return (wTileIndex & 0x3fff) - (wTileIndexIntegrated & 0x3fff);
}
};
enum DISPLAY_TYPE
{
WINDOW_WITH_BLT = 0x00000000,
FULLSCREEN_WITH_BLT = 0x00000001,
FULLSCREEN_WITH_FLIP = 0x10000001
};
#define FLIP_MASK 0x10000000
#define FULLSCREEN_MASK 0x00000001
struct DISPLAY_INFO
{
DISPLAY_TYPE dispType;
DWORD dwWidth;
DWORD dwHeight;
DWORD dwRefreshRate;
DWORD dwBPS;
};
struct TILE_TABLE_DESC
{
float fTop;
float fLeft;
float fBottom;
float fRight;
DWORD dwTileNumWidth;
DWORD dwTileNumHeight;
DWORD dwBytesOfTile;
float fTileWidth;
float fTileHeight;
};
interface I4DyuchiGXExecutive;
typedef void* GXOBJECT_HANDLE;
typedef void* GXMAP_HANDLE;
typedef void* GXLIGHT_HANDLE;
typedef void* GXMAP_OBJECT_HANDLE;
typedef void* GXTRIGGER_HANDLE;
typedef void* GXDECAL_HANDLE;
typedef void* GXSOUND_HANDLE;
typedef DWORD (__stdcall *GXSchedulePROC)(I4DyuchiGXExecutive* pExecutive,GXOBJECT_HANDLE gxh,DWORD msg,int arg1,int arg2,void* pData);
typedef DWORD (__stdcall *GXLightSchedulePROC)(I4DyuchiGXExecutive* pExecutive,GXLIGHT_HANDLE gxh,DWORD msg,int arg1,int arg2,void* pData);
typedef DWORD (__stdcall *GXMapObjectSchedulePROC)(I4DyuchiGXExecutive* pExecutive,GXMAP_OBJECT_HANDLE gxh,DWORD msg,int arg1,int arg2,void* pData);
typedef DWORD (__stdcall *GXMapSchedulePROC)(DWORD msg,int frame_ince,int arg2,void* pData);
typedef DWORD (__stdcall *GXDecalSchedulePROC)(I4DyuchiGXExecutive* pExecutive,GXDECAL_HANDLE gxh,DWORD msg,int arg1,int arg2,void* pData);
enum ERROR_TYPE
{
ERROR_TYPE_ENGINE_CODE = 0,
ERROR_TYPE_PARAMETER_INVALID = 1,
ERROR_TYPE_DEVICE_NOT_SUPPROT = 2,
ERROR_TYPE_D3D_ERROR = 3,
ERROR_TYPE_RESOURCE_LEAK = 4,
ERROR_TYPE_FILE_NOT_FOUND = 5
};
typedef DWORD (__stdcall *ErrorHandleProc)(ERROR_TYPE type,DWORD dwErrorPriority,void* pCodeAddress,char* szStr);
#include "GXSCHEDULE_PROC_MSG.h"
interface I4DyuchiAudio;
typedef DWORD (*GXSoundPROC)(I4DyuchiAudio* pAudio,GXSOUND_HANDLE gxh,DWORD msg,int arg1,int arg2,void* pData);
// 咯扁辑何磐 眠啊. 2002/01/25
struct MAABB // AABB 官款爹 冠胶.
{
VECTOR3 Max;
VECTOR3 Min;
};
// 面倒贸府侩 官款爹 杭俘.
enum BOUNDING_VOLUME_TYPE
{
BOUNDING_VOLUME_TYPE_NONE,
// BOUNDING_VOLUME_TYPE_PARTICLE,
BOUNDING_VOLUME_TYPE_SPHERE,
BOUNDING_VOLUME_TYPE_AAELLIPSOID,
BOUNDING_VOLUME_TYPE_AAELLIPSOID2
};
// 2002/05/25 眠啊.
// BOUNDING_VOLUE俊辑 静老 面倒 措惑 敲发.
enum COLLISION_TARGET_FLAG
{
COLLISION_TARGET_FLAG_TEST_NONE = 0x00000000,
COLLISION_TARGET_FLAG_TEST_STATIC_OBJECT = 0x00000001,
COLLISION_TARGET_FLAG_TEST_DYNAMIC_OBJECT = 0x00000002,
COLLISION_TARGET_FLAG_TEST_HEIGHT_FIELD = 0x00000004,
COLLISION_TARGET_FLAG_TEST_EVENT_TRIGGER = 0x00000008
};
// I3DModel俊辑 啊瘤霸 等促.
// 酒流 窍唱狼 MODEL 颇老俊 窍唱究狼 面倒 弊缝阑 爱绰促...
struct BOUNDING_VOLUME
{
DWORD dwType; // 官款爹 杭俘狼 鸥涝BOUNDING_VOLUME_TYPE.
VECTOR3 vPivot; // 肺拿 乔嚎. v3Axis+vPivot捞 拱眉狼 岿靛谅钎捞促.
float fRadius; // 官款爹 胶乔绢.
float fHeight;
DWORD dwCollisionTargetFlag; // COLLISION_TARGET_FLAG鸥涝狼 敲发.
};
#define fFloatMin 1.0f
// 2002/05/23
// 面倒贸府 沥焊甫 劳胶钮萍宏甫 烹秦 exe肺 逞败临锭 荤侩且 备炼眉. 林肺 努钒阑 焊绊, 面倒贸府 力措肺 登搁 绝绢龙 仇.
struct DBG_COLLISION_INFO
{
// DWORD dwCollisionCandidateTri;
DWORD dwTickFindOctree;
// DWORD dwTickFindBSPTree;
// DWORD dwTickTestOneTri;
DWORD dwTickTotalTestCollision;
DWORD dwMeetingDynamicObjectCount;
};
enum BUILD_TREE_FLAG
{
// BUILD_TREE_FLAG_BUILD_OCTREE = 0x00000001,
BUILD_TREE_FLAG_BUILD_STATIC_OBJECT = 0x00000002
};
struct HFPOINT
{
DWORD dwPosX;
DWORD dwPosZ;
};
struct EVENT_TRIGGER_DESC
{
VECTOR3 v3Pos;
VECTOR3 v3Scale;
VECTOR3 v3Rot;
DWORD dwColor;
};
struct GXLIGHT_PROPERTY
{
LIGHT_DESC lightDesc;
DWORD dwID;
BOOL bLightSwitch;
BOOL bShadowSwitch;
BOOL bEnableDynamicLight;
};
struct GXOBJECT_PROPERTY
{
VECTOR3 v3Pos;
VECTOR3 v3Axis;
float fRad;
DWORD dwID;
BOOL bApplyHField;
BOOL bAsEffect;
};
struct GXTRIGGER_PROPERTY
{
EVENT_TRIGGER_DESC evDesc;
DWORD dwID;
};
#define PID_MOD_FILENAME "*MOD_FILE_NAME"
#define PID_MOTION_NUM "*MOTION_NUM"
#define PID_MATERIAL_NUM "*MATERIAL_NUM"
#define PID_STATIC_MODEL "STATIC_MODEL"
#define PID_HEIGHT_FIELD "HEIGHT_FIELD"
#define PID_GX_MAP "GX_MAP"
#define PID_GX_OBJECT "GX_OBJECT"
#define PID_GX_LIGHT "GX_LIGHT"
#define PID_GX_TRIGGER "GX_TRIGGER"
#define PID_GX_METADATA "GX_METADATA"
#define PID_MAX_HEIGHT "MAX_HEIGHT"
#define PID_MIN_HEIGHT "MIN_HEIGHT"
#define PID_BOUNDINGBOX_MAX "BOX_MAX"
#define PID_BOUNDINGBOX_MIN "BOX_MIN"
typedef DWORD (__stdcall *LOAD_CALLBACK_FUNC)(DWORD dwCurCount,DWORD dwTotalCount,void* pArg);
typedef DWORD (__stdcall *GX_FUNC)();
typedef float (__stdcall *SHADE_FUNC)(float fLightRS,float fLightRsRs,float fDistance,float fDistDist,float cosang);
HRESULT typedef (__stdcall *CREATE_INSTANCE_FUNC)(void* ppv);
struct LOAD_CALLBACK_DESC
{
DWORD dwTotalCount;
DWORD* pdwCurCount;
LOAD_CALLBACK_FUNC pFunc;
};
struct TRI_FACE
{
VECTOR3 v3Point;
PLANE plane;
WORD wIndex[4];
};
#define TRI_FACE_SIZE 12+16+8
#define TRI_FACE_NORMAL_OFFSET 12
#define TRI_FACE_D_OFFSET 24
#define TRI_FACE_INDEX_OFFSET 28
struct SHORT_RECT
{
short left;
short top;
short right;
short bottom;
};
struct HFIELD_POS
{
DWORD dwX;
DWORD dwZ;
};
struct FOG_DESC
{
float fStart;
float fEnd;
float fDensity;
DWORD dwColor;
BOOL bEnable;
};
struct VIEWPORT
{
CAMERA_DESC cameraDesc;
VIEW_VOLUME ViewVolume;
PLANE planeCameraEye;
MATRIX4 matViewInverse;
MATRIX4 matView;
MATRIX4 matProj;
MATRIX4 matForBillBoard;
DWORD dwAmbientColor;
DWORD dwEmissiveColor;
SHORT_RECT rcClip;
WORD wClipWidth;
WORD wClipHeight;
BOOL bFullScreen;
FOG_DESC fogDesc;
DIRECTIONAL_LIGHT_DESC dirLightDesc;
};
interface I3DModel;
struct MODEL_HANDLE
{
I3DModel* pModel;
DWORD dwRefIndex;
};
struct CLOCK
{
DWORD dwLO;
DWORD dwHI;
};
struct PERFORMANCE_CONTEXT
{
CLOCK dwClock; // 0
CLOCK dwUsagedClock; // 8
DWORD dwPrvTick; // 16
DWORD dwFrameCount; // 20
DWORD dwAvgFrame; // 24
};
struct DECAL_DESC
{
VECTOR3 v3Position; // 单漠捞 积扁绰 矫累痢.
VECTOR3 v3FaceDirection; // 单漠捞 焊绰 规氢.
VECTOR3 v3UpDirection; // 单漠狼 '困'甫 唱鸥郴绰 氦磐. 甸绢坷绰 乐绰 弊措肺 瓜绰促.
VECTOR3 v3XYZScale; // 阿 己盒狼 辨捞. 哭颊 谅钎拌 扁霖栏肺 单漠狼 坷弗率捞 X, 拉率捞 Z, 拳搁规氢捞 Y.
BOOL bLookAtPivot;
// void* MaterialHandle;
char szMaterialName[MAX_NAME_LEN];
DWORD dwTextureCoordGenMethod; // 咆胶媚傅 规过. 酒流 公瓤. 角赴歹概俏观俊 救等促.
DWORD dwTTL; // 鸥烙 捧 扼捞宏. 橇饭烙窜困. 康盔洒 且妨搁 0xffffffff
};
struct MULTI_DWORD_KEY
{
DWORD dwNum;
DWORD dwKey[16];
};
struct SET_FRAME_ARGS
{
MATRIX4* pMatrixEntry;
COLLISION_MODEL_DESC* pColModelDesc;
MATRIX4* pParentMat;
DWORD dwFrame;
DWORD dwMotionIndex;
MATRIX4 matTransform[2]; // 0篮 parent, 1篮 transform
MATRIX4 matWorldForPhysique;
DWORD dwFlag;
};
struct FONT_PROPERTY_DESC
{
// 郴侩 绊沥
HFONT hFont;
int iWidth;
int iHeight;
// 郴侩捞 官拆 喉钒.
DWORD dwColor;
char* pszString;
DWORD dwStrLen;
CHAR_CODE_TYPE type;
};
struct PICK_GXOBJECT_DESC
{
GXOBJECT_HANDLE gxo;
VECTOR3 v3IntersectPoint;
float fDist;
DWORD dwModelIndex;
DWORD dwObjIndex;
};
struct LOCKED_RECT
{
INT Pitch;
void* pBits;
};
enum TEXTURE_FORMAT
{
TEXTURE_FORMAT_A8R8G8B8,
TEXTURE_FORMAT_A4R4G4B4,
TEXTURE_FORMAT_R5G6B5,
TEXTURE_FORMAT_A1R5G5B5
};
enum TEXGEN_METHOD
{
TEXGEN_METHOD_REFLECT_SPHEREMAP = 0,
TEXGEN_METHOD_WAVE = 1
};
struct CUSTOM_EFFECT_DESC
{
char szEffectShaderName[32];
TEXGEN_METHOD method;
BOOL bDisableSrcTex;
char szTexName[MAX_NAME_LEN];
DWORD dwFlag;
DWORD dwReserved1;
DWORD dwReserved2;
DWORD dwReserved3;
DWORD dwReserved4;
};
enum TRANSFORM_MATRIX_TYPE
{
TRANSFORM_MATRIX_TYPE_VIEW = 0,
TRANSFORM_MATRIX_TYPE_WORLD = 1,
TRANSFORM_MATRIX_TYPE_PRJ = 2
};
struct AFTER_INTERPOLATION_CALL_BACK_ARG
{
DWORD dwIncreasedTick; // 弥辟 霸烙 橇饭烙俊辑 刘啊等 平 墨款飘.
DWORD dwTickPerFrame; // 茄 橇饭烙寸 硅沥等 平. dwIncreasedTick狼 弥措蔼捞促.
};
typedef DWORD (__stdcall *AfterInterpolationCallBack)( AFTER_INTERPOLATION_CALL_BACK_ARG* pArg);
// 劳胶钮萍宏::Run()俊辑 困摹焊埃苞 罚歹傅 荤捞俊 龋免登绰 妮归.
// 墨皋扼甫 某腐磐俊 嘿捞芭唱且 锭 静搁 蜡侩窍促.
// 绵规氢 鸥盔眉. 面倒贸府 殿俊 静牢促.
struct AAELLIPSOID
{
VECTOR3 P; // 乔嚎, 例措蔼.
float w; // x, z率 瘤抚.
float h; // y绵率 臭捞.
};
// 面倒贸府 窃荐 郴何俊辑 静捞绰 备炼眉.
struct COLLISION_RESULT
{
float fMeetTime; // 父朝锭狼 矫痢.
VECTOR3 vWhereMeet; // 父唱绰 痢.
VECTOR3 vMeetPivot; // 父朝锭狼 坷宏璃飘狼 吝痢.
PLANE MeetPlane; // 父唱绰 搁.
DWORD dwComponentType; // 伙阿屈狼 绢叼俊 父车唱.?
};
// CoGXObject俊辑 龋免窍绰 面倒贸府 窃荐狼 府畔骇幅.
struct COLLISION_TEST_RESULT
{
VECTOR3 Candidate;
VECTOR3 LastVelocity;
// VECTOR3 To;
BOOL bLand; // 顶俊 搓酒 乐绰啊.?
};
typedef DWORD (__stdcall *CollisionTestCallBackProcedure)(COLLISION_RESULT* pResult);
// 瘤坷皋飘府俊辑 面倒贸府锭 静老 妮归.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -