VK_EXT_line_rasterization(3)

# VK_EXT_line_rasterization(3) Manual Page

## Name

VK_EXT_line_rasterization - device extension

Loading… please wait.

## Registered Extension Number

260

## Revision

1

## Extension and Version Dependencies

- Requires Vulkan 1.0

- Requires `VK_KHR_get_physical_device_properties2`

## Special Use

- CAD support

### Other Extension Metadata

Last Modified Date

  2019-05-09

IP Status

  No known IP claims.

Contributors

  - Jeff Bolz, NVIDIA

  - Allen Jensen, NVIDIA

  - Jason 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

- vkCmdSetLineStippleEXT

### New Structures

- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:

  - VkPhysicalDeviceLineRasterizationFeaturesEXT

- Extending VkPhysicalDeviceProperties2:

  - VkPhysicalDeviceLineRasterizationPropertiesEXT

- Extending VkPipelineRasterizationStateCreateInfo:

  - VkPipelineRasterizationLineStateCreateInfoEXT

### New Enums

- VkLineRasterizationModeEXT

### New Enum Constants

- `VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME`

- `VK_EXT_LINE_RASTERIZATION_SPEC_VERSION`

- Extending VkDynamicState:

  - `VK_DYNAMIC_STATE_LINE_STIPPLE_EXT`

- Extending VkStructureType:

  - `VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT`

  - `VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT`

  - `VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT`

### 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

VkLineRasterizationModeEXT, VkPhysicalDeviceLineRasterizationFeaturesEXT, VkPhysicalDeviceLineRasterizationPropertiesEXT, VkPipelineRasterizationLineStateCreateInfoEXT, vkCmdSetLineStippleEXT

## 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.

## Copyright

Copyright 2014-2021 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0