Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
3fbadc8
feat: renderer
sp0lsh May 10, 2026
ca7267d
feat: renderer
sp0lsh May 28, 2026
724f949
feat: extract shaders to files
sp0lsh May 28, 2026
d51c262
review
sp0lsh May 28, 2026
95d4ada
review
sp0lsh May 28, 2026
cdcb249
review
sp0lsh May 28, 2026
285f712
review
sp0lsh May 28, 2026
6e64c83
review
sp0lsh May 28, 2026
040bc05
example pbr helmet
sp0lsh May 29, 2026
fc02e60
example: pbr balls
sp0lsh May 30, 2026
e26b2e8
example: pbr helmet
sp0lsh May 30, 2026
252a327
fix ci
sp0lsh May 30, 2026
93ea098
fix CI failures: clippy lints, WASM egui size, codesign on Linux, wor…
sp0lsh May 30, 2026
24c56e9
fix ci
sp0lsh May 30, 2026
d38a328
fix: do not embedd hdr by default
sp0lsh May 30, 2026
279fb43
fix wasm size
sp0lsh May 30, 2026
c10032a
fix: fog and ibl tweaks
sp0lsh May 31, 2026
c4f86fd
feat: bg sub pass for better perf
sp0lsh May 31, 2026
b4e06fb
feat: hdr for helmet
sp0lsh May 31, 2026
124ded8
perf: pill_tunel: 3 -> 12 FPS
sp0lsh May 31, 2026
98e9e15
perf: pill_tunel: 12 -> 30 FPS
sp0lsh May 31, 2026
f0bca71
feat: rendering system cleanup
sp0lsh May 31, 2026
dba3e0f
feat: renderer cleanup
sp0lsh May 31, 2026
3ecedfa
feat: rust safety review
sp0lsh May 31, 2026
9ef8851
add pbr_balls, pbr_helmet to wasm ci
sp0lsh May 31, 2026
256c3a4
fix ci
sp0lsh May 31, 2026
ba9fd21
531→497 K: str::to_uppercase/to_lowercase in config parsing pulled th…
sp0lsh May 31, 2026
23a7291
501→494 KB: strip symbol names
sp0lsh May 31, 2026
a67da0f
fix: examples Cargo.toml NO_PATH
sp0lsh Jun 1, 2026
ce88a44
feat: review
sp0lsh Jun 7, 2026
af052d1
fix: ci, wasm cube budget gate edge case
sp0lsh Jun 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,8 @@ jobs:
example:
- examples/cube
- examples/pill_tunel
- examples/pbr_helmet
- examples/pbr_balls
steps:
- uses: actions/checkout@v4

Expand All @@ -176,6 +178,8 @@ jobs:
workspaces: |
examples/cube/build/wasm/.build/pill_web -> target
examples/pill_tunel/build/wasm/.build/pill_web -> target
examples/pbr_helmet/build/wasm/.build/pill_web -> target
examples/pbr_balls/build/wasm/.build/pill_web -> target

- uses: jetli/wasm-pack-action@v0.4.0
with:
Expand Down Expand Up @@ -219,10 +223,10 @@ jobs:
run: |
WASM="examples/cube/build/wasm/pill_web_app_bg.wasm"
ACTUAL=$(wc -c < "$WASM")
MAX=$((499 * 1024))
if [ "$ACTUAL" -gt "$MAX" ]; then
echo "FAIL: WASM $((ACTUAL / 1024)) KB exceeds 499 KB budget"
ACTUAL_KB=$((ACTUAL / 1024))
if [ "$ACTUAL_KB" -gt 499 ]; then
echo "FAIL: WASM $ACTUAL_KB KB exceeds 499 KB budget"
exit 1
fi
echo "OK: WASM $((ACTUAL / 1024)) KB <= 499 KB"
echo "OK: WASM $ACTUAL_KB KB <= 499 KB"

7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,17 @@ target/
build/
.vscode/
*.lock
.claude

docs/*
engine/pill_engine/docs/uml_out/*
engine/target_*

*.log
*.wgsl

*.cooked_mesh
*.cooked_tex
DamagedHelmet.glb
MetalRoughSpheres.glb
studio_small_08.hdr
18 changes: 18 additions & 0 deletions engine/.cargo/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Enable native CPU SIMD (AVX2/AVX512 on x86_64, NEON on ARM) for non-WASM builds.
# Without this the compiler defaults to SSE2 baseline on x86_64.
# wasm32 intentionally absent — target-cpu=native breaks WASM builds.

[target.x86_64-unknown-linux-gnu]
rustflags = ["-C", "target-cpu=native"]

[target.x86_64-apple-darwin]
rustflags = ["-C", "target-cpu=native"]

[target.x86_64-pc-windows-msvc]
rustflags = ["-C", "target-cpu=native"]

[target.aarch64-apple-darwin]
rustflags = ["-C", "target-cpu=native"]

[target.aarch64-unknown-linux-gnu]
rustflags = ["-C", "target-cpu=native"]
1 change: 0 additions & 1 deletion engine/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ members = [
"pill_assets",
"pill_core",
"pill_engine",
"pill_renderer",
"pill_native",
"pill_web",
"pill_runtime",
Expand Down
1 change: 1 addition & 0 deletions engine/pill_assets/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ glob = "0.3"
png = "0.17"
tobj = "3.0"
bytemuck = { version = "1.4", features = ["derive"] }
gltf = { version = "1", features = ["import"] }
5 changes: 4 additions & 1 deletion engine/pill_assets/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,10 @@ use anyhow::{Context, Result};

pub mod rules;

pub use rules::{default_rules, HlslToWgsl, ObjToCookedMesh, PngToCookedTex};
pub use rules::{
default_rules, EquirectToIBL, GlbToCookedMesh, HlslToWgsl, ObjToCookedMesh, PngToCookedTex,
ProceduralEquirect,
};

pub trait Rule {
/// Glob (relative to the pipeline root) selecting source inputs.
Expand Down
Loading
Loading