private void RebuildRenderTexture(UMAData data) { var rt = data.GetFirstRenderTexture(); if (rt != null && !rt.IsCreated()) { if (NoCoroutines) { UMAGeneratorPro ugp = new UMAGeneratorPro(); ugp.ProcessTexture(this, umaData, true, InitialScaleFactor); TextureChanged++; } else { umaData = data; TextureProcessBaseCoroutine textureProcessCoroutine; textureProcessCoroutine = new TextureProcessPROCoroutine(); textureProcessCoroutine.Prepare(data, this); activeGeneratorCoroutine = new UMAGeneratorCoroutine(); activeGeneratorCoroutine.Prepare(this, umaData, textureProcessCoroutine, true, InitialScaleFactor); while (!activeGeneratorCoroutine.Work()) { ; } activeGeneratorCoroutine = null; } TextureChanged++; } }
public void OnCreated(UMAData umaData) { var RT = umaData.GetFirstRenderTexture(); if (RT == null) { return; } if (allUMACharacters == null) { allUMACharacters = new Dictionary <UMAData, RenderTexture>(); } allUMACharacters.Add(umaData, RT); anyRT = RT; if (!enabled) { enabled = true; } }
public void OnUpdate(UMAData umaData) { if (updatingCount > 0) { updatingCount--; } var RT = umaData.GetFirstRenderTexture(); if (RT == null) { return; } if (allUMACharacters == null) { allUMACharacters = new Dictionary <UMAData, RenderTexture>(); } allUMACharacters[umaData] = RT; anyRT = RT; if (!enabled) { enabled = true; } }