Comments (14)
You're probably right! I feel like browser UDP is close but not quite there at this second, interested to see how it could be pushed along. I often hear the argument against webRTC being 'its complicated' but if the alternative is nothing I don't see a sensible way round it. Hence why your project is interesting, implementing some like this in the browser might be tricky but would be widely appreciated. Will keep you posted
from netcode.
Looks like this issue is solved: https://github.com/RedpointGames/netcode.io-browser
from netcode.
Nice 👍
from netcode.
I'm afraid we're going to have to convince browser manufacturers to allow this spec to be implemented in-browser, as browsers do not allow sending and receiving of UDP packets directly, which would be required to implement this in a browser.
I'm working on it.
from netcode.
My advice is to focus on Mozilla and Brave browsers first.
from netcode.
Thanks for the swift reply, interestingly I did see this:
https://developer.chrome.com/apps/sockets_udp
But chrome only of course.
from netcode.
You could of course prototype with that, but I don't think JavaScript in a web browser is allowed to call it, only plug-ins.
from netcode.
Agreed. Thanks for your help!
from netcode.
ps. There is already an early set of C# bindings here: https://github.com/RedpointGames/netcode.io, but I think they are a bit out of date relative to the current C implementation in this repository. -- cheers
from netcode.
If you want UDP for the browser using js:
https://nodejs.org/api/dgram.html
https://github.com/alexstrat/simudp
from netcode.
I like the proxy idea for a proof of concept, but moving it beyond that, we'd want to be able to run with zero cost install on all browser platforms, eg. get the browsers updated to support netcode.io
from netcode.
Should be able to expose to javascript via:
npm package -> node/Electron which gives access to desktop install, and Steam via greenworks; may give angle for Brave
C# client lib (max .NET Standard 1.4) -> UWP (HTML+JS) which gives access to Win10 + XBox
At which point it would be running in Chrome (Electron) and Edge (UWP); though not the actual browsers themselves - but it gives a concrete use/example via the browser engines; as well as several gaming platforms.
from netcode.
Additionally may be able to add chrome extension; using sockets_udp; then do support detection; so a game could do multipath networking io based on whether is available; or gate on extension (though poor for game adoption)
from netcode.
Sounds pretty good. Prove it out first, the rest will follow.
from netcode.
Related Issues (20)
- Why is the browser plugin archived? HOT 2
- [Question] Connect Token private part HOT 1
- [Question] Is it possible to handle direct IP connections without a matchmaker service? HOT 1
- Assert on NULL user_data in netcode_generate_connect_token() HOT 1
- Up-to-date rust implementation of netcode HOT 1
- Windows: Connecting to server is delayed if some previous clients do not shutdown by the right way HOT 25
- Wait upon certain time for incoming packets HOT 1
- Embed the `client index` to `connection payload packet` and `connection disconnect packet` HOT 5
- MinGW build issues HOT 10
- WebTransport HOT 1
- No wraparound logic on replay protection sequence number comparisons HOT 2
- Need help debugging why CI is broken HOT 2
- netcode.io support x32? HOT 1
- Settings #define's HOT 14
- MinGW linker error introduced in #66 HOT 1
- Fiy, found Socketify https://socketify.net/
- Switching between carrier and wifi when a connection has been established HOT 2
- netcode.io connect tokens fail when letting the system assign a server port. HOT 2
- Reporting security vulnerabilities HOT 1
- Single project c file HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from netcode.