gfx-rs / wgpu

A cross-platform, safe, pure-Rust graphics API.
https://wgpu.rs
Apache License 2.0
12.07k stars 874 forks source link

Tessellation Shaders #222

Open kvark opened 5 years ago

kvark commented 5 years ago

Tessellation is unlikely to come to WebGPU the API any time soon, but we could have a cargo feature enabling it in some shape (obviously, not portable to the Web). I think it would be useful to some of interested parties to tessellate with the ease of our API ;) Perhaps, in the longer term, our experiments would help the working group to define a proper extension API.

lachlansneff commented 4 years ago

Tessellation support would be really useful for me.

pythonesque commented 4 years ago

Is there any way we could test whether tessellation would be useful for a project written using wgpu-rs, without actually adding the feature to the project? It seems like something that might be useful for Veloren, but it's hard to know for sure without trying it; if it was useful for us I'd be interested in helping adding a cargo feature for it.

kvark commented 4 years ago

@pythonesque since Veloren is currently on gfx pre-ll, you can try the tessellation there and see if it's useful.

profande commented 1 year ago

Since this issue was made 3 years ago, I feel the need to ask: Would this still be a Cargo feature or would it be introduced as a native extension?

cwfitzgerald commented 1 year ago

Native extension

whizsid commented 1 year ago

Can't we do the tessellation using the compute shaders in webGPU like mentioned in this paper:- https://onrendering.com/data/papers/isubd/isubd.pdf

kohakukun commented 10 months ago

Hey folks, is there any development in this issue? It would be very useful for our project too.

grovesNL commented 10 months ago

@kohakukun Not yet, but there has been some effort into exposing more backend-specific APIs (e.g., using Vulkan resources directly), so in the meantime that might be a good path to experimenting with tessellation shaders to see if they would be helpful for your project.

kohakukun commented 10 months ago

Can you provide some example on how those lower APIs are accessed?

grovesNL commented 10 months ago

Generally you use functions like as_hal that are available natively. #4067 discusses how this API might evolve eventually and some details about how you can use those functions today.