Skip to content

Conversation

@JuanDiegoMontoya
Copy link

@JuanDiegoMontoya JuanDiegoMontoya commented May 6, 2024

  • Fix spacing when emitting uniform constants.
  • Remove initializers for more address spaces where they're illegal.
  • Emit layout(binding = n) for storage and uniform blocks with descriptor binding annotation.
  • Emit layout(location = n) for uniform constants, input variables, and output variables with location annotation.
  • Detect feature usage and emit the appropriate #version directive (e.g. using an SSBO will require at least version 430).
  • UBO support
    • Fixed-length array of native types
    • Fixed-length array of user-defined type (use extern to declare these)
  • SSBO support
    • Fixed-length array of native type
    • Fixed-length array of user-defined type
    • SSBO with only a flexible array member
    • SSBO with one or more fixed-size members and one flexible array member
      • I don't know how this should look, syntactically. Maybe a struct with a flexible array member at the end? That syntax is legal in C and would closely match existing GLSL syntax. Otherwise, maybe a struct with a pointer member at the end. This could also just be dropped.

Expanded support for samplers and images are left for a future PR.

@JuanDiegoMontoya JuanDiegoMontoya changed the title Fixed prefix for AsUniformConstant when emitting GLSL vcc glsl backend upgrades May 7, 2024
@JuanDiegoMontoya
Copy link
Author

Can we get this downgraded to a draft PR? I don't have permission to change it.

@Hugobros3 Hugobros3 marked this pull request as draft May 7, 2024 05:48
@Hugobros3
Copy link
Collaborator

Could I interest you in picking this back up, perhaps adding some extra testing infrastructure so that we can guard against future regression ?

@JuanDiegoMontoya
Copy link
Author

I'll see if I can take a look at re-syncing with main later this week.

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