Exemplo n.º 1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="minLevel"></param>
 public D3D11(Direct3D.FeatureLevel minLevel)
 {
     m_device = DeviceUtil.Create11(DeviceCreationFlags.BgraSupport, minLevel);
     if (m_device == null)
     {
         throw new NotSupportedException();
     }
 }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="dg"></param>
        /// <returns></returns>
        public static Adapter GetBestAdapter(DisposeGroup dg)
        {
            Direct3D.FeatureLevel high = Direct3D.FeatureLevel.Level_9_1;
            Adapter ada = null;

            foreach (var item in GetAdapters(dg))
            {
                var level = Direct3D11.Device.GetSupportedFeatureLevel(item);
                if (ada == null || level > high)
                {
                    ada  = item;
                    high = level;
                }
            }
            return(ada);
        }
Exemplo n.º 3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="cFlags"></param>
 /// <param name="minLevel"></param>
 /// <returns></returns>
 public static SharpDX.Direct3D11.Device Create11(
     Direct3D11.DeviceCreationFlags cFlags = Direct3D11.DeviceCreationFlags.None,
     Direct3D.FeatureLevel minLevel        = Direct3D.FeatureLevel.Level_9_1)
 {
     using (var dg = new DisposeGroup())
     {
         var ada = GetBestAdapter(dg);
         if (ada == null)
         {
             return(null);
         }
         var level = Direct3D11.Device.GetSupportedFeatureLevel(ada);
         if (level < minLevel)
         {
             return(null);
         }
         return(new Direct3D11.Device(ada, cFlags, level));
     }
 }