本文整理汇总了C++中Encoder::GetModelBuffer方法的典型用法代码示例。如果您正苦于以下问题:C++ Encoder::GetModelBuffer方法的具体用法?C++ Encoder::GetModelBuffer怎么用?C++ Encoder::GetModelBuffer使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Encoder
的用法示例。
在下文中一共展示了Encoder::GetModelBuffer方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Convert
//.........这里部分代码省略.........
gType=Type;
s.Format("LOD %d Class %d Type %d \n Parent %d",c, Class, Type, CTNumber);
m_ConvText.SetWindowText(s);
// TRANSFORMATION OF THE OBJECT
ecd =new Encoder("temp.DXL");
IdleMode();
cvt=CV=new Converter();
IdleMode();
// Upadtes BSP Objects
TagCount=*(int*)FileBuffer;
memcpy((void*)TagList,(int*)FileBuffer+1,TagCount*sizeof(*TagList));
IdleMode();
LODSize=hdrLOD[c].uint[4]-sizeof(int)-TagCount*sizeof(*TagList);
memcpy(LODBuffer,(char*)FileBuffer+sizeof(int)+TagCount*sizeof(*TagList),LODSize);
IdleMode();
//Root=(BRoot*)BNode::RestorePointers((BYTE*)LODBuffer, 0, &TagList);
DWORD VBClass;
VBClass=VB_CLASS_FEATURES;
if(Class==7) VBClass=VB_CLASS_DOMAIN_GROUND;
if(Class==7 && Domain==2) VBClass=VB_CLASS_DOMAIN_AIR;
GlobalBias=0.0f;
cvt->Init();
TheStateStack.pvtDrawObject(Root);
cvt->Statistics();
ecd->Initialize(cvt);
ecd->Encode(c, VBClass, CTNumber);
Buffer=ecd->GetModelBuffer();
FileSize=ecd->GetModelSize();
}
if(AssembleIt){
CString ModelName;
ModelName.Format("%s\\%05d.DXM",DirName,c);
CFileStatus Stat;
FileSize=0;
if(fModel.GetStatus(ModelName, Stat)){
if(fModel.Open(ModelName, CFile::modeRead|CFile::typeBinary)){
FileSize=(DWORD)Stat.m_size;
Buffer=(BYTE*)malloc(FileSize);
fModel.Read((void*)(Buffer), FileSize);
fModel.Close();
}
}
}
// Write out the Model
if(DBConvert){
// Assign the Model Class
k.Format("LOD %04d, Offset: %08x, Size %06x\n", c, FileOffset, FileSize);
fLog.WriteString(k);
// Single models saving
if(FragIt){
CString ModelName;
ModelName.Format("%s\\%05d.DXM",DirName,c);
fModel.Open(ModelName, CFile::modeCreate|CFile::modeWrite|CFile::typeBinary);
fModel.Write((void*)(Buffer), FileSize);
fModel.Close();
} else {
fOut.Write((void*)(Buffer), FileSize);