Skip to content

Releases: invoke-ai/InvokeAI

v5.0.0.rc2

23 Sep 21:46
Compare
Choose a tag to compare
v5.0.0.rc2 Pre-release
Pre-release

Invoke 5.0

Invoke 5.0 is a major change in the user experience of utilizing Invoke. It's been through multiple rounds of alpha testing, and the experience has evolved into a very significant enhancement for many creatives using the tool. We hope this video will help everyone smoothly transition to the new UI.

Invoke 5.0 Update Video

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Flux

We're excited to announce expanded Flux integration within the InvokeAI ecosystem. In this release, you can now leverage Flux models directly on the canvas to simplify many of your standard tasks. With Flux models, you will now be able to use Inpainting, Raster Layers, and Loras, with many more features on the way!

We're also beta testing our Optimized Inpainting mode for Flux. You'll see Flux operate with a different image to image functionality than base Flux normally runs inference. This will change significantly as we tune the inpainting feature for continually optimizing the flexibility in denoising control. Please test it out and give us feedback.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Updates since rc1

Fixes

  • Fix: Transform UI translations
  • Fix: Last staged/progress image flashes when accepting staged image
  • Fix: Lag when discarding staging area entirely
  • Fix: Hide tool preview (e.g. the brush preview) while filtering
  • Fix: Bbox not centered on first app startup (janky fix but it works for now...)

Enhancements

  • Feat: Add fit bbox to canvas hotkey
  • Feat: Add color swatches to mask fill color picker
  • Feat: Handle FLUX bbox constraints
  • Feat: On accept staging area image, if a raster layer is selected, switch to the new raster layer, else do not switch selected layer
  • Feat: Improve layout of canvas toolbar view buttons
  • Feat: Rework isolated preview logic - now split into isolated staging preview, isolated filtering preview, isolated transforming preview - add toggles on canvas settings popover & filter/transform popups
  • Feat: Reworked models loaded listener, fixes bug where incorrect model type cold be selected for upscaling model
  • Feat: Canvas send-to alerts are not dismissable

Tidy

  • Tidy: Remove useless use size button on IP adapter images
  • Tidy: Mark core metadata node internal

Internal

  • Internal: Split up staging area toolbar components

Installation and Updating

To install or update to v5.0.0.rc2, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

Read more

v5.0.0.rc1

21 Sep 03:09
a5cfde4
Compare
Choose a tag to compare
v5.0.0.rc1 Pre-release
Pre-release

Invoke 5.0

Invoke 5.0 is a major change in the user experience of utilizing Invoke. It's been through multiple rounds of alpha testing, and the experience has evolved into a very significant enhancement for many creatives using the tool. We hope this video will help everyone smoothly transition to the new UI.

Invoke 5.0 Update Video

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Flux

We're excited to announce expanded Flux integration within the InvokeAI ecosystem. In this release, you can now leverage Flux models directly on the canvas to simplify many of your standard tasks. With Flux models, you will now be able to use Inpainting, Raster Layers, and Loras, with many more features on the way!

We're also beta testing our Optimized Inpainting mode for Flux. You'll see Flux operate with a different image to image functionality than base Flux normally runs inference. This will change significantly as we tune the inpainting feature for continually optimizing the flexibility in denoising control. Please test it out and give us feedback.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.rc1, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

New Contributors

Full Changelog: v5.0.0.a8...v5.0.0.rc1

v5.0.0.a8

19 Sep 03:26
Compare
Choose a tag to compare
v5.0.0.a8 Pre-release
Pre-release

This is an alpha release. Features in this version are still under active development and may not be stable.

Your feedback is particularly important for this release, which makes big changes.

Changes since Alpha 7

Fixes

  • Fix: Ordering of layers in menu.
  • Fix: Add thresholding to lineart & lineart anime filter nodes. These nodes tend to output edge maps with not-quite-black backgrounds. SD1.5 controlnets are OK with this, but SDXL controlnets are not. The thresholding ensures the edge map outputs of the nodes have a pure black background, preventing artifacts when editing Control Layers on canvas.
  • Fix: FLUX progress image now shows only changing area during inpainting.
  • Fix: Jank when resetting mask during drawing.
  • Fix: Edge cases with staging and queue status/counts
  • Fix: Hide the scaled bbox from HUD when scaling is disabled
  • Fix: Tiny artifacts related to scaling in canvas (does not affect generation, but its ugly)
  • Fix: Duplicate alt+a hotkey
  • Fix: Disallow creating new layers while staging
  • Fix: Handle deleting control layers when deleting image
  • Fix: Delete hotkey not working as expected

Enhancements

  • Feat: Initial FLUX LoRA support. Thanks @RyanJDick !
  • Feat: Initial FLUX support in linear UI. Thanks @maryhipp !
  • Feat: Updated icons.
  • Feat: Reset canvas when deleting images used on canvas.
  • Feat: Copy layer to clipboard.
  • Feat: Save layer to assets.
  • Feat: Reworked queue controls (invoke button area), restoring the menu.
  • Feat: Only show raster layers while staging (configurable in settings).
  • Feat: Updated hotkey list & internal hotkey implementation.

Internal

  • Internal: React error w/ canvas drop zone targets.
  • Internal: Use zod schema to model canvas state, so that if we load full state from an external source we can be confident it is in the right format.

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.a8, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

Full Changelog: v5.0.0.a7...v5.0.0.a8

v5.0.0.a7

16 Sep 12:46
Compare
Choose a tag to compare
v5.0.0.a7 Pre-release
Pre-release

This is an alpha release. Features in this version are still under active development and may not be stable.

Your feedback is particularly important for this release, which makes big changes.

Changes since Alpha 6

Fixes

  • Fix: Right click opens image in new tab
  • Fix: "Pull Bbox Into..." translations
  • Fix: Gallery sometimes not filling up with images
  • Fix: Removed button from staging area that shouldn't be there

Enhancements

  • Feat: Rename "IP Adapter" -> "Reference Image"
  • Feat: Close Viewer button in Viewer is an Icon
  • Feat: Split up various menus into Global/Regional/Layers
  • Feat: Tighten up IP Adapter settings layout
  • Feat: Gallery image hover button to open in viewer
  • Feat: Drop overlay styles (easier to which drop area is active)
  • Feat: Add ref image drop areas to canvas

Internal

  • Internal: Rename regions state to regionalGuidance
  • Internal: Tidy up a lot of utilities for canvas state mgmt

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.a7, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

Full Changelog: v5.0.0.a6...v5.0.0.a7

v5.0.0.a6

15 Sep 00:50
Compare
Choose a tag to compare
v5.0.0.a6 Pre-release
Pre-release

This is an alpha release. Features in this version are still under active development and may not be stable.

Your feedback is particularly important for this release, which makes big changes.

Changes since Alpha 5

Fixes

  • Fix: Doing almost anything w/ an IP adapter errors
  • Fix: Disable the transformer while canvas is busy, preventing accidentally moving layers during staging or other operations
  • Fix: Cursor sometimes disappears or is unresponsive during staging
  • Fix: Bbox sometimes not interactable after staging
  • Fix: Do not floor stage coordinates when setting thing (I don't think this actually had any functional impact)
  • Fix: Wonky layouting for overlay alerts
  • Fix: Output only masked regions was inverted
  • Fix: Checkerboard background slightly larger than canvas (it is now rendered on the canvas instead of as a DOM element)
  • Fix: Progressive image quality degradation

Enhancements

  • Feat: Move canvas reset button out of the settings popover
  • Feat: Bbox overlay (adds dark overlay outside the bbox)
  • Feat: More detailed repr outputs for all classes
  • Feat: Preserve mask (i.e. inverted inpaint mask)
  • Feat: Middle-mouse click on any image opens it in new tab
  • Feat: Use Phosphor icons for all icons (except discord and GH logos)
  • Feat: Rename Generation tab to Canvas
  • Feat: Diff icons for canvas context menu

Internal

  • Internal: Cleanup some use of nanostores

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.a6, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

Full Changelog: v5.0.0.a5...v5.0.0.a6

v5.0.0.a5

13 Sep 12:50
Compare
Choose a tag to compare
v5.0.0.a5 Pre-release
Pre-release

This is an alpha release. Features in this version are still under active development and may not be stable.

Your feedback is particularly important for this release, which makes big changes.

Changes since Alpha 4:

  • Fix: Wrong translation used for transform's fit to bbox
  • Fix: Off-by-one error with layer z-index (unsure if it actually caused any problems)
  • Fix: Adjusting opacity during filtering causing empty image to be filtered
  • Fix: Ensure filtering is done with layer at opacity 1
  • Fix: infinite recursion (i.e. a crash) when selecting spandrel filter w/ no spandrel models installed
  • Fix: translations for spandrel filter
  • Feat: Close viewer when sending gallery image to canvas
  • Feat: Disable progress images on canvas
  • Feat: Brighter border around fill color buttons
  • Feat: Upload button on control layer
  • Feat: Canvas interaction restrictions (e.g. no tools while staging, no undo/redo while transforming, etc etc)
  • Feat: Rename "Composite Masked Regions" -> "Output Only Masked Regions"
  • Feat: Show alert when selected layer is empty
  • Feat: Handle error conditions when sending to gallery
  • Feat: Add filter/transform/delete to canvas context menu
  • Feat: On-theme checkerboard pattern
  • Feat: Filter process button does immediate processing (before it had a delay)
  • Feat: Bbox has black and white outline (before was white only)
  • Feat: Regions start w/ no prompt or IP adapter
  • Internal: Revised Result type, docstrings, tidy
  • Internal: Prep for FLUX LoRA support

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.a5, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

Full Changelog: v5.0.0.a4...v5.0.0.a5

v5.0.0.a4

12 Sep 14:19
Compare
Choose a tag to compare
v5.0.0.a4 Pre-release
Pre-release

This is an alpha release. Features in this version are still under active development and may not be stable.

Your feedback is particularly important for this release, which makes big changes.

Changes since Alpha 3:

  • Feat: Reworked UX for Send to Gallery & Send to Canvas
  • Feat: Alerts when your generations are going to a different view (configurable in settings)
  • Feat: Big viewer is back, mini viewer got the axe
  • Fix: Escape doesn't totally clear gallery selection - just resets to the a single image selected
  • Fix: Canvas progress images do not show in viewer

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.a4, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

Full Changelog: v5.0.0.a3...v5.0.0.a4

v5.0.0.a3

12 Sep 02:06
Compare
Choose a tag to compare
v5.0.0.a3 Pre-release
Pre-release

This is an alpha release. Features in this version are still under active development and may not be stable.

Your feedback is particularly important for this release, which makes big changes.

Changes since Alpha 2:

  • Fix: Resetting canvas fully reset initial inpaint mask
  • Fix: Layers tab counter indicator only includes active (enabled & not empty) entities
  • Feat: Ctrl/Cmd+Y to redo
  • Feat: Do not group brush/eraser/rect actions in undo/redo history
  • Fix: Disable the filter Process button when auto-processing is enabled
  • Fix: Invoke button tooltip says if in send-to-canvas mode
  • Internal: Make the delete board modal a singleton
  • Fix: Resizable panels now remember their sizes/state
  • Fix: When converting a raster to control layer, populate the model field
  • Fix: Change how canvas listens to page resize events, fixing rare issues where it misses an event and the stage doesn't resize correctly
  • Fix: Do not reset the boards search term when collapsing the boards list section
  • Feat: New more generalized nodes for all "controlnet processors" which replace the existing filters:
    • These nodes now the model manager for loading and caching the models
    • Fixed issues where filters change the size of images unexpectedly
    • Add Classification.Deprecated for nodes & use this to hide the old funky processor nodes
  • Fix: race condition causing the progress bar & queue counter to be stale
  • Feat: If filtering a control layer, the default filter selection is linked to selected control model
  • Feat: Add filter button next to control model select menu
  • Feat: Drag an image onto a control or raster layer to replace that layer's content with the image
  • Feat: Pull Bbox Into button for Control Layers, Global IP Adapters and Regional IP Adapters

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.a3, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

Full Changelog: v5.0.0.a2...v5.0.0.a3

What's Changed

Full Changelog: v5.0.0.a2...v5.0.0.a3

v5.0.0.a2

10 Sep 13:59
Compare
Choose a tag to compare
v5.0.0.a2 Pre-release
Pre-release

This is an alpha release. Features in this version are still under active development and may not be stable.

Your feedback is particularly important for this release, which makes big changes.

Changes since Alpha 1:

  • Fix: Drag over gallery/layers tab in right panel doesn't work
  • Fix: Translation string for gallery tab
  • Fix: Retain global canvas manager instance when its container unmounts (fixes issue with tool and canvas caches getting nuked when you change tabs)
  • Fix: Conflict hotkeys for brush size and layer cycle
  • Feat: Add count to layers tab
  • Feat: Add canvas context menu (so far only has actions to save bbox / send bbox to layer)
  • Chore: Bump UI library (fixes issue w/ stuck modifier keys if you alt-tab away from invoke while holding them down)
  • Internal: Clean up main canvas hook & container component

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.a2, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

Full Changelog: v5.0.0.a1...v5.0.0.a2

v5.0.0.a1

09 Sep 19:49
Compare
Choose a tag to compare
v5.0.0.a1 Pre-release
Pre-release

This is an alpha release. Features in this version are still under active development and may not be stable.

Your feedback is particularly important for this release, which makes big changes.

Canvas v2

image

The Generation & Canvas UIs have been merged into a unified experience as part of our Control Canvas release. This enhances the interaction between all your favorite features for a more intuitive and efficient workflow. Highlighted below are the key improvements and new additions that bring this experience to life.

Control Canvas

To orient existing users, you’ll find that the core generation experience is now optimized and geared towards maximizing control. There are two main workflows that users have primarily geared towards in the past:

  • Batch Generation: Generating a large number of images/iterations into the Gallery by varying/tweaking different settings.
  • Composition: Working continuously on a single composition, with multiple iterations and edits.

Both of these workflows have increasingly gravitated towards a canvas for control mechanisms like ControlNet, Initial Image, and more. Now, with the power of our Control Canvas, including a full layer system, you’ll be able to use the same Canvas controls in both of these workflows.

The destination of your generations can be set at the top of your Layers & Gallery tab, with Gallery generations saving a new copy of the image to your gallery with each generation, and Canvas generations creating a new Raster layer in the bounding box on the canvas.

This is one of the big changes with v5.0, and a major point we’re looking for feedback on during alpha testing. We ask that you try to approach it with an open mind, and highlight areas where you find sustained friction, as opposed to just managing the initial shock and adjustment of change.

Layers

Carrying forward from the Control Layers release, the full suite of controls is now available on the Canvas, with some notable enhancements.

Layer Types

Each control layer on the canvas is now manageable as a moveable and editable layer. You can create multiple layers, manipulate and transform them, and compose the full set of generational controls before generating your invocation.

The naming of these layers is likely to change. A full write-up of the layers will be as we work towards a stable release.

Control Editing

When using ControlNet models, the control image can now be manipulated as a layer. Instead of managing processors just for ControlNets, any layer can now have a processors applied as Filters. Unless your control layer is a pre-processed image, remember to apply the appropriate filter before generation.

One notable benefit of this approach is that creators are now able to draw and manipulate the control images directly. While tablet support is currently limited, we intend to expand that along with some additional pressure sensitivity/brushing options to streamline that part of leveraging the tool. In the meantime, use a white brush and eraser to draw and edit your control images.

Other Updates

We'd be here all day if we were to call out every individual change, so we'll hit the highlights and expand on each point as we get closer to the stable release.

  • Layer Types - Inpaint Mask, Regional Guidance, Raster Layer, Control Layer:
    • Inpaint Mask and Raster Layer map to the Canvas v1 Inpaint Mask and Base Layer.
    • Regional Guidance works the same as it does in the current Control Layers canvas.
    • Control Layer (name TBD) is a Raster Layer with a ControlNet stapled on. You can convert a Raster Layer into a Control Layers and back again.
  • Layer Compositing During Generation: You may have multiple Inpaint Masks and Raster Layers, but internally, generation still needs a single input image and mask. We handle this by virtually flattening all enabled Inpaint Masks into a single mask image, and all enabled Raster Layers into a single input image. This does not affect your layers setup - it happens behind the scenes.
  • Control Layer Auto-Background: When a Control Layer has some transparency, we automatically give it a black background. This means you can create a Control Layer, select a white brush and go to town with a scribble. We'll add a black background automatically, as most ControlNet models require. This allows you to stack multiple Control Layers, even if they are of difference sizes, without artifacts at their edges.
  • Layer Type Hiding: When you have even just one of each layer type, the canvas gets pretty hectic. Each layer type has a Hide toggle, which only hides the layers visually. For example, you can hide your Control Layers while you edit a Raster Layer for a cleaner-looking canvas. Hidden layers are still used during generation.
  • Layer Transformation: All layer types may be moved, resized and rotated.
  • Layer Filtering: Raster Layers and Control Layers may be have filters applied. You can apply as many filters as you want.
  • Other Layer Operations: Duplicate, lock, disable, hide all of type, arrange. Merge visible for Raster Layers and Inpaint Masks.
  • Layer Quick Switch: Press q to switch between the last two selected layers. Bookmark a layer to instead switch between the bookmarked layer and the last selected non-bookmarked layer.
  • New Rendering Engine: The canvas rendering engine is a ground-up rewrite, based on konvajs.
  • Canvas Caching: Extensive use of caching greatly improves efficiency. For example, on Canvas v1, if you click Invoke twice without changing anything else, we would export and upload the canvas image data twice. On Canvas v2, that export is cached and reused.
  • Color Picker Quick Switch: Hold alt to temporarily switch to the color picker.
  • Revised Graph Builders: Curious nodeologists might find the updated graphs interesting. You can take a peek by setting Send to Gallery, generate, and load up the output image's workflow.

Installation and Updating

To install or update to v5.0.0.a1, download the installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.

What's Changed

Full Changelog: v4.2.9...v5.0.0.a1