Skip to content

Can't run simple hello world wasm game #1907

@fatduckling

Description

@fatduckling

Godot version

v4.6.rc2.official [78c6632eb]

godot-cpp version

e3f229e

System information

Linux Mint LMDE 6

Issue description

Hi,
I created a simple Hello World game using Godot 4.6 rc2 and GDExtension.
The game runs perfectly on Linux, but when I export it to Web (Wasm) with GDExtension and Threads support, it fails to load with error:

Uncaught (in promise) TypeError: can't access property "sig", _emscripten_glGetVertexAttribIuiv is undefined
    Godot http://localhost/game/example.js:1
    Engine http://localhost/game/example.js:719
    promise callback*SafeEngine/init/doInit/Engine< http://localhost/game/example.js:717
    doInit http://localhost/game/example.js:716
    init http://localhost/game/example.js:733
    startGame http://localhost/game/example.js:828
    <anonymous> http://localhost/game/example.html:202
    <anonymous> http://localhost/game/example.html:216
[example.js:1:279258](http://localhost/game/example.js)

And on Chrome:

Uncaught (in promise) TypeError: Cannot set properties of undefined (setting 'sig')
    at example.js:1:279295
    at example.js:719:8

It seems to be coming from here:

Image

I'm using Apache2 Web Server with headers mod enabled and these headers:

<IfModule mod_headers.c>
    Header always set Cross-Origin-Opener-Policy "same-origin"
    Header always set Cross-Origin-Embedder-Policy "require-corp"
</IfModule>

I've attached a minimum reproducible example for you to test.

Thank you

Steps to reproduce

You can build the example code and export to Wasm

Minimal reproduction project

example.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions