godotengine / tps-demo

Godot Third Person Shooter with high quality assets and lighting
Other
955 stars 166 forks source link

Add github actions to export downloadable builds. #167

Closed fire closed 7 months ago

fire commented 1 year ago
  1. Add export presets.
  2. Builds Godot Engine stable in Github Actions.
  3. Remove the panorama sky for the menu due to build failure. Cannot open the .hdr in krita to convert to .exr.
  4. Exports the project.

Special thanks to @RevoluPowered

https://nightly.link/fire/tps-demo/workflows/builds/builds

Spent a week on this.

Option to generate pdbs

I can also generate pdbs, but it's optional. Can also strip the executables.

What is V-Sekai?

We're developing a free, open source virtual reality platform. We work to make it user-friendly and fulfill a need in the VR community. Join the V-Sekai team on the V-Sekai discord server!

fire commented 1 year ago

Since iteration times are poor, will first fill the cache with deploy: false and then try to fix the build.

Calinou commented 1 year ago

Instead of building Godot from source on every commit, I'd prefer downloading the official export templates to reduce export times and have fully optimized binaries (with LTO).

Parts of the CI scripts about C# support can also be stripped as the TPS demo only uses GDScript.

fire commented 1 year ago

tl;dr the novel part of this is we can test pre-releases or major jumps in version like 5.0. We can use the existing build-godot github action for stable.

I prefer being able to test pre-releases like the upcoming 4.0 point release and they are fully cached dropping from 1- 1.5 hours to 10 minutes.

I can remove the C# support, but please let me know if you are still interested.

As this was taken from my project, I am not that interested in using the official export templates.

Official template versions of builds already exist and you can already use that. https://github.com/marketplace/actions/build-godot

akien-mga commented 7 months ago

This is a nice effort but I also think it's overkill to build Godot from source like this.

This demo tests enough of Godot as is on stable releases, it's too complex to be used for integration testing of master commits. At least that shouldn't be part of the default CI instrumentation of this repo.

Generating official releases of the demo would be nice, but this can be done by using the current stable release of Godot with its export templates, which will indeed be better optimized than what can be done on GHA.

fire commented 7 months ago

I'm running the github action separately with some of your generate releases code from fbx2gltf.

Here's a sample. https://github.com/V-Sekai/V-Sekai.xr-grid

Thanks. I'll close as it seems this isn't wanted and I don't feel like arguing for end-to-end testing via github actions here.