microsoft / angle

ANGLE: OpenGL ES to DirectX translation
Other
615 stars 166 forks source link

SwapChainPanel doesn't resize #123

Closed mgrviper closed 5 years ago

mgrviper commented 7 years ago

On desktop sometimes after resizing* UWP app (and changing Window::Current->Content from game to splash and back) SwapChainPanel stops resizing completely till change of Window::Current->Content to another view. Window itself is resizing alright.

SwapChainPanelSizeChangedHandler from SwapChainPanelNativeWindow.h stop receiving events till change of view. In game i still can receive SizeChanged event for CoreWindow, but not for SwapChainPanel.

*panel resizes with significant delay after window, possible reproduction of https://github.com/Microsoft/angle/issues/70 and/or https://github.com/Microsoft/angle/issues/111 Reproduces easily if resize rapidly with change of direction while app is lags below 30 FPS.

Is there are way to workaround this by manually resize SwapChainPanel or set transform for SwapChain outside of ANGLE without modifications to ANGLE itself?

I will try to reproduce this behavior in sample and will update this issue when/if i have minimal working example.

** there is also visual bug (alpha blending?) when panel stop resizing - image became grayish when overlayed with, for example (0,0,0,80)

austinkinross commented 7 years ago

Hi, thanks for reporting the issue. I'm not aware of any issues in this area (except for the delay during resize), so it would be great to have a sample to reproduce the behavior you're seeing.

Could you also share which Operating System you're running on, and ideally the version number? Thanks a lot!

mgrviper commented 7 years ago

Some details about OS and project: I'm running Windows 10, version 1511, build 10586.753. Project target is 10.0.10240.0, Platform x86

mgrviper commented 7 years ago

Here is modified sample app in which bug reproducible: AngleBugReport123.zip How to reproduce: Resize by dragging topleft corner of window. When bug manifested cube would became cuboid and background would be white instead of black

Without bug withoutbug

With bug manifested withbug

mgrviper commented 7 years ago

@austinkinross sorry, can i have any update or confirmation?

claudiuslollarius commented 7 years ago

Having the exact same issue myself: after a while, canvas size stops being updated.

JimSEOW commented 7 years ago

@austinkinross We are now looking into how Microsoft Angel for .NET can contribute to a new Page for WindowsTemplateStudio to bring Remix3D content from indoor classroom to outdoor mixed reality ( 3D content overlaying live stream video from camera of either a tablet (e.g. WinOnARM Q4 2017) or surface phone (2018) - aligns with Microsoft Global AI integration to classroom for early age children.

It will be synergy to our effort if we could get your support to have an official (.NET c#) Visual Studio Template for Angel's OpenGL ES for XAML.

mgrviper commented 7 years ago

@austinkinross can you provide some update on this or confirm that this is indeed a bug and would (or wouldn't) be resolved?

austinkinross commented 7 years ago

Hi, thanks for attaching the repro project and apologies for the delayed reply.

With your repro app, my understanding is that if I drag the top-left corner of the window towards the bottom-right corner, then at some point the cube will become 'stuck' at a fixed-size in the top left-corner of the window on a white background. Is this correct?

If so, then unfortunately I am unable to reproduce the issue. It's possible that this has been fixed in a recent version of Windows, since I am running build 15063 (the Creator's Update, from April 2017) while your build (10586) is from November 2015.

Austin

austinkinross commented 5 years ago

Closing out this old issue, since we haven't had any reports of it since 2017.

If you continue to see issues here then I suggest that you ask over on the main ANGLE project's mailing list: https://groups.google.com/forum/#!forum/angleproject

Thanks Austin