Example #1
0
        private BatchedRenderer(
            IBatchedRenderable renderable, ShaderProgram?shaderProgram, IEnumerable <IRenderSetting> settings)
        {
            this.renderable = renderable;
            this.settings   = settings.ToImmutableArray();

            renderable.BatchActivated   += onBatchActivated;
            renderable.BatchDeactivated += onBatchDeactivated;

            if (shaderProgram != null)
            {
                SetShaderProgram(shaderProgram);
            }
        }
Example #2
0
 public static BatchedRenderer From(
     IBatchedRenderable renderable, ShaderProgram shaderProgram, IEnumerable <IRenderSetting> settings)
 {
     return(new BatchedRenderer(renderable, shaderProgram, settings));
 }
Example #3
0
 public static BatchedRenderer From(
     IBatchedRenderable renderable, ShaderProgram shaderProgram, params IRenderSetting[] settings)
 {
     return(From(renderable, shaderProgram, settings.AsEnumerable()));
 }
Example #4
0
 public static BatchedRenderer From(IBatchedRenderable renderable, ShaderProgram shaderProgram)
 {
     return(From(renderable, shaderProgram, Enumerable.Empty <IRenderSetting>()));
 }
Example #5
0
 public static BatchedRenderer From(IBatchedRenderable renderable, IEnumerable <IRenderSetting> settings)
 {
     return(new BatchedRenderer(renderable, null, settings));
 }
Example #6
0
 public static BatchedRenderer From(IBatchedRenderable renderable)
 {
     return(From(renderable, Enumerable.Empty <IRenderSetting>()));
 }