Commit 2553690d by Shahbaz Youssefi Committed by Commit Bot

Documentation update

Mostly mentioning other platforms where older documentation mentioned only Windows. Bug: angleproject:1944 Change-Id: Ib020892fbdee22d3dc60aa71ac6b3c5f504728c4 Reviewed-on: https://chromium-review.googlesource.com/c/1430559Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
parent 5313c8a8
# See https://chromium.googlesource.com/angle/angle/+/master/doc/ContributingCode.md#selecting-reviewers for per-file owners # See https://chromium.googlesource.com/angle/angle/+/master/doc/ContributingCode.md#selecting-reviewers for per-file owners
cwallez@chromium.org cwallez@chromium.org
fjhenigman@chromium.org
geofflang@chromium.org geofflang@chromium.org
jmadill@chromium.org jmadill@chromium.org
syoussefi@chromium.org
ynovikov@chromium.org ynovikov@chromium.org
# ANGLE Development # ANGLE Development
ANGLE provides OpenGL ES 2.0 and EGL 1.4 libraries and dlls. You can use these to build and run OpenGL ES 2.0 applications on Windows. ANGLE provides OpenGL ES 2.0 and EGL 1.4 libraries and dlls. You can use these to build and run OpenGL ES 2.0 applications on Windows, Linux, Mac and Android.
## Development setup ## Development setup
...@@ -30,7 +30,7 @@ On Windows: ...@@ -30,7 +30,7 @@ On Windows:
On Linux: On Linux:
* Development packages for OpenGL, X11 and libpci (all of these dependencies should be installed automatically when running install-build-deps.sh later on). * Development packages for OpenGL, X11 and libpci (all of these dependencies should be installed automatically when running `install-build-deps.sh` later on).
* Bison and flex are not needed as we only support generating the translator grammar on Windows. * Bison and flex are not needed as we only support generating the translator grammar on Windows.
On MacOS: On MacOS:
...@@ -134,12 +134,13 @@ Also, follow [How to build ANGLE in Chromium for dev](BuildingAngleForChromiumDe ...@@ -134,12 +134,13 @@ Also, follow [How to build ANGLE in Chromium for dev](BuildingAngleForChromiumDe
## Application Development with ANGLE ## Application Development with ANGLE
This sections describes how to use ANGLE to build an OpenGL ES application. This sections describes how to use ANGLE to build an OpenGL ES application.
### Choosing a D3D Backend ### Choosing a Backend
ANGLE can use either a backing renderer which uses D3D11 on systems where it is available, or a D3D9-only renderer. ANGLE can use a variety of backing renderers based on platform. On Windows, it defaults to D3D11 where it's available,
or D3D9 otherwise. On other desktop platforms, it defaults to GL. On mobile, it defaults to GLES.
ANGLE provides an EGL extension called `EGL_ANGLE_platform_angle` which allows uers to select which renderer to use at EGL initialization time by calling eglGetPlatformDisplayEXT with special enums. Details of the extension can be found in it's specification in `extensions/ANGLE_platform_angle.txt` and `extensions/ANGLE_platform_angle_d3d.txt` and examples of it's use can be seen in the ANGLE samples and tests, particularly `util/EGLWindow.cpp`. ANGLE provides an EGL extension called `EGL_ANGLE_platform_angle` which allows uers to select which renderer to use at EGL initialization time by calling eglGetPlatformDisplayEXT with special enums. Details of the extension can be found in it's specification in `extensions/ANGLE_platform_angle.txt` and `extensions/ANGLE_platform_angle_*.txt` and examples of it's use can be seen in the ANGLE samples and tests, particularly `util/EGLWindow.cpp`.
By default, ANGLE will use a D3D11 renderer. To change the default: To change the default D3D backend:
1. Open `src/libANGLE/renderer/d3d/DisplayD3D.cpp` 1. Open `src/libANGLE/renderer/d3d/DisplayD3D.cpp`
2. Locate the definition of `ANGLE_DEFAULT_D3D11` near the head of the file, and set it to your preference. 2. Locate the definition of `ANGLE_DEFAULT_D3D11` near the head of the file, and set it to your preference.
......
# M(ulti-platform)ANGLE effort # M(ulti-platform)ANGLE effort
Starting in early 2014, the ANGLE team has begun work on refactoring the code Starting in early 2014, the ANGLE team has begun work on refactoring the code
with the goal of supporting translation to desktop OpenGL. The new purpose of with the goal of supporting translation to desktop OpenGL. In 2016, work on
ANGLE will be provide a consistent OpenGL ES and EGL context on as many supporting Vulkan as a back-end started. The new purpose of ANGLE is to
platforms as possible. provide a consistent OpenGL ES and EGL context on as many platforms as possible.
The design doc is available [here] The design doc is available [here]
(https://docs.google.com/document/d/17mxRfzXuEWyvGM3t2KqVY4svvfRj_GzysOEpmnDpqeo/edit?usp=sharing). (https://docs.google.com/document/d/17mxRfzXuEWyvGM3t2KqVY4svvfRj_GzysOEpmnDpqeo/edit?usp=sharing).
...@@ -36,10 +36,10 @@ If you're running a full test suite, it might take very long time. Running in ...@@ -36,10 +36,10 @@ If you're running a full test suite, it might take very long time. Running in
Debug is only useful to isolate and fix particular failures, Release will give Debug is only useful to isolate and fix particular failures, Release will give
a better sense of total passing rate. a better sense of total passing rate.
### Choosing a Renderer on Windows ### Choosing a Renderer
By default Windows ANGLE tests with D3D11. To specify the exact platform for By default ANGLE tests with D3D11 on Windows, GLES on mobile and Desktop GL otherwise.
ANGLE + dEQP, use the arguments: To specify the exact platform for ANGLE + dEQP, use the arguments:
* `--deqp-egl-display-type=angle-d3d11` for D3D11 (highest available feature level) * `--deqp-egl-display-type=angle-d3d11` for D3D11 (highest available feature level)
* `--deqp-egl-display-type=angle-d3d9` for D3D9 * `--deqp-egl-display-type=angle-d3d9` for D3D9
...@@ -48,6 +48,8 @@ ANGLE + dEQP, use the arguments: ...@@ -48,6 +48,8 @@ ANGLE + dEQP, use the arguments:
* `--deqp-egl-display-type=angle-gles` for OpenGL ES (Android/ChromeOS, some Windows platforms) * `--deqp-egl-display-type=angle-gles` for OpenGL ES (Android/ChromeOS, some Windows platforms)
* `--deqp-egl-display-type=angle-vulkan` for Vulkan (Android, Linux, Windows) * `--deqp-egl-display-type=angle-vulkan` for Vulkan (Android, Linux, Windows)
The flag `--use-angle=X` has the same effect as `--deqp-egl-display-type=angle-X`.
### Check your results ### Check your results
If run from Visual Studio 2015, dEQP generates a test log to If run from Visual Studio 2015, dEQP generates a test log to
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment