2016-03-19 34 views
0

私はSharpDX 2Dウィンドウのサイズ変更

CODE

mSwapChainDesc = new dx.SwapChainDescription() 
{ 
    BufferCount = 1, 
    IsWindowed = true, 
    OutputHandle = Target.Handle, 
    SwapEffect = dx.SwapEffect.Discard, 
    Usage = dx.Usage.RenderTargetOutput | dx.Usage.ShaderInput, 
    Flags = dx.SwapChainFlags.None, 
    ModeDescription = new dx.ModeDescription(Target.ClientSize.Width, Target.ClientSize.Height, dx.Rational.Empty, dx.Format.B8G8R8A8_UNorm), 
    SampleDescription = new dx.SampleDescription(1, 0) 
}; 

d3.Device.CreateWithSwapChain(d3d.DriverType.Hardware, d3.DeviceCreationFlags.BgraSupport, mSwapChainDesc, out mD3Device, out mSwapChain); 
mSurface = dx.Surface.FromSwapChain(mSwapChain, 0); 

Factory = new d2.Factory(); 
DWFactory = new dWrite.Factory(); 
mDevice = new d2.DeviceContext(mSurface); 

mRenderCallback = new dWin.RenderLoop.RenderCallback(Render); 

Tryied

mSwapChain.ResizeBuffers(
    mSwapChain.Description.BufferCount, 
    renderSize.Value.Width, 
    renderSize.Value.Height, 
    mSwapChain.Description.ModeDescription.Format, 
    mSwapChain.Description.Flags); 

エラー

01のサイズを変更したいレンダリング

HRESULT:[0x887A0001]、モジュール:[SharpDX.DXGI]、ApiCode: [DXGI_ERROR_INVALID_CALL/InvalidCall]

答えて

0

チェック発言here on the MSDN

もし、フラグや何かがあったと思ったら、resizeメソッドを使用する必要があると思っても助けにならない場合は、これは、

HRESULT: 0x887A0001 : The application provided invalid parameter data; this must be debugged and fixed before the application is released.

DXGI_ERROR CodesをあなたのHRESULTを説明するだろう。

表面があなたを引き上げていると思います。サイズ変更を呼び出す前に解放してください。

関連する問題