Git Product home page Git Product logo

gpu-descriptor's Introduction

gpu-descriptor

crates docs actions MIT/Apache loc

Library for Vulkan-like APIs to allocated descriptor sets from descriptor pools fast, with least overhead and zero fragmentation.

Straightforward usage:

use gpu_descriptor::DescriptorAllocator;

let mut allocator = DescriptorAllocator::new(max_update_after_bind_descriptors_in_all_pools); // Limit as dictated by API for selected hardware

let result = allocator.allocate(
    device, // Implementation of `gpu_descriptor::DescriptorDevice`. Comes from plugins.
    layout, // Descriptor set layout recognized by device's type.
    flags,  // Flags specified when layout was created.
    layout_descriptor_count, // Descriptors count in the layout.
    count, // count of sets to allocated.
);

License

Licensed under either of

at your option.

Contributions

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Support me on Patreon

Support me on Patreon

gpu-descriptor's People

Contributors

catcode79 avatar dependabot[bot] avatar erichdongubler avatar hellbutcher avatar kvark avatar waywardmonkeys avatar xmac94x avatar zakarumych avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

gpu-descriptor's Issues

LICENSE files in package subdirs

Background:

Hello, the Fuchsia project vendors crates from crates.io, and in order to do so we require explicit license files alongside the source code. Here is the policy: https://fuchsia.dev/fuchsia-src/contribute/governance/policy/open-source-licensing-policies?hl=en#licenses_and_tracking . In particular, reading the SPDX package/license field from the crate's Cargo.toml is not good enough.

Request:

Could you please add LICENSE-* files to the package subdirectories, specifically gpu-descriptor (although you might as well do it for all package dirs that are uploaded to crates.io)?

We are currently using gpu-descriptor 0.2.2. Since crates.io doesn't allow re-uploading the same version with a modified crate, it seems the right thing to do is to upload a new crate with version 0.2.3.

I'd appreciate if you're able to do this, since I have to file similar issues for many other crate dependencies. But if you don't have the bandwidth to address this issue, please let me know and I'll find time to submit a pull request (although of course I won't be able to upload anything to crates.io)

Purpose of this crate?

Looking at the API, it has a notion of descriptor pools. Users are expected to create a descriptor pool with certain capacity, and then allocate/free descriptors from that pool. How does it help versus just using gfx-hal directly?
My expectation was that this crate would abstract away the management of descriptor pools , but it's not doing that. Compare to gfx-descriptor (and rendy-descriptor): https://docs.rs/gfx-descriptor/0.2.0/gfx_descriptor/struct.DescriptorAllocator.html

Release with new version of `hashbrown`

Would it be possible to cut a new release with #23? Trying to cut down on duplicate dependencies in upstream projects.

Apologies for creating an issue, wasn't sure how else to get into contact because of this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.