concinnity 0.18.69

Asset-driven application world framework
Documentation

Concinnity

crates.io docs.rs GitHub License Build Status codecov.io

Concinnity is an asset-driven world engine. A world is a set of components describing what exists -- a camera, lights, geometry, UI -- and the engine runs it. Behaviour is declared as data rather than assembled from calls, so building an application is mostly a matter of saying what is in it.

This project is in early development and may not build reliably depending on the platform requirements installed. See the Build Guide for support options.

It's available as a command-line tool:

cargo install concinnity --features editor

And as a Rust crate:

use concinnity::components::{GraphicsConfig, TextLabel};
use concinnity::{App, World};

fn main() {
    let mut world = World::new();
    world.add_component(GraphicsConfig::default());
    world.add_component(TextLabel {
        content: "Hello, world!".to_string(),
        centered: true,
        ..Default::default()
    });

    App::from_world(world).run().expect("the app runs");
}

Check out the Rust Documentation to explore the crate.

Crates

Crate Kind no_std? Role
concinnity-dev lib Dev tooling: world authoring, the cn subcommands, the asset reference generator, bundle packaging, the in-engine editor, the debug server.
concinnity-cook lib Asset cook pipeline that bakes an authored world into a blob.
concinnity-world lib Authored world source, build-only asset schemas, validation, and spec builders.
concinnity-engine lib Runtime engine: ECS schedule, graphics/audio (kira)/spawn, allocator.
concinnity-device lib GPU backends (Metal/Vulkan/DX) behind a device facade.
concinnity-shader lib Build-time shader compilers for the backend being built.
concinnity-host lib Host services: the on-disk state tree, the worker pool, the build-time name interner.
concinnity-core lib :white_check_mark: Asset schemas beside their runtime components, the compute over them, the GPU-free render preparation, the rigid-body simulation, the allocation layer, the headless sim drivers.
concinnity-toolchain build-dep Build-script support: cfgs, SDKs, source hashing, doc extraction.