实体

标记 CCoronas / C3dMarkers

光晕与 3D 标记

CCoronas.h · C3dMarkers.h

光晕与 3D 标记。每帧重新 Register / Place(引擎槽位语义);id 固定便于更新。

注册光晕

CCoronas::RegisterCorona

按类型或纹理。

static void RegisterCorona(unsigned int id, CEntity* attachTo, unsigned char red, unsigned char green, unsigned char blue,
    unsigned char alpha, CVector const& posn, float radius, float farClip, eCoronaType coronaType, eCoronaFlareType flaretype,
    bool enableReflection, bool checkObstacles, int _param_not_used, float angle, bool longDistance, float nearClip,
    unsigned char fadeState, float fadeSpeed, bool onlyFromBelow, bool reflectionDelay);
// 另有 RwTexture* 重载

更新光晕坐标

UpdateCoronaCoors
static void UpdateCoronaCoors(unsigned int id, CVector const& posn, float farClip, float angle);

放 3D 标记

PlaceMarker / PlaceMarkerSet / PlaceMarkerCone
static C3dMarker* PlaceMarker(unsigned int id, unsigned short type, CVector& posn, float size,
    unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha,
    unsigned short pulsePeriod, float pulseFraction, short rotateRate,
    float nrm_x, float nrm_y, float nrm_z, bool zCheck);
static void PlaceMarkerSet(unsigned int id, unsigned short type, CVector& posn, float size,
    unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha,
    unsigned short pulsePeriod, float pulseFraction, short rotateRate);
static void PlaceMarkerCone(unsigned int id, CVector& posn, float size,
    unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha,
    unsigned short pulsePeriod, float pulseFraction, short rotateRate, unsigned char bEnableCollision);

方向箭头

DirectionArrowSet
static void DirectionArrowSet(CVector posn, float size, int red, int green, int blue, int alpha,
    float dir_x, float dir_y, float dir_z);

用户标记

User3dMarkerDelete / User3dMarkerDeleteAll
static void User3dMarkerDelete(int slotIndex);
static void User3dMarkerDeleteAll();

强制渲染

ForceRender / IgnoreRenderLimit
static void ForceRender(unsigned char bEnable);
static bool& IgnoreRenderLimit;

雷达 2D blip 见 CRadar

On this page