lib-composit · crate

kinogaki-composit

Librarykernel

Comp's device-free half: each operator's parameters and maths, tone curves, and the plan a host compiles a network to.

Repository
lib-composit (kinogaki/lib-composit)
Folder
libs/lib-composit/crates/composit
Source
12 files, 1,857 lines
Tests
0 files, 0 lines
depends onused by tests alonedependencies for tests alone are listed below, not drawn

What it is

Comp's device-free half: each operator's parameters and maths, tone curves, and the plan a host compiles a network to.

A plan is ordered steps over linear ACEScg images, premultiplied, at each step's own size. It knows no network and no SDK: a host fills its Plan, and kinogaki-composit-wgpu runs it.

  • curve: tone curves and the log shaper for curves on scene light;
  • image: images on the CPU, what the spatial references read and write;
  • nodes: each operator's parameters decoded for the GPU and its maths on one pixel, the CPU reference its GPU kernel is held to.

Depends on

CrateRepositoryAsWhat it is
kinogaki-colorlib-colornormalColor science and color management for Kinogaki.

Third-party

None.

Used by

CrateRepositoryAsWhat it is
kinogaki-compCompnormalComp as an SDK package (kinogaki.comp): what fills Studio's Comp context (kinogaki.core.comp, core declares it, inside a Render Output object).
kinogaki-composit-wgpulib-compositnormalComp on a wgpu host's own device.

Modules

Public types and traits

At the crate root

Structs CurveImagePlanStep

Enums InterpolationOpSlot

By module: 16 public types and traits in 10 modules

curve CurveInterpolation

image Image

nodes::bloom Bloom

nodes::blur Blur

nodes::curves Curves

nodes::grade GradeKnobs

nodes::hue_saturation HueSaturation

nodes::levels Levels

nodes::merge MergeOperation

plan OpPlanSlotStep

Besides these, 8 public functions at module level.