vulkan
Safe HaskellNone
LanguageHaskell2010

Vulkan.Extensions.VK_KHR_line_rasterization

Description

Name

VK_KHR_line_rasterization - device extension

VK_KHR_line_rasterization

Name String
VK_KHR_line_rasterization
Extension Type
Device extension
Registered Extension Number
535
Revision
1
Ratification Status
Ratified
Extension and Version Dependencies
VK_KHR_get_physical_device_properties2 or Vulkan Version 1.1
Deprecation State
Contact

Other Extension Metadata

Last Modified Date
2023-06-08
IP Status
No known IP claims.
Contributors
  • Jeff Bolz, NVIDIA
  • Allen Jensen, NVIDIA
  • Faith Ekstrand, Intel

Description

This extension adds some line rasterization features that are commonly used in CAD applications and supported in other APIs like OpenGL. Bresenham-style line rasterization is supported, smooth rectangular lines (coverage to alpha) are supported, and stippled lines are supported for all three line rasterization modes.

New Commands

New Structures

New Enums

New Enum Constants

Promotion to Vulkan 1.4

Functionality in this extension is included in core Vulkan 1.4 with the KHR suffix omitted. The original type, enum, and command names are still available as aliases of the core functionality.

When Version 1.4 is supported, the bresenhamLines feature must be supported.

Issues

1) Do we need to support Bresenham-style and smooth lines with more than one rasterization sample? i.e. the equivalent of glDisable(GL_MULTISAMPLE) in OpenGL when the framebuffer has more than one sample?

RESOLVED: Yes. For simplicity, Bresenham line rasterization carries forward a few restrictions from OpenGL, such as not supporting per-sample shading, alpha to coverage, or alpha to one.

Version History

  • Revision 1, 2019-05-09 (Jeff Bolz)

    • Initial draft

See Also

No cross-references are available

Document Notes

For more information, see the Vulkan Specification.

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

Documentation

cmdSetLineStippleKHR :: MonadIO io => CommandBuffer -> ("lineStippleFactor" ::: Word32) -> ("lineStipplePattern" ::: Word16) -> io () Source #

type KHR_LINE_RASTERIZATION_EXTENSION_NAME = "VK_KHR_line_rasterization" Source #