本文整理汇总了C++中PropertyBag::count方法的典型用法代码示例。如果您正苦于以下问题:C++ PropertyBag::count方法的具体用法?C++ PropertyBag::count怎么用?C++ PropertyBag::count使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PropertyBag
的用法示例。
在下文中一共展示了PropertyBag::count方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: animationSequence
AnimationController* _3dsLoader::loadFromFile(const string &fileName) const
{
PropertyBag xml;
bool truespaceModel = false;
string skin;
TRACE(string("Loading 3DS model from \"") + fileName + string("\""));
xml.loadFromFile(fileName);
AnimationController* controller = new AnimationController();
xml.get_optional("Truespace", truespaceModel);
xml.get_optional("forceSkin", skin);
for(size_t i=0, numAnimations=xml.count("animation"); i<numAnimations; ++i)
{
PropertyBag animation;
string name;
float fps = 0.0;
bool looping = false;
float priority = 0.0f;
xml.get("animation", animation, i);
animation.get("name", name);
animation.get_optional("fps", fps);
animation.get_optional("looping", looping);
animation.get_optional("priority", priority);
// Load all the keyframes
vector<KeyFrame> keyFrames;
const size_t length=animation.count("keyframe");
for(size_t j=0; j<length; ++j)
{
string keyFrameFile;
animation.get("keyframe", keyFrameFile, j);
Model keyFrame = loadKeyFrame(keyFrameFile);
cullDegenerateMeshes(keyFrame);
if(!skin.empty()) forceSkin(keyFrame, skin);
if(truespaceModel) fixTrueSpaceVertices(keyFrame);
keyFrames.push_back(keyFrame);
}
TRACE(string("Adding 3DS animation \"") + name + string("\" from ") + fileName);
// Add it to the controller
AnimationSequence animationSequence(keyFrames, name, priority, looping, 0, length, fps);
controller->addAnimation(animationSequence);
}
return controller;
}
示例2: load
void ActorSet::load(const PropertyBag &xml, World *world)
{
ASSERT(world!=0, "world was null");
TRACE("Loading ActorSet...");
for(size_t i=0, numObjects=xml.count("object"); i<numObjects; ++i)
{
PropertyBag ThisObjBag;
xml.get("object", ThisObjBag, i);
spawnNow(ThisObjBag, world);
}
// Player data is saved separately
deleteActors<Player>();
TRACE("...finished (Loading ActorSet)");
}