Skip to content

Release v0.42.0#385

Merged
sebcrozet merged 1 commit into
masterfrom
release-0.42.0
May 24, 2026
Merged

Release v0.42.0#385
sebcrozet merged 1 commit into
masterfrom
release-0.42.0

Conversation

@sebcrozet

Copy link
Copy Markdown
Member

v0.42.0

Breaking Changes

  • Bumped glamx dependency: 0.2 → 0.3. (#384)

New Features

Off-screen Rendering (#382)

  • Added OffscreenSurface: a truly headless render target with no window and no event loop — works on CI, servers and other environments without a display server (native only).
    • OffscreenSurface::new(width, height) / with_setup(width, height, CanvasSetup)
    • render_3d / render_2d / render — share the same scene graph, cameras, lights and materials as Window
    • render_image_3d — render a frame and capture it in one call
    • snap, snap_rect, snap_image, resize, size, width, height, set_background_color
  • Hidden windows (Window::new_hidden*) now render into an off-screen texture, so snap* and the recording feature work on them too. (#381)
  • Added the offscreen example.

Bug Fixes

  • Fixed the first frame occasionally failing to render. A freshly created window — particularly on macOS — may need the event loop to be pumped a few times before its surface becomes presentable; surface acquisition now retries during a short startup grace period before giving up, then skips transient failures immediately on subsequent frames. (#381)
  • Ensured the selected surface format is supported by the device features. (#379)
  • Replaced stray println! / eprintln! calls in the rendering path and the OBJ/MTL loaders with log macros. (#381)

@sebcrozet sebcrozet merged commit 6a4a38f into master May 24, 2026
5 checks passed
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