Exemple #1
0
 public static bool HasCpuAccessFlag(GpuCpuAccessFlag flag, GpuCpuAccessFlag requirement)
 {
     if (((uint)flag & (uint)requirement) != 0)
     {
         return(true);
     }
     return(false);
 }
Exemple #2
0
 public GpuResourceInfo(
     GpuBindUsage bindUsage,
     GpuCpuAccessFlag cpuAccessFlag = GpuCpuAccessFlag.None,
     GpuHeapType heapType           = GpuHeapType.Default)
 {
     BindUsage     = bindUsage;
     CpuAccessFlag = cpuAccessFlag;
     HeapType      = heapType;
 }
Exemple #3
0
        public static SharpDX.Direct3D11.CpuAccessFlags ToCpuAccessFlag(GpuCpuAccessFlag cpuAccessFlag)
        {
            uint result = 0;

            if (HasCpuAccessFlag(cpuAccessFlag, GpuCpuAccessFlag.Read))
            {
                result = result | (uint)SharpDX.Direct3D11.CpuAccessFlags.Read;
            }
            if (HasCpuAccessFlag(cpuAccessFlag, GpuCpuAccessFlag.Write))
            {
                result = result | (uint)SharpDX.Direct3D11.CpuAccessFlags.Write;
            }

            return((SharpDX.Direct3D11.CpuAccessFlags)result);
        }
Exemple #4
0
 public static GpuResourceInfo ShaderResource(
     GpuCpuAccessFlag cpuAccessFlag = GpuCpuAccessFlag.None,
     GpuHeapType heapType           = GpuHeapType.Default)
 => new GpuResourceInfo(GpuBindUsage.ShaderResource, cpuAccessFlag, heapType);
Exemple #5
0
 public static GpuResourceInfo IndexBuffer(
     GpuCpuAccessFlag cpuAccessFlag = GpuCpuAccessFlag.None,
     GpuHeapType heapType           = GpuHeapType.Default)
 => new GpuResourceInfo(GpuBindUsage.IndexBuffer, cpuAccessFlag, heapType);