Skip to content

bbsolver v1.0.0

Choose a tag to compare

@ivg-design ivg-design released this 25 May 07:26
· 13 commits to main since this release

bbsolver v1.0.0

First standalone release of bbsolver, a C++ spatiotemporal optimization
engine for animation data.

Highlights

  • Reduces dense sampled animation to sparse keyframes within an explicit error
    budget.
  • Supports scalar, vector, Position-style spatial properties, stable
    shape_flat paths, and variable-topology path replacement flows.
  • Includes motion path smoothing for Position-style motion paths, with options
    for preserving keyed frames and sharp turns.
  • Preserves host animation semantics where applicable: hold, linear, Bezier,
    temporal ease, spatial tangents, and roving flags.
  • Ships a standalone After Effects ScriptUI test harness plus JSON shim that
    demonstrates sampling, expression bake-and-disable, optional parented 2-D
    Position flatten/unparent, CLI solve/verify, and key writeback.

Supported Integration Surface

  • CLI commands: solve, verify, dump, --version, and --help.
  • JSON IO: strict SampleBundle input and KeyBundle output with
    _schema, schema_version: 1, and dimension-checked value arrays.
  • CMake package: find_package(bbsolver CONFIG) with exported
    bbsolver::bbsolver and bbsolver::core targets.
  • FlatBuffers schemas are included as protocol/design references; v1.0.0 CLI IO
    is JSON.

Build And Use

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

./build/bbsolver solve \
  examples/json/minimal_scalar.bbsm.json \
  /tmp/minimal_scalar.bbky.json
./build/bbsolver verify \
  /tmp/minimal_scalar.bbky.json \
  examples/json/minimal_scalar.bbsm.json

Windows PowerShell:

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -j

.\build\Release\bbsolver.exe solve `
  examples\json\minimal_scalar.bbsm.json `
  $env:TEMP\minimal_scalar.bbky.json
.\build\Release\bbsolver.exe verify `
  $env:TEMP\minimal_scalar.bbky.json `
  examples\json\minimal_scalar.bbsm.json

Offline/reproducible builds can use the bundled dependency archives:

cmake -S . -B build -DBBSOLVER_FORCE_THIRD_PARTY_ARCHIVES=ON
cmake --build build -j

Validation Evidence

Validated public commit:
5e2954573476d31d06f27538676a012bbb759e13.

Public CI:

  • Push run
    26384591701:
    quick-linux, package-macos, and package-windows passed.
  • Manual release-validation run
    26385148293:
    quick-linux, package-macos, package-windows, and
    release-validation passed.
  • Tag run
    26387781951
    for v1.0.0: quick-linux, package-macos, package-windows, and
    release-validation passed.

The release-validation job completed the standalone validator, installed
package smoke test, JSON example solve/verify/dump checks, negative schema
checks, install hygiene checks, and clangd sweep.

Source Traceability

This public release was synced from the source repository with the following
metadata:

  • Source-Repository: https://github.com/ivg-design/bakerBoy.git
  • Source-Ref: HEAD
  • Source-Commit: 460c84aaa8018d88b2120cfe37ad12a2e5b1e3bb
  • Source-Path: solver
  • Source-Tree: 99bf3f2b864ac852a364b745fca46956f9a3459e

Documentation

  • README.md: package overview and quickstart.
  • docs/QUICKSTART.md: five-minute build, solve, and verify path.
  • docs/SOLVER_CLI.md: CLI commands, flags, exit codes, progress,
    cancellation, and diagnostics.
  • docs/API_REFERENCE.md: JSON SampleBundle and KeyBundle contracts.
  • docs/PACKAGING.md: CMake install/export and package-consumer behavior.
  • docs/AE_SCRIPTUI_HARNESS.md: After Effects ScriptUI harness integration.
  • docs/VALIDATION_WORKFLOWS.md: local and release validation workflows.