Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ANGLE is slow #278

Closed
whitequark opened this issue Aug 2, 2017 · 4 comments
Closed

ANGLE is slow #278

whitequark opened this issue Aug 2, 2017 · 4 comments
Milestone

Comments

@whitequark
Copy link
Contributor

@Evil-Spirit says that ANGLE is too slow and we should provide native OpenGL Windows builds. Questions:

  • Can we mitigate the ANGLE startup delay (which is significant)?
  • How much slowdown does ANGLE incur after startup? It's certainly fast enough for Chrome, so I would think it should not matter for us; we have less intense demands.
  • Can we easily determine if we should use ANGLE or OpenGL during startup, without dragging in too much support infrastructure?
@Evil-Spirit
Copy link
Collaborator

@whitequark, I have tried to figure out what's happening and get the following information:

  • probably, ANGLE mode DYAMIC_DRAW is slower when STATIC_DRAW even if we create and delete buffer immediately
  • probably, the function D3D11CreateDeviceAndSwapChain called every frame and this is slows down (probably we are doing something wrong or misusing ANGLE in some way)

This is about things we draw in fake-immediate mode (meshes for UI, constraints edges, etc). All what we are drawing in batch mode is fast and ok.

@whitequark
Copy link
Contributor Author

@Evil-Spirit Idea: we could use EGL_ANGLE_platform_angle_opengl extension to request ANGLE to just forward our calls to OpenGL.

@Evil-Spirit
Copy link
Collaborator

@whitequark, Yes if this will work in the right way, this would be great. If this firstly checks for native support of OpenGL > 1, and if it's not presented, uses ANGLE in DirectX mode.

@whitequark
Copy link
Contributor Author

@Evil-Spirit Yeah, that worked.

Fixed in e9b9dca.

@whitequark whitequark added this to the 3.0 milestone May 23, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants