|
8a0351a5
|
2022-05-26T14:29:21
|
|
Metal:Dynamically choose max draw buffers.
The code was hard coded to 4 which is lower than OpenGL's 8.
This implementation keeps a hard coded array of size 8 in
rx::mtl::RenderPassDesc and rx::mtl::RenderPipelineOutputDesc
but only uses up to the display's limit.
Bug: angleproject:7280
Bug: angleproject:5730
Change-Id: Idd7e64dc47697882b44540804159566158e1e924
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3671695
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
5b7c5b34
|
2020-10-18T17:19:51
|
|
Metal: don't precompile default shaders.
Default shaders will be compiled from source at runtime, this is because
they depend on ANGLE format table and there is currently no way to
pre-compile metal shaders in a cross-platform manner.
Using default shaders' source instead of pre-compiled form seems to
reduce the libGLESv2's binary size. However, the startup time will be
increased due to runtime cost of compilation, thus the compilation now
will be done asynchronously.
Bug: angleproject:5186
Change-Id: I0e1987d6c76692d5169255736fbb8e215185c33b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482405
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
|
|
63c91a3b
|
2020-08-04T20:09:05
|
|
Metal: autogen for PBO related shaders.
Bug: angleproject:2634
Change-Id: I36e5a6a4cb11d82f666c410b33fdb39ad35a5e80
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2336557
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
7ce9947d
|
2020-08-04T12:08:00
|
|
Metal: autogen for 3D texture's mipmap generating shader.
Bug: angleproject:4921
Bug: angleproject:2634
Change-Id: I5c379d750114e2ca1c5dd0203e94bb63dac1e0bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2336125
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
defeda29
|
2020-08-04T12:08:00
|
|
Metal: autogen for EXT_draw_buffers & ANGLE_framebuffer_blit
Bug: angleproject:2634
Change-Id: I8f8ee91fb673301b8bd97c359ee39c411e2bf8da
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2336124
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
3e0b61a9
|
2020-07-06T01:18:22
|
|
Metal: Compile default shader source files separately.
- Previously all default shader files were included in one file named
master_source.metal.
- Now they will be compiled separately and link together to generate
binary shader.
- Also generate a debug binary variant that will be used in debug build.
Bug: angleproject:2634
Change-Id: Ic040835c4a729666e73afeba52f5be839b632396
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2281784
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9277ee74
|
2020-07-06T12:40:58
|
|
Metal: Implement MSAA default framebuffer.
GL_SAMPLE_COVERAGE_VALUE is implemented by inserting gl_SampleMask
writing logic to fragment shader.
New test added: MultisampleTest.ContentPresevedAfterInterruption.
- Skip on D3D11 (Bug: angleproject:4609)
Bug: angleproject:2634
Change-Id: Ib44daf0baccc36ea320596d81713156047da059c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2281783
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c0c938af
|
2020-05-11T00:50:00
|
|
Metal: draw 1 triangle instead of 2 for fullscreen shaders.
Reference article in favour of one big triangle instead of 2:
https://michaldrobot.com/2014/04/01/gcn-execution-patterns-in-full-screen-passes/
According to this article, the performance could be increased by ~10% for fullscreen shaders.
Bug: angleproject:2634
Change-Id: Ia5b04c40f0587e3cb8680c0f30f7b68d9d7a3efe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2193192
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
fe26bae4
|
2019-10-29T18:38:53
|
|
Metal backend implementation pt 2
This is without Metal specific shader translator implemented yet.
Bug: angleproject:2634
Change-Id: I95d589442251c9ba111bd05a2dc379a36739046c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1855069
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
25301999
|
2019-10-11T14:49:00
|
|
Metal implementation pt 1: autogen resources
Autogen format table and internal shaders for Metal.
Bug: angleproject:2634
Change-Id: I4d81fcd17a0e9959ba9c38a250acc7abb168f54c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1855067
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|