示例#1
0
        /// <summary>Tick this enumerator to build the performance units.</summary>
        public IEnumerator BuildPerformanceUnits()
        {
            perfReports.Clear();

            var c = compileUnits.Count;
            var s = 1f / Mathf.Max(1, c - 1);

            for (var i = 0; i < c; i++)
            {
                var unit = compileUnits[i];
                progress.SetNormalizedProgress(s * i, "Building performance unit {0:D3} / {1:D3}", i + 1, c);

                var perf = new PerfReport
                {
                    compiledfile  = unit.compiledFile,
                    rawReportFile = ShaderAnalysisUtils.GetTemporaryPerformanceReportFile(unit.compiledFile)
                };

                perfReports.Add(perf);

                yield return(null);
            }
        }
示例#2
0
 /// <summary>Add a performance report.</summary>
 /// <param name="value">The report to add.</param>
 protected void AddPerfReport(PerfReport value) => perfReports.Add(value);