Skip to main content

Motion Canvas v3.6.0

Β· 3 min read
Jacob
Motion Canvas Creator

New features πŸŽ‰β€‹

  • aarthificial's avatar

    Cardinal points let you position nodes relative to their corners and edges

    #636
    Press play to preview the animation
    import ...

    export default makeScene2D(function* (view) {
    const rect = createRef<Rect>();

    view.add(
    <>
    <Rect
    ref={rect}
    width={200}
    height={100}
    rotation={-10}
    fill={'#333333'}
    />
    <Rect
    size={50}
    fill={'#e6a700'}
    rotation={rect().rotation}
    // Try changing "right" to "top"
    right={rect().left}
    />
    <Rect
    size={100}
    fill={'#e13238'}
    rotation={10}
    bottomLeft={rect().bottomRight}
    />
    </>,
    );

    yield* rect().rotation(10, 1).to(-10, 1);
    });

  • aarthificial's avatar

    New

    Ray

    node lets you easily define simple lines between two points.

    #628
  • aarthificial's avatar

    New methods for chaining animations together:

    #651
    yield* circle().scale(0.5, 0.2)
    // tween to another value
    .to(2, 0.2)
    // wait for one second
    .wait(1)
    // tween back to the initial value
    .back(0.2)
    // execute a callback
    .do(() => circle().fill('red'))
    // run the given generator
    .run(circle().position.y(100, 2));
  • squigglesdev's avatar

    New

    loopFor

    and

    loopUntil

    flow functions.

    #650#624
  • aarthificial's avatar

    External changes to images are now automatically reflected in the preview.

    #641
  • ksassnowski's avatar

    New

    fromDegrees

    ,

    createArcLerp

    and

    mod

    Vector2 methods.

    #640#622
  • aarthificial's avatar

    New

    completion

    and

    arcLength

    properties for curves.

    #627#635
  • aarthificial's avatar

    New

    DEG2RAD

    and

    RAD2DEG

    constants for converting between degrees and radians.

    #630
  • aarthificial's avatar

    You can now toggle fiddles between the code

    , editor

    and preview

    mode (You can try it out in the example above).

    #642

Fixed bugs πŸ›β€‹

  • someguythatcodes's avatar

    Clear DependencyContext promises once resolved.

    #617
  • aarthificial's avatar

    Fix fiddle accessibility.

    #647
  • aarthificial's avatar

    Fix cyclic dependency in cardinal points.

    #645
  • aarthificial's avatar

    Correctly append Txt nodes to view.

    #644
  • aarthificial's avatar

    Fix taking snapshots.

    #638#643
  • gmile's avatar

    Fix a typo in a viewport ID.

    #620

Check out the Update Guide for information on how to update your existing projects.

Motion Canvas v3.5.0

Β· 2 min read
Jacob
Motion Canvas Creator

New features πŸŽ‰β€‹

  • ksassnowski's avatar

    New

    BΓ©zier

    nodes let you easily create splines consisting of only one segment:

    #603
    Press play to preview the animation
    import ...

    export default makeScene2D(function* (view) {
    const bezier = createRef<CubicBezier>();

    view.add(
    <CubicBezier
    ref={bezier}
    lineWidth={6}
    stroke={'lightseagreen'}
    p0={[-200, 0]}
    p1={[50, -200]}
    p2={[-50, 200]}
    p3={[200, 0]}
    />,
    );

    yield* bezier().start(1, 1);
    yield* bezier().start(0).end(0).end(1, 1);
    });

  • aarthificial's avatar

    New

    Video

    properties: #601

    • play

      automatically plays the video

    • loop

      restarts the video upon reaching the end

  • aarthificial's avatar

    Fiddles now support multiple examples. You can switch between them using the dropdown on the right side.

Fixed bugs πŸ›β€‹

  • aarthificial's avatar

    UPDATE AVAILABLE now links to the GitHub release page.

    #608
  • aarthificial's avatar

    Videos play smoothly when in presentation mode.

    #600
  • aarthificial's avatar

    Reused async resources are now correctly awaited.

    #599
  • ksassnowski's avatar

    Arrow orientations for splines are correctly calculated.

    #597
  • aarthificial's avatar

    The showcase editor has been fixed.

    #589

Check out the Update Guide for information on how to update your existing projects.

Motion Canvas v3.4.0

Β· 2 min read
Jacob
Motion Canvas Creator

New features πŸŽ‰β€‹

  • ksassnowski's avatar

    New

    Spline

    node lets you draw lines made up of Bezier curves:

    #514
    <Spline lineWidth={6} stroke={'lightseagreen'}>
    <Knot position={[-100, 30]} />
    <Knot position={[0, -50]} startHandle={[-70, 0]} />
    <Knot position={[100, 30]} />
    </Spline>
  • ksassnowski's avatarVector2

    has been expanded with new methods:

    degrees

    ,

    equals

    ,

    squaredMagnitude#579
  • guifeliper's avatar

    Names displayed in the project selection view are now retrieved from the meta files.

    #552
  • aarthificial's avatar

    Introduce initial API for plugins.

    #564
  • aarthificial's avatar

    The fields in the editor are now autogenerated based on the structure of the meta file.

    #565

Fixed bugs πŸ›β€‹

  • aarthificial's avatar

    Support multiple fiddles on one page.

    #572
  • aarthificial's avatar

    Fix CodeBlock types.

    #563
  • aarthificial's avatar

    Size is now copied when cloning a node.

    #562
  • aarthificial's avatar

    Zoom to fit works correctly for smaller canvases.

    #561

Check out the Update Guide for information on how to update your existing projects.

Motion Canvas v3.3.0

Β· 2 min read
Jacob
Motion Canvas Creator

New features πŸŽ‰β€‹

  • aarthificial's avatar

    New Fiddle Editor let's you play around with Motion Canvas directly in the browser.

    #542
  • aarthificial's avatar

    Information about the current zoom level is now displayed in the top-left corner of the viewport. You can choose one of the predefined zoom levels or toggle "zoom to fit".

    #531
  • misclicl's avatar

    The group by scene rendering option lets you render scenes into separate image sequences.

    #477
  • aarthificial's avatar

    Button titles now include their corresponding shortcuts.

    #532
  • guifeliper's avatar

    Vite has been updated to v4.

    #495
  • aarthificial's avatar

    Tree shaking now works correctly.

    #523
  • aarthificial's avatar

    Custom fields added to meta files are now preserved.

    #534
  • aarthificial's avatar

    Checkboxes use a custom style.

    #529

Fixed bugs πŸ›β€‹

  • aarthificial's avatar

    The size of cache canvases is limited to the size of the project.

    #544
  • AshishBarvaliya's avatartextWrap

    now works in Firefox.

    #541
  • AshishBarvaliya's avatar

    The port at which Motion Canvas is served can now be changed.

    #538
  • AshishBarvaliya's avatar

    The editor correctly detects new versions.

    #520
  • AshishBarvaliya's avatar

    Keyboard shortcuts are now ignored when inputting text.

    #521
  • aarthificial's avatar

    Runtime errors no longer corrupt the editor's state.

    #524

Motion Canvas v3.2.0

Β· 2 min read
Jacob
Motion Canvas Creator

New features πŸŽ‰β€‹

  • oacs's avatar

    New status bar lists the shortcuts available in the currently hovered panel.

    #444
  • aarthificial's avatar

    The current version is now displayed on the status bar. Clicking it will copy the versions of all packages currently in use.

    #501
  • aarthificial's avatar

    Cache is now stored using world space coordinates. Scaling up

    cache

    d nodes no longer results in quality loss.

    #498
  • magx2's avatar

    All methods of

    Vector2

    now accept

    PossibleVector2

    as arguments, making it possible to write code like this:

    #478
    vector.add([100, 200]).mul(2);
  • andrie's avatar

    New

    Polygon

    node lets you quickly create regular polygons:

    <Polygon
    sides={6}
    size={300}
    fill={'lightseagreen'}
    />

    The code above will generate a hexagon.

    #463

Fixed bugs πŸ›β€‹

  • aarthificial's avatar

    Fix line arc length.

    #503
  • AshishBarvaliya's avatar

    Fix invalid source code link.

    #502

Motion Canvas v3.0.0

Β· 2 min read
Jacob
Motion Canvas Creator

Check out the Migration Guide for instructions on how to update your project.

New features πŸŽ‰β€‹

  • aarthificial's avatar

    New playback architecture:

    • Project settings are now stored in meta files.
    • Preview and rendering settings are configured separately.
    • The animation range is stored using seconds instead of frames.
    • You can adjust the audio offset by holding SHIFT and dragging the waveform left and right

    • The rendering is not locked to the framerate, making the process a bit faster.

    This change also opens the door to a lot of new features, including the

    Presentation Mode

    ,

    Editable Signals

    and

    Custom Exporters

    .

    #402
  • ccaven's avatar

    Rendering settings include a quarter resolution (x0.25).

    #421
  • mohsinhijazee's avatar

    New

    textDirection

    property for RTL/LTR text.

    #404

Fixed bugs πŸ›β€‹

  • aarthificial's avatar

    Fix Vector2.exactlyEquals.

    #437
  • aarthificial's avatar

    Render only within the range.

    #436
  • aarthificial's avatar

    Fix initial value of endOffset.

    #433
  • aarthificial's avatar

    Correctly reset zoom.

    #432
  • aarthificial's avatar

    Fix performance issue with audio track.

    #427
  • aarthificial's avatar

    Clear semi-transparent backgrounds.

    #424

Motion Canvas v2.6.0

Β· 2 min read
Jacob
Motion Canvas Creator

New features πŸŽ‰β€‹

  • ksassnowski's avatar

    You can now

    store the state of a node

    and restore it at a later point.

    #406
  • Ross-Esmond's avatarCodeBlock

    is now exported together with other nodes. An improved theme system with the new

    stockTheme

    property lets you use VS Code themes (powered by Shiki)

    #401
  • aarthificial's avatar

    New

    alignContent

    and

    alignItems

    Flexbox properties.

    #405
  • ksassnowski's avatar

    New

    zIndex

    property allows you to change the rendering order of child nodes, without rearranging the hierarchy.

    #398
  • WaldemarLehner's avatar

    New

    Icon

    node:

    <Icon icon={"mdi:typewriter"} size={200} color="white" />

    Check out IcΓ΄nes for the list of all possible icons.

    #306
  • WaldemarLehner's avatar

    Images can now be loaded from the internet. For images with incompatible CORS headers, a new CORS Proxy can be enabled.

    #357
  • aarthificial's avatar

    New look for the release blog.

    #410

Fixed bugs πŸ›β€‹

  • aarthificial's avatar

    Handle division by zero in lines

    #407

Motion Canvas v2.5.0

Β· One min read
Jacob
Motion Canvas Creator

New features πŸŽ‰β€‹

  • gustavneustadt's avatar

    New

    spring

    interpolation.

    #356
  • aarthificial's avatarclosed

    property lets you make wedges using Circles.

    #378
  • DanielBreiner's avatar

    New

    fadeTransition

    .

    #384
  • ksassnowski's avatar

    The

    range

    function now accepts an additional step parameter.

    #373
  • dariasc's avatar

    View2D now extends Rect allowing you to change the background color of a scene using the fill property.

    #379

Fixed bugs πŸ›β€‹

  • aarthificial's avatar

    Support Color to null tweening.

    #387
  • aarthificial's avatar

    Plug memory leaks.

    #385
  • aarthificial's avatar

    Fix signal initialization.

    #382
  • aarthificial's avatar

    Handle floating point errors in acos.

    #381

Motion Canvas v2.4.0

Β· 3 min read
Jacob
Motion Canvas Creator

Features​

Bug Fixes​