0
我想解析一個.X文件(用於DirectX)的動畫網格的fps ... .X文件使用模板數據。我想在模板中獲取變量:AnimTicksPerSecond,但是,我不能告訴解析器識別這個模板,因爲我沒有GUID ...有沒有一種查找GUID的方法?這是我的解析器代碼,它與標準模板一起工作,但AnimTicksPerSecond沒有在同一個文件中定義(由DirectX SDK提供)。AnimTicksPerSecond GUID
BOOL cAnimationCollection::ParseObject(LPD3DXFILEDATA pDataObj, DWORD Depth, void **data)
{
if(pDataObj->IsReference())
return true;
if(CompareDataObjectType(pDataObj, TID_D3DRMAnimationSet)) //Animation Set is defined in rmxfguid.h(comes with DX SDK)
{
// Create and link Object
cAnimationSet *AnimSet = new cAnimationSet();
AnimSet->m_Next = m_AnimationSets;
m_AnimationSets = AnimSet;
// Increment # Animation Sets by 1
m_NumAnimationSets++;
// Set Animation Index to global count
AnimSet->m_index = index;
index++;
LPD3DXFILEDATA pSubData;
SIZE_T nChildren;
if(!strcmp(GetObjectName(pDataObj), "Unknown") || !(AnimSet->m_Name = GetObjectName(pDataObj)))
AnimSet->m_Name = _strdup("NewAnimationSet");
if(SUCCEEDED(pDataObj->GetChildren(&nChildren)))
for(SIZE_T index = 0; index < nChildren; index++)
if(SUCCEEDED(pDataObj->GetChild(index, &pSubData))){
ParseChildObjects(pSubData, Depth, data);
}
}
return true;
}
我正在尋找IID,對不起 – 2012-02-10 19:20:38
這就是IID * * *。 – 2012-02-10 19:38:46
當我在代碼中引用AnimTicksPerSecond時,出現錯誤,指出AnimTicksPerSecond是「未引用的變量」。系統中的某個位置包含的文件是對AnimTicksPerSecond的正確IID的引用...例如...在rmxfguid.h中,可以找到具有IID:TID_D3DRMAnimation的動畫模板的DEFINE_GUID宏。 TnimTicksPerSecond不在rmxfguid.h的列表中......它在哪裏?我如何參考它? – 2012-02-10 20:09:24