-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update web demo exports for Godot 4.3 (#1127)
This comes with other improvements: - Demos now work on desktop and mobile browsers, as ETC2 import is now automatically enabled before exporting each demo. - Progressive web app is available for each project. - Can be added to the home screen on a device for a closer-to-native experience. - Cross-origin isolation headers are automatically added, so that the export works with threads enabled despite being hosted on GitHub Pages (which doesn't send these headers). Several demos will need further tweaks to look better when using the Compatibility rendering method. Currently, many 3D demos appear too bright due to lights with shadows enabled using sRGB blending. Also, many demos will need to be modified to indicate which parts of them are not supported when running on the web platform, or when using the Compatibility rendering method.
- Loading branch information
Showing
5 changed files
with
125 additions
and
60 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,23 +1,41 @@ | ||
[preset.0] | ||
|
||
name="HTML5" | ||
platform="HTML5" | ||
name="Web" | ||
platform="Web" | ||
runnable=true | ||
advanced_options=false | ||
dedicated_server=false | ||
custom_features="" | ||
export_filter="all_resources" | ||
include_filter="*.json" | ||
include_filter="" | ||
exclude_filter="" | ||
export_path="" | ||
script_export_mode=1 | ||
script_encryption_key="" | ||
encryption_include_filters="" | ||
encryption_exclude_filters="" | ||
encrypt_pck=false | ||
encrypt_directory=false | ||
script_export_mode=2 | ||
|
||
[preset.0.options] | ||
|
||
custom_template/debug="" | ||
custom_template/release="" | ||
variant/export_type=0 | ||
variant/extensions_support=false | ||
variant/thread_support=true | ||
vram_texture_compression/for_desktop=true | ||
vram_texture_compression/for_mobile=false | ||
vram_texture_compression/for_mobile=true | ||
html/export_icon=true | ||
html/custom_html_shell="" | ||
html/head_include="" | ||
html/full_window_size=true | ||
html/canvas_resize_policy=2 | ||
html/focus_canvas_on_start=true | ||
html/experimental_virtual_keyboard=true | ||
progressive_web_app/enabled=true | ||
progressive_web_app/ensure_cross_origin_isolation_headers=true | ||
progressive_web_app/offline_page="" | ||
progressive_web_app/display=0 | ||
progressive_web_app/orientation=1 | ||
progressive_web_app/icon_144x144="" | ||
progressive_web_app/icon_180x180="" | ||
progressive_web_app/icon_512x512="" | ||
progressive_web_app/background_color=Color(0, 0, 0, 1) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,37 @@ | ||
<!-- The list of demos will be inserted above by the CI process. --> | ||
</ul> | ||
<h2>Unavailable demos</h2> | ||
<ul> | ||
<li><code>2d/hdr/</code>: Not supported on HTML5 yet.</li> | ||
<li><code>3d/global_illumination/</code>: Not supported on HTML5 yet (freezes the browser).</li> | ||
<li><code>3d/voxel/</code>: Not supported on HTML5 yet.</li> | ||
<li><code>audio/device_changer/</code>: Not supported on HTML5 due to browser limitations.</li> | ||
<li><code>loading/background_load/</code>: Not supported on HTML5 yet.</li> | ||
<li><code>loading/multiple_threads_loading/</code>: Not supported on HTML5 yet.</li> | ||
<li><code>loading/threads/</code>: Not supported on HTML5 yet.</li> | ||
<li><code>misc/matrix_transform/</code>: Results are only visible in the editor.</li> | ||
<li><code>mobile/android_iap/</code>: Only relevant on native Android.</li> | ||
<li><code>mobile/sensors/</code>: Not supported on HTML5 yet.</li> | ||
<li><code>mono/*/</code>: Not available yet (requires Mono-enabled HTML5 build).</li> | ||
<li><code>networking/*/</code>: Doesn't make sense to be hosted on a static host, as the server must be hosted on the same origin due to the browser's same-origin policy.</li> | ||
<li><code>plugins/*/</code>: Only effective within the editor.</li> | ||
<ul class="unsupported-demos"> | ||
<li><code>2d/glow</code>: Not supported on the Compatibility rendering method (which the web platform always uses).</li> | ||
<li><code>2d/navigation_mesh_chunks</code>: Relies on debug-only drawing functionality which is not available in projects exported in release mode.</li> | ||
<li><code>2d/physics_tests</code>: Relies on debug-only drawing functionality which is not available in projects exported in release mode.</li> | ||
<li><code>3d/labels_and_texts</code>: Does not export in headless mode due to an engine bug (font importing infinite loop).</li> | ||
<li><code>3d/decals</code>: Not supported on the Compatibility rendering method (which the web platform always uses).</li> | ||
<li><code>3d/ik</code>: Demo is not fully ported to Godot 4 yet (even though the feature works on the web).</li> | ||
<li><code>3d/navigation_mesh_chunks</code>: Relies on debug-only drawing functionality which is not available in projects exported in release mode.</li> | ||
<li><code>3d/occlusion_culling_mesh_lod</code>: Occlusion culling is disabled by default in web builds to decrease binary size.</li> | ||
<li><code>3d/particles</code>: Demo mostly showcases features that are not available in Compatibility (which the web platform always uses).</li> | ||
<li><code>3d/physical_light_camera_units</code>: Demo is not tuned for the Compatibility rendering method (which the web platform always uses).</li> | ||
<li><code>3d/physics_tests</code>: Relies on debug-only drawing functionality which is not available in projects exported in release mode.</li> | ||
<li><code>3d/variable_rate_shading</code>: Not supported on the Compatibility rendering method (which the web platform always uses)</li> | ||
<li><code>3d/volumetric_fog</code>: Not supported on the Compatibility rendering method (which the web platform always uses)</li> | ||
<li><code>3d/voxel</code>: Freezes after a few seconds of gameplay due to web platform-specific threading issues.</li> | ||
<li><code>audio/bpm_sync</code>: Not functional on the web platform due to differences in the audio playback implementation.</li> | ||
<li><code>audio/device_changer</code>: Not relevant for the web platform, as the web browser always chooses the audio output device.</li> | ||
<li><code>audio/midi_piano</code>: Not functional on the web platform due to differences in the audio playback implementation.</li> | ||
<li><code>audio/spectrum</code>: Not functional on the web platform due to differences in the audio playback implementation.</li> | ||
<li><code>compute/*</code>: Not supported on the Compatibility rendering method (which the web platform always uses).</li> | ||
<li><code>gui/msdf_font</code>: Does not export in headless mode due to an engine bug (font importing crashes).</li> | ||
<li><code>gui/translation</code>: Does not export in headless mode due to an engine bug (font importing crashes).</li> | ||
<li><code>loading/runtime_save_load</code>: Native filesystem access is not available on the web platform.</li> | ||
<li><code>misc/compute_shader_heightmap</code>: Not supported on the Compatibility rendering method (which the web platform always uses).</li> | ||
<li><code>misc/large_world_coordinates</code>: Not supported on the Compatibility rendering method (which the web platform always uses).</li> | ||
<li><code>misc/matrix_transform</code>: Results are only visible in the editor.</li> | ||
<li><code>mobile/android_iap</code>: Only relevant on native Android.</li> | ||
<li><code>mobile/sensors</code>: Not supported on the web platform.</li> | ||
<li><code>mono/*</code>: Not available yet (requires Mono-enabled HTML5 build).</li> | ||
<li><code>networking/*</code>: Doesn't make sense to be hosted on a static host, as the server must be hosted on the same origin due to the browser's same-origin policy.</li> | ||
<li><code>plugins/*</code>: Only effective within the editor.</li> | ||
</ul> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters