Skip to content

Conversation

@makspll
Copy link
Owner

@makspll makspll commented Oct 26, 2025

Summary

  • Adds script_loading rust example showing how one can create a simple loading screen, waiting for all scripts to load
  • Adds system parameter ScriptPipelineState which can be used to easilly and simply access relevant information to that purpose
  • Adds some logs, and silences some noisier ones
  • Improve handling of handles within the pipeline (preserve asset paths)

loading

@semanticdiff-com
Copy link

semanticdiff-com bot commented Oct 26, 2025

Review changes with  SemanticDiff

Changed Files
File Status
  crates/bevy_mod_scripting_bindings/src/globals/core.rs  37% smaller
  crates/bevy_mod_scripting_core/src/pipeline/mod.rs  6% smaller
  Cargo.toml Unsupported file format
  assets/scripts/dummy.lua  0% smaller
  crates/bevy_mod_scripting_core/src/pipeline/machines.rs  0% smaller
  crates/bevy_mod_scripting_core/src/pipeline/start.rs  0% smaller
  crates/bevy_mod_scripting_core/src/script/mod.rs  0% smaller
  crates/bevy_mod_scripting_core/src/script/script_context.rs  0% smaller
  docs/src/ScriptPipeline/pipeline.md Unsupported file format
  docs/src/Summary/managing-scripts.md Unsupported file format
  examples/run_script.rs  0% smaller
  examples/script_loading.rs  0% smaller

@makspll makspll enabled auto-merge (squash) October 26, 2025 15:08
@github-actions
Copy link
Contributor

github-actions bot commented Oct 26, 2025

🐰 Bencher Report

Branchfeature/script-pipeline-state-param
Testbedlinux-gha
Click to view all benchmark results
BenchmarkLatencyBenchmark Result
nanoseconds (ns)
(Result Δ%)
Upper Boundary
nanoseconds (ns)
(Limit %)
component/access Lua📈 view plot
🚷 view threshold
3,867.20 ns
(-7.97%)Baseline: 4,202.15 ns
4,735.56 ns
(81.66%)
component/access Rhai📈 view plot
🚷 view threshold
5,767.20 ns
(-4.40%)Baseline: 6,032.58 ns
6,521.06 ns
(88.44%)
component/get Lua📈 view plot
🚷 view threshold
2,518.50 ns
(-2.97%)Baseline: 2,595.61 ns
3,068.84 ns
(82.07%)
component/get Rhai📈 view plot
🚷 view threshold
4,431.70 ns
(-2.07%)Baseline: 4,525.25 ns
4,988.94 ns
(88.83%)
conversions/Mut::from📈 view plot
🚷 view threshold
92.10 ns
(-2.31%)Baseline: 94.27 ns
116.57 ns
(79.01%)
conversions/Ref::from📈 view plot
🚷 view threshold
89.06 ns
(-2.91%)Baseline: 91.73 ns
111.33 ns
(80.00%)
conversions/ScriptValue::List📈 view plot
🚷 view threshold
374.36 ns
(+0.01%)Baseline: 374.33 ns
408.29 ns
(91.69%)
conversions/ScriptValue::Map📈 view plot
🚷 view threshold
1,006.90 ns
(-10.80%)Baseline: 1,128.83 ns
1,289.41 ns
(78.09%)
conversions/ScriptValue::Reference::from_into📈 view plot
🚷 view threshold
27.66 ns
(+1.28%)Baseline: 27.31 ns
31.16 ns
(88.75%)
conversions/Val::from_into📈 view plot
🚷 view threshold
275.55 ns
(-10.67%)Baseline: 308.46 ns
378.57 ns
(72.79%)
function/call 4 args Lua📈 view plot
🚷 view threshold
1,826.10 ns
(-6.21%)Baseline: 1,947.04 ns
2,255.11 ns
(80.98%)
function/call 4 args Rhai📈 view plot
🚷 view threshold
1,350.70 ns
(-9.61%)Baseline: 1,494.34 ns
1,662.59 ns
(81.24%)
function/call Lua📈 view plot
🚷 view threshold
388.25 ns
(+33.71%)Baseline: 290.37 ns
455.02 ns
(85.33%)
function/call Rhai📈 view plot
🚷 view threshold
450.09 ns
(+1.18%)Baseline: 444.82 ns
500.83 ns
(89.87%)
loading/empty Lua📈 view plot
🚷 view threshold
895,090.00 ns
(+16.80%)Baseline: 766,347.70 ns
1,770,793.65 ns
(50.55%)
loading/empty Rhai📈 view plot
🚷 view threshold
1,157,500.00 ns
(+16.34%)Baseline: 994,887.00 ns
1,899,073.76 ns
(60.95%)
math/vec mat ops Lua📈 view plot
🚷 view threshold
7,044.60 ns
(-11.62%)Baseline: 7,970.94 ns
9,324.98 ns
(75.55%)
math/vec mat ops Rhai📈 view plot
🚷 view threshold
6,694.60 ns
(-6.44%)Baseline: 7,155.77 ns
8,038.55 ns
(83.28%)
query/10 entities Lua📈 view plot
🚷 view threshold
20,837.00 ns
(-5.67%)Baseline: 22,089.00 ns
26,019.99 ns
(80.08%)
query/10 entities Rhai📈 view plot
🚷 view threshold
19,957.00 ns
(-6.77%)Baseline: 21,406.80 ns
23,693.25 ns
(84.23%)
query/100 entities Lua📈 view plot
🚷 view threshold
41,443.00 ns
(-6.76%)Baseline: 44,448.30 ns
49,128.82 ns
(84.36%)
query/100 entities Rhai📈 view plot
🚷 view threshold
33,040.00 ns
(-6.27%)Baseline: 35,251.90 ns
38,793.88 ns
(85.17%)
query/1000 entities Lua📈 view plot
🚷 view threshold
244,830.00 ns
(-15.36%)Baseline: 289,247.00 ns
339,405.02 ns
(72.14%)
query/1000 entities Rhai📈 view plot
🚷 view threshold
162,560.00 ns
(-8.40%)Baseline: 177,471.00 ns
201,130.78 ns
(80.82%)
reflection/10 Lua📈 view plot
🚷 view threshold
5,538.90 ns
(-11.52%)Baseline: 6,260.14 ns
7,059.09 ns
(78.46%)
reflection/10 Rhai📈 view plot
🚷 view threshold
15,023.00 ns
(-5.79%)Baseline: 15,946.40 ns
16,901.80 ns
(88.88%)
reflection/100 Lua📈 view plot
🚷 view threshold
48,362.00 ns
(-8.82%)Baseline: 53,040.80 ns
58,884.44 ns
(82.13%)
reflection/100 Rhai📈 view plot
🚷 view threshold
709,510.00 ns
(-10.21%)Baseline: 790,232.00 ns
869,847.89 ns
(81.57%)
resource/access Lua📈 view plot
🚷 view threshold
3,612.20 ns
(-4.69%)Baseline: 3,789.77 ns
4,289.18 ns
(84.22%)
resource/access Rhai📈 view plot
🚷 view threshold
5,210.90 ns
(-5.11%)Baseline: 5,491.73 ns
5,978.31 ns
(87.16%)
resource/get Lua📈 view plot
🚷 view threshold
2,125.80 ns
(-3.44%)Baseline: 2,201.53 ns
2,591.63 ns
(82.03%)
resource/get Rhai📈 view plot
🚷 view threshold
3,919.80 ns
(-2.65%)Baseline: 4,026.37 ns
4,438.41 ns
(88.32%)
🐰 View full continuous benchmarking report in Bencher

@makspll makspll merged commit 2b34279 into main Oct 26, 2025
28 of 30 checks passed
@makspll makspll deleted the feature/script-pipeline-state-param branch October 26, 2025 15:52
@github-actions github-actions bot mentioned this pull request Oct 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant