本文整理汇总了C#中UMAData.Validate方法的典型用法代码示例。如果您正苦于以下问题:C# UMAData.Validate方法的具体用法?C# UMAData.Validate怎么用?C# UMAData.Validate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UMAData
的用法示例。
在下文中一共展示了UMAData.Validate方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: HandleDirtyUpdate
public virtual bool HandleDirtyUpdate(UMAData data)
{
if (data == null)
return true;
if (umaData != data)
{
umaData = data;
if (!umaData.Validate())
return true;
if (meshCombiner != null)
{
meshCombiner.Preprocess(umaData);
}
umaData.FireCharacterBegunEvents();
}
if (umaData.isTextureDirty)
{
if (activeGeneratorCoroutine == null)
{
activeGeneratorCoroutine = umaGeneratorCoroutine;
TextureProcessBaseCoroutine textureProcessCoroutine;
textureProcessCoroutine = new TextureProcessPROCoroutine();
textureProcessCoroutine.Prepare(data, this);
activeGeneratorCoroutine.Prepare(this, umaData, textureProcessCoroutine, !umaData.isMeshDirty);
}
bool workDone = umaGeneratorCoroutine.Work();
if (workDone)
{
activeGeneratorCoroutine = null;
umaData.isTextureDirty = false;
umaData.isAtlasDirty = true;
}
if (!workDone || !fastGeneration || umaData.isMeshDirty)
return false;
}
if (umaData.isMeshDirty)
{
UpdateUMAMesh(umaData.isAtlasDirty);
umaData.isAtlasDirty = false;
umaData.isMeshDirty = false;
if (!fastGeneration)
return false;
}
if (umaData.isShapeDirty)
{
UpdateUMABody(umaData);
umaData.isShapeDirty = false;
}
UMAReady();
return true;
}
示例2: HandleDirtyUpdate
public virtual bool HandleDirtyUpdate(UMAData data)
{
if (umaData != data)
{
umaData = data;
if (!umaData.Validate())
{
return true;
}
}
if (umaData.isMeshDirty)
{
if (!umaData.isTextureDirty)
{
UpdateUMAMesh(false);
}
umaData.isMeshDirty = false;
}
if (umaData.isTextureDirty)
{
if( activeGeneratorCoroutine == null )
{
activeGeneratorCoroutine = umaGeneratorCoroutine;
TextureProcessBaseCoroutine textureProcessCoroutine;
if (usePRO)
{
textureProcessCoroutine = new TextureProcessPROCoroutine();
textureProcessCoroutine.Prepare(data, this);
}
else
{
textureProcessCoroutine = new TextureProcessIndieCoroutine();
}
activeGeneratorCoroutine.Prepare(this, umaData, textureProcessCoroutine);
}
if (umaGeneratorCoroutine.Work())
{
activeGeneratorCoroutine = null;
UpdateUMAMesh(true);
umaData.isTextureDirty = false;
}
else
{
return false;
}
}
else if (umaData.isShapeDirty)
{
UpdateUMABody(umaData);
umaData.isShapeDirty = false;
UMAReady();
return true;
}
else
{
UMAReady();
return true;
}
return false;
}