naia-lib / naia

a cross-platform (including Wasm!) networking library built in Rust. Intended to make multiplayer game development dead-simple & lightning-fast
Apache License 2.0
911 stars 58 forks source link

Add WebTransport support #158

Open connorcarpenter opened 1 year ago

connorcarpenter commented 1 year ago

It's finally here ... I've been waiting for this for 4 years now. :tada:

Some real heroes doing God's work here: wasm-bindgen implementation - https://github.com/rustwasm/wasm-bindgen/pull/3344 native Rust implementation - https://github.com/hyperium/h3/pull/183

Once these stabilize, it shouldn't be too hard to wrap them up in naia types to use as the transport layer, behind a .. transport_webtransport feature flag?

ten3roberts commented 1 year ago

Hey there. Letting you know about the state of webtransport.

The webtransport feature has since been merged into h3, however the maintainers of the crate have not yet published it to crates.io and seem slightly reluctant to add new breaking things.

@darioalessandro and I have forked h3 to https://github.com/security-union/sec-http3 which will experience more feature progress regarding webtransport, as well as being published and usable on crates.io.

If you find that webtransport is still a good candidate for naia feel free to make use of it and suggest any changes or PRs you need to make full use of webtransport. We are happy to help

connorcarpenter commented 1 year ago

So awesome! Thank you for the heads up @ten3roberts ! Yes, knowing about the fork really helps out there! I am sure I will get some progress on this within the next month or so :) Great work!