Compare commits

..
Author SHA1 Message Date
EIREXE 49b23110ff Build Windows binary in shared Steam depot
CI / build-and-test (pull_request) Successful in 1m46s
CI / production-build (pull_request) Failing after 4m50s
2026-09-19 22:01:52 +02:00
EIREXE 9ba8697d57 Include missing battlefield icon
CI / build-and-test (push) Successful in 1m10s
CI / production-build (push) Successful in 5m5s
2026-09-19 21:54:33 +02:00
EIREXE 7d9b6aeafc Fix headless asset preprocessing hang (#49)
CI / build-and-test (push) Successful in 1m9s
CI / production-build (push) Successful in 5m23s
## Summary
- register Bevy's image loader explicitly in the headless asset processor
- use no GPU-compressed image formats because the processor has no render device
- allow PNG processing tasks to complete so `ProcessorState` reaches `Finished`

Co-authored-by: Álex Román Núñez <eirexe@eirteam.moe>
2026-09-19 19:07:39 +00:00
EIREXE ab6aec70c5 Fix processed RON assets being ignored (#48)
CI / build-and-test (push) Successful in 1m9s
CI / production-build (push) Canceled after 10m37s
## Summary
- share custom RON asset loaders between the game and asset processor
- register image, font, and glTF loaders in the headless processor
- prevent `game_settings.ron` and `game.stylesheet.ron` from receiving ignored processed metadata

Reviewed-on: #48
Co-authored-by: Álex Román Núñez <eirexe@eirteam.moe>
2026-09-19 18:09:40 +00:00
3 changed files with 13 additions and 6 deletions
+11 -5
View File
@@ -21,6 +21,8 @@ jobs:
sh -s -- -y --profile minimal
echo "$HOME/.cargo/bin" >> "$GITHUB_PATH"
"$HOME/.cargo/bin/rustup" toolchain install nightly-2026-09-14 --profile minimal
"$HOME/.cargo/bin/rustup" target add x86_64-pc-windows-msvc --toolchain nightly-2026-09-14
"$HOME/.cargo/bin/cargo" install cargo-xwin --locked
- name: Cache Rust dependencies and build artifacts
uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2
@@ -41,6 +43,7 @@ jobs:
libx11-dev \
libxkbcommon-dev \
libxkbcommon-x11-0 \
lld \
mesa-vulkan-drivers \
mold \
pkg-config
@@ -94,6 +97,9 @@ jobs:
- name: Build production binary
run: cargo build --locked --profile production --no-default-features --features debug_features -j 4
- name: Build Windows production binary
run: cargo xwin build --locked --target x86_64-pc-windows-msvc --profile production --no-default-features --features debug_features -j 4 --bin shinespark
- name: Verify production binary is not Bevy/Rust dynamically linked
run: |
! readelf -d target/production/shinespark | grep -E 'libbevy_dylib|libstd-.*\.so'
@@ -101,10 +107,10 @@ jobs:
- name: Package Linux Steam depot
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
run: |
mkdir -p build/linux
cp target/production/shinespark build/linux/shinespark
cp -R assets build/linux/assets
cp -R imported_assets build/linux/imported_assets
mkdir -p build/game
cp target/production/shinespark build/game/shinespark
cp target/x86_64-pc-windows-msvc/production/shinespark.exe build/game/shinespark.exe
cp -R imported_assets build/game/imported_assets
- if: github.event_name == 'push' && github.ref == 'refs/heads/master'
uses: CyberAndrii/steam-totp@v1
@@ -123,5 +129,5 @@ jobs:
appId: 3409670
buildDescription: ${{ github.sha }}
rootPath: build
depot1Path: linux
depot1Path: game
releaseBranch: master
Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

+2 -1
View File
@@ -2,7 +2,7 @@ use bevy::{
app::ScheduleRunnerPlugin,
asset::{AssetMode, AssetPlugin, processor::AssetProcessor, processor::ProcessorState},
gltf::GltfPlugin,
image::ImagePlugin,
image::{CompressedImageFormats, ImageLoader, ImagePlugin},
prelude::*,
tasks::block_on,
text::TextPlugin,
@@ -19,6 +19,7 @@ fn main() -> ExitCode {
..default()
})
.add_plugins((ImagePlugin::default(), TextPlugin, GltfPlugin::default()))
.register_asset_loader(ImageLoader::new(CompressedImageFormats::NONE))
.add_plugins(AssetProcessingPlugin)
.add_systems(Update, finish_when_processed);