/// <summary> /// Initializes a new instance of the <see cref="DeviceContext10"/> class. /// </summary> /// <param name="handle">The window handle to associate with the device.</param> /// <param name="settings">The settings used to configure the device.</param> internal DeviceContext10(IntPtr handle, DeviceSettings10 settings) { if (handle == IntPtr.Zero) { throw new ArgumentException("Value must be a valid window handle.", "handle"); } if (settings == null) { throw new ArgumentNullException("settings"); } this.settings = settings; factory = new Factory(); device = new Direct3D10.Device(factory.GetAdapter(settings.AdapterOrdinal), Direct3D10.DriverType.Hardware, settings.CreationFlags); swapChain = new SwapChain(factory, device, new SwapChainDescription { BufferCount = 1, Flags = SwapChainFlags.None, IsWindowed = true, ModeDescription = new ModeDescription(settings.Width, settings.Height, new Rational(60, 1), Format.R8G8B8A8_UNorm), OutputHandle = handle, SampleDescription = new SampleDescription(1, 0), SwapEffect = SwapEffect.Discard, Usage = Usage.RenderTargetOutput }); factory.SetWindowAssociation(handle, WindowAssociationFlags.IgnoreAll | WindowAssociationFlags.IgnoreAltEnter); }
/// <summary> /// Initializes a new instance of the <see cref="DeviceContext10"/> class. /// </summary> /// <param name="handle">The window handle to associate with the device.</param> /// <param name="settings">The settings used to configure the device.</param> internal DeviceContext10(IntPtr handle, DeviceSettings10 settings) { if (handle == IntPtr.Zero) throw new ArgumentException("Value must be a valid window handle.", "handle"); if (settings == null) throw new ArgumentNullException("settings"); this.settings = settings; factory = new Factory(); device = new Direct3D10.Device(factory.GetAdapter(settings.AdapterOrdinal), Direct3D10.DriverType.Hardware, settings.CreationFlags); swapChain = new SwapChain(factory, device, new SwapChainDescription { BufferCount = 1, Flags = SwapChainFlags.None, IsWindowed = true, ModeDescription = new ModeDescription(settings.Width, settings.Height, new Rational(60, 1), Format.R8G8B8A8_UNorm), OutputHandle = handle, SampleDescription = new SampleDescription(1, 0), SwapEffect = SwapEffect.Discard, Usage = Usage.RenderTargetOutput }); factory.SetWindowAssociation(handle, WindowAssociationFlags.IgnoreAll | WindowAssociationFlags.IgnoreAltEnter); }
/// <summary> /// Initializes a <see cref="DeviceContext10">Direct3D10 device context</see> according to the specified settings. /// The base class retains ownership of the context and will dispose of it when appropriate. /// </summary> /// <param name="settings">The settings.</param> /// <returns>The initialized device context.</returns> protected void InitializeDevice(DeviceSettings10 settings) { var result = new DeviceContext10(_form.Handle, settings); userInterfaceRenderer = new UserInterfaceRenderer10(result.Device, settings.Width, settings.Height); apiContext = result; Context10 = result; }
protected override void OnInitialize() { var settings10 = new DeviceSettings10 { AdapterOrdinal = 0, CreationFlags = DeviceCreationFlags.None, Width = WindowWidth, Height = WindowHeight }; InitializeDevice( settings10 ); }
/// <summary> /// Initializes a <see cref="DeviceContext10">Direct3D10 device context</see> according to the specified settings. /// The base class retains ownership of the context and will dispose of it when appropriate. /// </summary> /// <param name="settings">The settings.</param> /// <returns>The initialized device context.</returns> protected void InitializeDevice( DeviceSettings10 settings ) { var result = new DeviceContext10( _form.Handle, settings ); userInterfaceRenderer = new UserInterfaceRenderer10( result.Device, settings.Width, settings.Height ); apiContext = result; Context10 = result; }