-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add web export #58
base: main
Are you sure you want to change the base?
Add web export #58
Conversation
Nevermind, I got images working! So, this is only DRAFT until PR #37 is reviewed and merged |
That's really cool that this is possible! Thanks so much for getting this working!!
|
Cool, thanks, let me know if you encounter any issues!
Yes, there's still issues on Safari.
Doing the web requests without threading should be easy on the web, because Godot just hands the request off to the browser which does its own threading, and gives us the result when it's done. But, yeah, loading the image data and generating mipmaps would be challenging to do smoothly without threads - we'd have to make a queue where we do just a little bit every frame, or something like that. I probably won't have time to mess with it for at least a week, but I may experiment with it later - it's an interesting problem :-)
On the web, Godot (via Emscripten) uses a fake file system on top of IndexDB - it works pretty transparently. And like I mentioned above, the network calls get handed off to the browser - they're done like normal AJAX requests from JavaScript. |
that's an awesome feature!! still probably worth removing the caching behavior for the web version though as the browser can manage its own cache for the images and articles pulled also "data" settings can be disabled in the web version |
Good point! When I can come back to this, I'll try disabling those things. (I'm doing a game jam for the next 7 days, so I won't have too much time until after) |
Marking as a DRAFT because this builds on the changes from PR #37 which should probably get reviewed and merged first.
Web can only use the Compatibility renderer, which is why it depends on PR #37, in order to take advantage of the light management.
Some notes:
&origin=*
to all the requests to the Wikipedia..web
feature tag, like all the overrides I did on Add support for the Meta Quest #37, so I had to completely disable it for all platforms. :-( Is this setting important for other platforms? Personally, I've never had good luck with running either physics or rendering on a separate thread - that's always caused weird problems for meAnyway, it does work in my testing!
And if we can get the web working, we can also try to see if WebXR will work, which would be another way to distribute the VR version ;-)