Gfx: Consider removing typed command buffers, pools and queues

Created on 24 Jun 2019  路  5Comments  路  Source: gfx-rs/gfx

Anything on top of "raw" command types is not used by any backends, it's only for the user, and it doesn't help most important users either (rendy and wgpu-rs can't use those). So we should probably just remove those layers in favor of something like https://crates.io/crates/rendy-command
cc @omni-viral

contributor-friendly average user ready for work api discussion high

Most helpful comment

Here are the steps for accomplishing the task:

  1. Get familiar with how the subject types in gfx-hal are represented by raw and typed layers:
  2. Evaluate, to what extent is this functionality intersecting with rendy-command
  3. Communicate back to us, make a more detailed proposal of removing the redundancy
  4. Remove the respective types from gfx-hal
  5. Rename the remaining raw types to drop the "Raw" prefix
  6. Get huge thanks and kudos from the community :)

All 5 comments

I can't neither support nor discourage this proposition.
For someone those wrappers could be good enough. And I don't think they add much maintenance cost.

... IIRC, there was UB somewhere.

They have been actually requiring quite a bit of maintenance as we were reworking the raw model... Even today, I think compiler complains about some of the things we do in that typed layer and claims it to be deprecated, so there might be a point where it just stops to compile.

Here are the steps for accomplishing the task:

  1. Get familiar with how the subject types in gfx-hal are represented by raw and typed layers:
  2. Evaluate, to what extent is this functionality intersecting with rendy-command
  3. Communicate back to us, make a more detailed proposal of removing the redundancy
  4. Remove the respective types from gfx-hal
  5. Rename the remaining raw types to drop the "Raw" prefix
  6. Get huge thanks and kudos from the community :)

@kvark it looks like we can transit to the raw types without any problem ( https://github.com/szeged/webrender/pull/301 ), so we can give the green light for this change.

It's still a big API change. Let's not rush it for hal-0.3 and instead let it bake in master before hal-0.4 is out.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

kvark picture kvark  路  3Comments

seivan picture seivan  路  4Comments

kvark picture kvark  路  4Comments

kvark picture kvark  路  3Comments

clevijoki picture clevijoki  路  3Comments