Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 20 Oct 10:54
· 71 commits to main since this release

Changed

  • Crate layering. oxframe-core now owns Image (RGBA pixels) and the new
    FrameSource trait — "give me frame n" — through which the editor
    (oxframe-preview), render/snapshot and the exporter get frames
    without knowing what draws them. oxframe-preview and oxframe-export no
    longer depend on the 2D crate or the renderers; CI checks this
    (scripts/check-layering.sh). Scene code is unchanged and renders
    byte-identically.
  • The crate docs and README carry a development-status notice.

Breaking (only for code using the internal crates directly)

  • oxframe_preview::PreviewEngine now extends oxframe_core::FrameSource:
    fps, size, total_frames and render moved to that trait.

    // before
    impl PreviewEngine for MyEngine { fn fps(&self) -> u32 { 60 } /* … */ }
    // after
    impl FrameSource for MyEngine { fn fps(&self) -> u32 { 60 } /* … */ }
    impl PreviewEngine for MyEngine { /* the editor-specific methods */ }
  • oxframe_render::Image is a re-export of oxframe_core::Image;
    Image::encode_png still exists.