Crate osb

Source
Expand description

An easy-to-use library to create, read, parse and modify .osb storyboard files.

The osb library focuses on ease, scalability and security.

§Example

use osb::{Layer, Module, Sprite, Storyboard};

fn module() -> Module {
    let mut module = Module::new(Layer::Background);

    let mut sprite = Sprite::new("res/sprite.png");
    sprite.move_((0, 320, 240));
    module.push(sprite);

    module
}

fn main() -> std::io::Result<()> {
    let mut sb = Storyboard::new();
    sb.push(module());
    sb.print()
}

§Warning

This crate is meant to be used by users with experience with the .osb file format, even though the following documentation links to various sources to learn about some concepts of storyboarding.

If you are new to storyboarding, we’d recommend you to develop knowledge on this field first. If you have no idea where to start, a great source of knowledge is PoNo’s osbx wiki.

Re-exports§

pub use event::Event;

Modules§

event
All of the storyboard events, Move, Scale, … and the trait Event defining them
utils
The utils, everything we need in order to make osb work

Structs§

Module
A component of a Storyboard
Sprite
The struct corresponding to sprites
Storyboard
What defines a storyboard

Enums§

Easing
Easings as defined in the official osu! specifications
Layer
Layers as defined in the official osu! specifications
Origin
Origins as defined in the official osu! specifications