Instead of having the translator output code to transform gl_Position.z to Vulkan clip space in the vertex stage, this change makes the SPIR-V transformer perform this operation on the last geometry stage. An alternative solution would be to generate this transformation in the translator in every geometry stage, each controlled by a separate specialization constant. This change avoids unnecessary modifications to earlier stages. Additionally, the transformer is already modifying gl_Position.xy for pre-rotation, so the addition of a small transformation of gl_Position.z in the same spot is rather trivial. Bug: angleproject:5479 Change-Id: Id971179ba47b206204bfdaf3b2b295ef97dd5117 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2598585 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:Charlie Lao <cclao@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| doc | Loading commit data... | |
| file_hooking | Loading commit data... | |
| shaders | Loading commit data... | |
| BUILD.gn | Loading commit data... | |
| BufferMtl.h | Loading commit data... | |
| BufferMtl.mm | Loading commit data... | |
| CompilerMtl.h | Loading commit data... | |
| CompilerMtl.mm | Loading commit data... | |
| ContextMtl.h | Loading commit data... | |
| ContextMtl.mm | Loading commit data... | |
| DisplayMtl.h | Loading commit data... | |
| DisplayMtl.mm | Loading commit data... | |
| DisplayMtl_api.h | Loading commit data... | |
| FrameBufferMtl.h | Loading commit data... | |
| FrameBufferMtl.mm | Loading commit data... | |
| ProgramMtl.h | Loading commit data... | |
| ProgramMtl.mm | Loading commit data... | |
| QueryMtl.h | Loading commit data... | |
| QueryMtl.mm | Loading commit data... | |
| RenderBufferMtl.h | Loading commit data... | |
| RenderBufferMtl.mm | Loading commit data... | |
| RenderTargetMtl.h | Loading commit data... | |
| RenderTargetMtl.mm | Loading commit data... | |
| SamplerMtl.h | Loading commit data... | |
| SamplerMtl.mm | Loading commit data... | |
| ShaderMtl.h | Loading commit data... | |
| ShaderMtl.mm | Loading commit data... | |
| SurfaceMtl.h | Loading commit data... | |
| SurfaceMtl.mm | Loading commit data... | |
| SyncMtl.h | Loading commit data... | |
| SyncMtl.mm | Loading commit data... | |
| TextureMtl.h | Loading commit data... | |
| TextureMtl.mm | Loading commit data... | |
| TransformFeedbackMtl.h | Loading commit data... | |
| TransformFeedbackMtl.mm | Loading commit data... | |
| VertexArrayMtl.h | Loading commit data... | |
| VertexArrayMtl.mm | Loading commit data... | |
| gen_mtl_format_table.py | Loading commit data... | |
| mtl_buffer_pool.h | Loading commit data... | |
| mtl_buffer_pool.mm | Loading commit data... | |
| mtl_command_buffer.h | Loading commit data... | |
| mtl_command_buffer.mm | Loading commit data... | |
| mtl_common.h | Loading commit data... | |
| mtl_common.mm | Loading commit data... | |
| mtl_format_map.json | Loading commit data... | |
| mtl_format_table_autogen.mm | Loading commit data... | |
| mtl_format_utils.h | Loading commit data... | |
| mtl_format_utils.mm | Loading commit data... | |
| mtl_glslang_utils.h | Loading commit data... | |
| mtl_glslang_utils.mm | Loading commit data... | |
| mtl_occlusion_query_pool.h | Loading commit data... | |
| mtl_occlusion_query_pool.mm | Loading commit data... | |
| mtl_render_utils.h | Loading commit data... | |
| mtl_render_utils.mm | Loading commit data... | |
| mtl_resources.h | Loading commit data... | |
| mtl_resources.mm | Loading commit data... | |
| mtl_state_cache.h | Loading commit data... | |
| mtl_state_cache.mm | Loading commit data... | |
| mtl_utils.h | Loading commit data... | |
| mtl_utils.mm | Loading commit data... |