Skip to content

[Rendering] Adds support for DrawAuto and DrawIndirect to MeshDraw#1482

Draft
tebjan wants to merge 2 commits into
stride3d:master-4.0from
vvvv:dev/tebjan/meshdraw-improvements-4.0
Draft

[Rendering] Adds support for DrawAuto and DrawIndirect to MeshDraw#1482
tebjan wants to merge 2 commits into
stride3d:master-4.0from
vvvv:dev/tebjan/meshdraw-improvements-4.0

Conversation

@tebjan

@tebjan tebjan commented Jul 26, 2022

Copy link
Copy Markdown
Member

PR Details

Adds a DrawAuto flag and ArgumentBufferBinding to MeshDraw.

Description

The new arguments will be read by the MeshRenderFeature to select the right draw call method.

Related Issue

Fixes #1481

Motivation and Context

Generate geometry on the GPU.

Types of changes

  • Docs change / refactoring / dependency upgrade
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • My change requires a change to the documentation.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@tebjan tebjan added enhancement New feature or request area-Graphics labels Jul 26, 2022
@tebjan
tebjan marked this pull request as draft July 26, 2022 14:53
@johang88

Copy link
Copy Markdown
Contributor

Feels like it could be ignored by serialization as it's runtime only? Perhaps DrawIndirect instead of DrawAuto?

@tebjan tebjan changed the title [Rendering] Adds support for DrawAuto and ArgumentBuffer to MeshDraw [Rendering] Adds support for DrawAuto and DrawIndirect to MeshDraw Jul 27, 2022
@tebjan

tebjan commented Jul 27, 2022

Copy link
Copy Markdown
Member Author

Feels like it could be ignored by serialization as it's runtime only?

You are right, it is a runtime technique. So then it needs the [DataMemberIgnore] attribute, is that correct?

Perhaps DrawIndirect instead of DrawAuto?

Yes, sorry didn't specify that correctly. The way I thought about it is that DrawAuto uses a vertex buffer from the stream out stage of another shader and with ArgumentBuffer I meant DrawIndirect, which takes the draw args like vertex count, instance count, and vertex buffer offsets as a buffer. I've corrected the title.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-Graphics enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants