コード例 #1
0
        internal void SynchronousPrepareBatches(Frame frame)
        {
            var context = new Batch.PrepareContext(PrepareManager, false, frame.BatchesToRelease);

            context.PrepareMany(frame.Batches);

            PrepareManager.AssertEmpty();
        }
コード例 #2
0
        internal void ParallelPrepareBatches(Frame frame)
        {
            var context = new Batch.PrepareContext(PrepareManager, true, frame.BatchesToRelease);

            context.PrepareMany(frame.Batches);

            PrepareManager.Wait();
            PrepareManager.AssertEmpty();
        }
コード例 #3
0
ファイル: RenderManager.cs プロジェクト: sq/Libraries
        internal void SynchronousPrepareBatches(Frame frame)
        {
            var context = new Batch.PrepareContext(PrepareManager, false);

            context.PrepareMany(ref frame.Batches);

            ThreadGroup.NotifyQueuesChanged();
            PrepareManager.AssertEmpty();
            frame.BatchesToRelease.AddRange(in context.BatchesToRelease);
        }