Example #1
0
        /// <summary>
        /// Commits bindings on the graphics pipeline.
        /// </summary>
        /// <param name="specState">Specialization state for the bound shader</param>
        /// <returns>True if all bound textures match the current shader specialization state, false otherwise</returns>
        public bool CommitGraphicsBindings(ShaderSpecializationState specState)
        {
            bool result = _gpBindingsManager.CommitBindings(specState);

            UpdateRenderTargets();

            return(result);
        }
Example #2
0
 /// <summary>
 /// Commits bindings on the compute pipeline.
 /// </summary>
 public void CommitComputeBindings()
 {
     // Every time we switch between graphics and compute work,
     // we must rebind everything.
     // Since compute work happens less often, we always do that
     // before and after the compute dispatch.
     _cpBindingsManager.Rebind();
     _cpBindingsManager.CommitBindings();
     _gpBindingsManager.Rebind();
 }
Example #3
0
        /// <summary>
        /// Commits bindings on the graphics pipeline.
        /// </summary>
        /// <param name="specState">Specialization state for the bound shader</param>
        /// <returns>True if all bound textures match the current shader specialization state, false otherwise</returns>
        public bool CommitGraphicsBindings(ShaderSpecializationState specState)
        {
            _texturePoolCache.Tick();
            _samplerPoolCache.Tick();

            bool result = _gpBindingsManager.CommitBindings(specState);

            UpdateRenderTargets();

            return(result);
        }
Example #4
0
        /// <summary>
        /// Commits bindings on the compute pipeline.
        /// </summary>
        /// <param name="specState">Specialization state for the bound shader</param>
        /// <returns>True if all bound textures match the current shader specialization state, false otherwise</returns>
        public bool CommitComputeBindings(ShaderSpecializationState specState)
        {
            // Every time we switch between graphics and compute work,
            // we must rebind everything.
            // Since compute work happens less often, we always do that
            // before and after the compute dispatch.
            _cpBindingsManager.Rebind();
            bool result = _cpBindingsManager.CommitBindings(specState);

            _gpBindingsManager.Rebind();

            return(result);
        }
Example #5
0
        /// <summary>
        /// Commits bindings on the graphics pipeline.
        /// </summary>
        public void CommitGraphicsBindings()
        {
            _gpBindingsManager.CommitBindings();

            UpdateRenderTargets();
        }