本文整理汇总了C++中VectorBuffer::WriteVariant方法的典型用法代码示例。如果您正苦于以下问题:C++ VectorBuffer::WriteVariant方法的具体用法?C++ VectorBuffer::WriteVariant怎么用?C++ VectorBuffer::WriteVariant使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类VectorBuffer
的用法示例。
在下文中一共展示了VectorBuffer::WriteVariant方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: write_node
//
// write_node
//
void ClientSidePrediction::write_node(VectorBuffer& message, Node& node)
{
// Write node ID
message.WriteUInt(node.GetID());
// Write attributes
write_network_attributes(node, message);
// Write user variables
const auto& vars = node.GetVars();
message.WriteVLE(vars.Size());
for (auto i = vars.Begin(); i != vars.End(); ++i)
{
message.WriteStringHash(i->first_);
message.WriteVariant(i->second_);
}
// Write number of components
message.WriteVLE(node.GetNumComponents());
// Write components
const auto& components = node.GetComponents();
for (unsigned i = 0; i < components.Size(); ++i)
{
auto component = components[i];
write_component(message, *component);
}
}
示例2: RefreshShaderParameterHash
void Material::RefreshShaderParameterHash()
{
VectorBuffer temp;
for (HashMap<StringHash, MaterialShaderParameter>::ConstIterator i = shaderParameters_.Begin(); i != shaderParameters_.End(); ++i)
{
temp.WriteStringHash(i->first_);
temp.WriteVariant(i->second_.value_);
}
shaderParameterHash_ = 0;
const unsigned char* data = temp.GetData();
unsigned dataSize = temp.GetSize();
for (unsigned i = 0; i < dataSize; ++i)
shaderParameterHash_ = SDBMHash(shaderParameterHash_, data[i]);
}