Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for VK_EXT_extended_dynamic_state3 extension. #2066

Merged

Conversation

billhollings
Copy link
Contributor

@billhollings billhollings commented Nov 15, 2023

  • Move patch point tracking from pipeline state to render state, and remove MVKPipelineCommandEncoderState subclasses no longer needed.
  • Move sample location tracking from renderpass input to pipeline static or dynamic state tracking.
  • Restart Metal render pass when sample locations change, and enable VkPhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations.
  • Fix regression that broke VK_POLYGON_MODE_LINE (unrelated).
  • Fix regression in marking MVKRenderingCommandEncoderState dirty after vkCmdClearAttachments() (unrelated).

This PR includes fixes for issues #2056 and #2057.

Copy link
Collaborator

@cdavis5e cdavis5e left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor feedback, and one potential problem.

MoltenVK/MoltenVK/Commands/MVKCommandEncoderState.mm Outdated Show resolved Hide resolved
MoltenVK/MoltenVK/GPUObjects/MVKDevice.h Outdated Show resolved Hide resolved
MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm Outdated Show resolved Hide resolved
MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm Outdated Show resolved Hide resolved
MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm Show resolved Hide resolved
MoltenVK/MoltenVK/Utility/MVKFoundation.h Show resolved Hide resolved
- Move patch point tracking from pipeline state to render state, and
  remove MVKPipelineCommandEncoderState subclasses no longer needed.
- Move sample location tracking from renderpass input to pipeline
  static or dynamic state tracking.
- Restart Metal render pass when sample locations change, and enable
  VkPhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations.
- Fix regression that broke VK_POLYGON_MODE_LINE (unrelated).
- Fix regression in marking MVKRenderingCommandEncoderState
  dirty after vkCmdClearAttachments() (unrelated).
@billhollings billhollings force-pushed the EXT_extended_dynamic_state3 branch from e89adc7 to 13998af Compare November 17, 2023 03:04
@billhollings
Copy link
Contributor Author

Some minor feedback, and one potential problem.

Thanks for the feedback. Should be cleaned up now.

@billhollings billhollings merged commit a7dc8da into KhronosGroup:main Nov 17, 2023
5 checks passed
@billhollings billhollings deleted the EXT_extended_dynamic_state3 branch November 17, 2023 15:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants