Re-enable building WebXR in GitHub Actions
This commit is contained in:
parent
6263f58d69
commit
3963a11b2f
3 changed files with 19 additions and 1 deletions
2
.github/workflows/javascript_builds.yml
vendored
2
.github/workflows/javascript_builds.yml
vendored
|
@ -4,7 +4,7 @@ on: [push, pull_request]
|
||||||
# Global Settings
|
# Global Settings
|
||||||
env:
|
env:
|
||||||
GODOT_BASE_BRANCH: master
|
GODOT_BASE_BRANCH: master
|
||||||
SCONSFLAGS: platform=javascript verbose=yes warnings=extra debug_symbols=no module_webxr_enabled=no --jobs=2
|
SCONSFLAGS: platform=javascript verbose=yes warnings=extra debug_symbols=no --jobs=2
|
||||||
SCONS_CACHE_LIMIT: 4096
|
SCONS_CACHE_LIMIT: 4096
|
||||||
EM_VERSION: 2.0.25
|
EM_VERSION: 2.0.25
|
||||||
EM_CACHE_FOLDER: 'emsdk-cache'
|
EM_CACHE_FOLDER: 'emsdk-cache'
|
||||||
|
|
|
@ -35,6 +35,7 @@
|
||||||
#include "core/os/os.h"
|
#include "core/os/os.h"
|
||||||
#include "emscripten.h"
|
#include "emscripten.h"
|
||||||
#include "godot_webxr.h"
|
#include "godot_webxr.h"
|
||||||
|
#include "servers/rendering/renderer_compositor.h"
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
void _emwebxr_on_session_supported(char *p_session_mode, int p_supported) {
|
void _emwebxr_on_session_supported(char *p_session_mode, int p_supported) {
|
||||||
|
@ -376,6 +377,22 @@ void WebXRInterfaceJS::commit_for_eye(XRInterface::Eyes p_eye, RID p_render_targ
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
godot_webxr_commit_for_eye(p_eye);
|
godot_webxr_commit_for_eye(p_eye);
|
||||||
|
}
|
||||||
|
|
||||||
|
Vector<BlitToScreen> WebXRInterfaceJS::commit_views(RID p_render_target, const Rect2 &p_screen_rect) {
|
||||||
|
Vector<BlitToScreen> blit_to_screen;
|
||||||
|
|
||||||
|
if (!initialized) {
|
||||||
|
return blit_to_screen;
|
||||||
|
}
|
||||||
|
|
||||||
|
// @todo Refactor this to be based on "views" rather than "eyes".
|
||||||
|
godot_webxr_commit_for_eye(XRInterface::EYE_LEFT);
|
||||||
|
if (godot_webxr_get_view_count() > 1) {
|
||||||
|
godot_webxr_commit_for_eye(XRInterface::EYE_RIGHT);
|
||||||
|
}
|
||||||
|
|
||||||
|
return blit_to_screen;
|
||||||
};
|
};
|
||||||
|
|
||||||
void WebXRInterfaceJS::process() {
|
void WebXRInterfaceJS::process() {
|
||||||
|
|
|
@ -89,6 +89,7 @@ public:
|
||||||
virtual CameraMatrix get_projection_for_view(uint32_t p_view, real_t p_aspect, real_t p_z_near, real_t p_z_far) override;
|
virtual CameraMatrix get_projection_for_view(uint32_t p_view, real_t p_aspect, real_t p_z_near, real_t p_z_far) override;
|
||||||
virtual unsigned int get_external_texture_for_eye(XRInterface::Eyes p_eye) override;
|
virtual unsigned int get_external_texture_for_eye(XRInterface::Eyes p_eye) override;
|
||||||
virtual void commit_for_eye(XRInterface::Eyes p_eye, RID p_render_target, const Rect2 &p_screen_rect) override;
|
virtual void commit_for_eye(XRInterface::Eyes p_eye, RID p_render_target, const Rect2 &p_screen_rect) override;
|
||||||
|
virtual Vector<BlitToScreen> commit_views(RID p_render_target, const Rect2 &p_screen_rect) override;
|
||||||
|
|
||||||
virtual void process() override;
|
virtual void process() override;
|
||||||
virtual void notification(int p_what) override;
|
virtual void notification(int p_what) override;
|
||||||
|
|
Loading…
Reference in a new issue