/
redgpu
/
tech5
Обзор
Документация
Войти
/
redgpu
/
tech5
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
source/engine/gamelib/animstack/animator_animweb.h
142 строки
7 KB
Justin Marshall
Added cleaned up structs and classes to proper header files.
09 авг 2026, 03:17
09 авг 2026, 03:17
61cb846
Код
Авторство
О чём код?
#pragma once // Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata. // Original PDB header: w:\tech5\engine\gamelib\animstack\animator_animweb.h // Recovered logical types: 6 // Signatures retain Xbox 360 ABI evidence and may still require manual review. // IDA Local Type ordinal 2404; PDB kind: enum. enum idAnimator_AnimWeb::animWebError_t : __int32 { ANIMWEB_ERROR_NONE = 0x0, ANIMWEB_ERROR_NOPATH = 0x1, }; // IDA Local Type ordinal 15030; PDB kind: class. class __declspec(align(2)) idAnimator_AnimWeb : public idAnimator_Base { public: // Recovered virtual interface; IDA vtable ordinal 15095. virtual ~idAnimator_AnimWeb(); virtual idAnimator_Base::priority_t GetStackPriority(); virtual serializeType_t GetSerializeType(); virtual void SerializeSnapshot(idSerializer *); virtual void PreBlendSnapshot(idAnimStack *, int, const int, float); virtual void PreSerializeInit(idAnimStack *, idClip *, idGameTimeManager *); virtual bool InternalInit(const idAnimatorParms_Base *); virtual bool InternalPostInit(const idAnimatorParms_Base *); virtual void InternalShutdown(idAnimStack *); virtual void InternalPreBlendTree(const idAnimStack *, const int, const int); virtual void InternalPostBlendTree(const idAnimStack *, const int); virtual void InternalStart(const idAnimStack *, const int, const idTypesafeNumber<int,enum gameTimeUnique_t>); virtual void InternalEnd(const idAnimStack *, const int, const idTypesafeNumber<int,enum gameTimeUnique_t>); virtual void InternalBlend(const idAnimStack *, const int, const float, const idTypesafeNumber<int,enum gameTimeUnique_t>); virtual bool InternalIsContributing(); virtual const idMD6Branch *InternalGetMergeBranch(); virtual idMD6Branch *InternalGetMergeBranch_2(); virtual void InternalPause(const idAnimStack *, const idTypesafeNumber<int,enum gameTimeUnique_t>); virtual void InternalUnpause(const idAnimStack *, const idTypesafeNumber<int,enum gameTimeUnique_t>); virtual const idMD6Branch *InternalGetEndBranch(); virtual idMD6Branch *InternalGetEndBranch_2(); virtual const idHandle<short,enum invalidAnimWebHandle_t,-1> *GetHandle(); virtual void InternalInitWeb(); virtual void InternalUpdate(const int); virtual idDeclAnimWebNode::animDelta_t InternalGetCurrentAnimDeltaMode(); virtual void InternalSetAnimDelta(const idIndex<short,enum idDeclAnimWeb::invalidModelIndex_t>, const idDeclAnimWebNode *); virtual int InternalGetEdgeCost(const idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t>, const idIndex<short,enum idDeclAnimWeb::invalidEdgeIndex_t>); virtual void InternalStartPath(); virtual void InternalUpdateScalars(const int); virtual void InternalStartBlend(const idDeclAnimWebNode *, const idDeclAnimWebNode *, const int); virtual void InternalFinishBlend(const idDeclAnimWebNode *, const idDeclAnimWebNode *, const int); virtual awCheckPathResult_t CheckNextNode(const idDeclAnimWebNode *, const idDeclAnimWebNode *); virtual bool InternalShouldStartNextNode(const idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t>, const idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t>, const int, const int, const blendParms_t *, idIndex<short,enum idDeclAnimWeb::invalidModelIndex_t>, const bool, animWebEvent_t *); virtual void InternalTriggerEvent(const idDeclAnimWebNode *, const animWebEvent_t, const idHandle<short,enum invalidAnimWebHandle_t,-1> *, const int, const int); virtual void InternalTriggerBlendEvent(int, idIndex<short,enum idDeclAnimWeb::invalidModelIndex_t>, idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t>, idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t>, const int); virtual bool InternalRemapNames(idStr *, idStr *); virtual void InternalUpdateBlendEvents(const idAnimStack *, const int, const int); const idDeclAnimWeb *decl; idMD6Allocator *md6Allocator; idList<idIndex<short,enum idDeclAnimWeb::invalidSubWebIndex_t>,5> initialActiveSubWebs; idList<idAnimator_AnimWeb::idModelAnimState,33> modelAnimStates; idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t> curNodeIndex; idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t> prevNodeIndex; idIndex<short,enum idDeclAnimWeb::invalidSubWebIndex_t> destSubWebIndex; idDeclAnimWeb::stateList_t destStateIndices; idIndex<short,enum idDeclAnimWeb::invalidSubWebIndex_t> viaSubWebIndex; idDeclAnimWeb::stateList_t viaStateIndices; idIndex<short,enum idDeclAnimWeb::invalidSubWebIndex_t> otherSubWebIndex; idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t> curEdgeNodeIndex; __int16 curEdgeIndex; idStaticList<idList<idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t>,32> const *,16> pathableSubWebNodeLists; __int16 pathIndex; idAnimWebRoute curPath; interruptPath_t interruptPath; interruptBlend_t interruptBlend; int nodeStartTime; int prevNodeStartTime; int nodeStartFrame; idList<idAnimWebScalar,33> scalars; idScalarMemBlock scalarMem; int firstRandomScalarIndex; int blendEventMask; int declChangeId; idAtomicString curNodeStateName; idAtomicString curNodeSubWebName; idAtomicString destNodeStateName; idAtomicString destNodeSubWebName; idHandle<short,enum invalidAnimWebHandle_t,-1> handle; idAnimWebEventHandler_Zion eventHandler; bool clearEventsOnStateChanges; unsigned __int8 skipFlags; unsigned __int8 requiredFlags; idAnimator_AnimWeb::forcedEdge_t forcedEdge; float randomBlendVals[8]; idMD6Branch *mergeBranch; idAnimator_ChannelWeight channelWeightAnimator; idList<idDeclMD6 const *,33> modelDecls; idAnimator_AnimWeb::animWebError_t error; bool debug; bool forceAnimDeltaModeOnBlendStart; bool skipForcedEdgeAutoPath; }; // IDA Local Type ordinal 15075; PDB kind: class. class __declspec(align(4)) idAnimator_AnimWeb::idModelAnimState { public: idMD6Node *tree; idMD6Branch *branches[2]; idStaticList<idAnimWebBlendTree *,8> blendTreeCache; idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t> recentNodes[3]; __int16 recentNodeStart; bool blending; }; // IDA Local Type ordinal 15087; PDB kind: struct. struct idAnimator_AnimWeb::forcedEdge_t { idIndex<short,enum idDeclAnimWeb::invalidNodeIndex_t> destNodeIndex; idIndex<short,enum idDeclAnimWeb::invalidSubWebIndex_t> destSubWebIndex; blendParms_t blendParms; }; // IDA Local Type ordinal 18100; PDB kind: class. class idAnimatorParms_AnimWeb : public idAnimatorParms_Base { public: const idDeclAnimWeb *webDecl; idStr initialStateName; idStr initialSubWebName; int curTime; idList<idAtomicString,5> activeLayers; }; // IDA Local Type ordinal 21365; PDB kind: struct. struct idAnimator_AnimWeb::animInfo_t { int curFrame; int numFrames; int frameRate; };