• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (c) 2022 The Khronos Group Inc.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5include::{generated}/meta/{refprefix}VK_EXT_legacy_dithering.adoc[]
6
7=== Other Extension Metadata
8
9*Last Modified Date*::
10    2022-03-31
11*Contributors*::
12  - Shahbaz Youssefi, Google
13  - Graeme Leese, Broadcom
14  - Jan-Harald Fredriksen, Arm
15
16=== Description
17
18This extension exposes a hardware feature used by some vendors to implement
19OpenGL's dithering.
20The purpose of this extension is to support layering OpenGL over Vulkan, by
21allowing the layer to take advantage of the same hardware feature and
22provide equivalent dithering to OpenGL applications.
23
24include::{generated}/interfaces/VK_EXT_legacy_dithering.adoc[]
25
26=== Version History
27
28  * Revision 1, 2022-03-31 (Shahbaz Youssefi)
29  ** Internal revisions
30
31=== Issues
32
331) In OpenGL, the dither state can change dynamically.
34Should this extension add a pipeline state for dither?
35
36*RESOLVED*: No.
37Changing dither state is rarely, if ever, done during rendering.
38Every surveyed Android application either entirely disables dither,
39explicitly enables it, or uses the default state (which is enabled).
40Additionally, on some hardware dither can only be specified in a render pass
41granularity, so a change in dither state would necessarily need to cause a
42render pass break.
43This extension considers dynamic changes in OpenGL dither state a
44theoretical situation, and expects the layer to break the render pass in
45such a situation without any practical downsides.
46