Esempio n. 1
0
        public void Dispatch(int xGroupCount, int yGroupCount, int zGroupCount)
        {
            var screen = _screen;

            ContextMismatchException.ThrowIfContextNotEqual(Engine.GetValidCurrentContext(), screen);

            var program = _program;

            ProgramObject.UseProgram(program);
            var context = new ComputeShaderContext(screen);
            var uniform = new ShaderDataDispatcher(program);

            IComputeShader.OnDispatchingInternal(_shader, uniform, context);
            IComputeShader.DispatchCompute(xGroupCount, yGroupCount, zGroupCount);
        }
Esempio n. 2
0
 protected abstract void OnRendering(ShaderDataDispatcher dispatcher, in Vector2i screenSize);
Esempio n. 3
0
 protected abstract void OnRendering(ShaderDataDispatcher dispatcher, Control target, in Matrix4 model, in Matrix4 view, in Matrix4 projection);
Esempio n. 4
0
 public void DispatchShader(ShaderDataDispatcher dispatcher, in Matrix4 model, in Matrix4 lightViewProjection)