Структуры CModelJoint и ICharacterModel

Пользователь
Статус
Оффлайн
Регистрация
21 Окт 2019
Сообщения
346
Реакции[?]
48
Поинты[?]
15K
Есть у кого-то эти обновлённые структурки? Заранее спс
C++:
struct phys_geometry
{
    class IGeometry* pGeom;
    Vec3 Ibody; // tensor of inertia in body frame
    Quat q; // body frame
    Vec3 origin;
    float V; // volume
    int nRefCount;
    int surface_idx; // used for primitives and meshes without per-face ids
    int* pMatMapping; // mat mapping; can later be overridden inside entity part
    int nMats;
    void* pForeignData; // any external pointer to be associated with phys geometry
};

struct CryBonePhysics
{
    phys_geometry* pPhysGeom; // id of a separate mesh for this bone // MUST not be in File Structures!!!
    // additional joint parameters
    int flags;
    float min[3], max[3];
    float spring_angle[3];
    float spring_tension[3];
    float damping[3];
    float framemtx[3][3];
};

class CModelJoint
{
    // "rope"
public:
    char pad_0x0000[0x8];
    int32 m_nOffsetChildren;
    uint32 m_NodeID;
    uint32 m_numChildren;
    int16 m_idx;
    int16 m_idxParent;
    char pad_0x0018[0x10];
    CryBonePhysics m_PhysInfo[2];

    const char* GetName()
    {
        return *(const char**)((DWORD64)this + 0x130);
    }
};

struct ICharacterModel
{
    CModelJoint* GetModelJoint(UINT nIndex)
    {
        // "rope"
        DWORD64 dwJointsArray = *(DWORD64*)((DWORD64)this + 0xD0);
        return (CModelJoint*)(dwJointsArray + 0x148 * nIndex);
    }
};

struct ICharacterInstance
{
public:
    char pad_0x0000[0x110];
    ICharacterModel* m_pModel;

};
 
Сверху Снизу