Commit Graph

24 Commits

Author SHA1 Message Date
Jérôme Bousquié 8eec38e55c fix(lib): migrate to winit 0.30 ApplicationHandler model
winit 0.30.13 removed WindowBuilder and deprecated EventLoop::run. Move
window/GPU creation into ApplicationHandler::resumed, expose AppHandler::setup
hook, switch App::run to run_app, and migrate both examples. pollster becomes a
regular dependency (used by app.rs).
2026-09-16 14:17:11 +02:00
Jérôme Bousquié 4acf1d821d feat(core): expose frame view and auto-render the scene
- AppHandler::render now receives the current &Frame; its default
  implementation renders the whole scene automatically via
  app.render_scene(frame.view()) (Option A). Users can simply not
  implement render for full auto-rendering.
- Add Renderer::render_scene: batch-renders every scene entity in a
  single render pass. Factored per-mesh draw logic into a private
  draw_entity helper shared with Renderer::render.
- Add App::render_scene(view) delegating to the Renderer.
- Fill simple.rs with a real quad (mesh/material/entity) without
  importing wgpu; the scene now auto-renders via the trait default.
2026-09-16 10:36:35 +02:00
Jérôme Bousquié d81743481b docs: fix rustdoc warnings and enforce full API doc coverage
- Wrap in backticks every bare type in rustdoc comments (vertex.rs,
  frame.rs, pipeline_cache.rs, material.rs, mesh.rs, scene.rs, error.rs)
  so rustdoc no longer misreads them as intra-doc links or HTML tags.
- Add a missing doc comment on the public Frame struct.
- Add #![warn(missing_docs)] to the crate root so unevidenced public
  items are surfaced going forward.

cargo doc --no-deps now generates with zero warnings.
2026-09-16 09:32:25 +02:00
Jérôme Bousquié 7cabda710d examples: fix simple.rs to compile as the 15-line declarative model
- Replace the broken App::new() (which does not exist) with AppBuilder.
- Strip it down to the PLAN's ~15-line target: no explicit winit/wgpu,
  AppHandler render() left empty (scene rendering still on the roadmap).
- Verified: builds, opens a black window and runs the update->render->present
  loop until closed.
- Update README/PLAN wording now that the simple example compiles (it still
  does not draw a scene).
2026-09-14 15:42:30 +02:00
Jérôme Bousquié f6c0851d4f docs: reconcile README/ROADMAP/PLAN state and settle slotmap vs String IDs
- README stays the source of truth for current state; drive/item-5 now
  reflects the settled decision: String IDs for the MVP, slotmap deferred.
- ROADMAP gains a 'point de depart' (present-state) block, marks glam done,
  removes the slotmap Phase-1 mandates, and documents the String-ID decision
  plus the deferred 'typed handles' step.
- PLAN corrects stale [X] checkmarks (App render() cannot draw, Scene
  rendering not automated, simple example does not compile) and notes its
  verification checklist against current reality.
- Remove the unused slotmap direct dependency from wsg-lib (package remains
  in Cargo.lock only as a transitive dep of glow).
2026-09-14 15:28:41 +02:00
Jérôme Bousquié 895965750f préparation phase 1.1 2026-08-01 21:25:43 +02:00
Jérôme Bousquié 3414d68819 Plan 2026-07-08 15:58:20 +02:00
Jérôme Bousquié 7b25564483 doc 2026-07-08 15:46:50 +02:00
Jérôme Bousquié 724b658896 modif appbuilder 2026-07-08 12:29:18 +02:00
Jérôme Bousquié 82ea16d118 re-org en App 2026-07-07 16:42:37 +02:00
Jérôme Bousquié e9a75182ee fix example ! 2026-07-07 10:16:05 +02:00
Jérôme Bousquié 8e57dc783b refactor renderer responsable + docs + schema 2026-07-06 17:37:13 +02:00
Jérôme Bousquié 47851b8f61 vertex +normals 2026-07-06 12:31:35 +02:00
Jérôme Bousquié 6c94fc96d6 ajout material et pipeline_cache 2026-07-06 10:40:00 +02:00
Jérôme Bousquié 22edac6ad5 ajout mesh.rs 2026-07-05 15:51:37 +02:00
Jérôme Bousquié 7cc1fb845f renderer render 2026-07-05 08:00:58 +02:00
Jérôme Bousquié d1b499570a début renderer 2026-07-04 20:59:25 +02:00
Jérôme Bousquié 2a3c6493fc renderer new 2026-07-04 15:40:32 +02:00
Jérôme Bousquié 4b7a1b05e5 begin et end frame dans context 2026-07-04 14:57:29 +02:00
Jérôme Bousquié 4fd39d32c6 configure context 2026-07-03 21:11:43 +02:00
jerome 3d6112833d commentaires 2026-07-03 15:23:56 +02:00
jerome 039f113831 cd examples
cargo run -p wsg-examples
2026-07-03 14:46:59 +02:00
jerome f66519eeab init wgpu + doc + err robustes 2026-07-03 12:33:32 +02:00
jerome f765c5fcc1 1st commit 2026-07-03 11:06:55 +02:00