Skyler Lehmkuhl
318720f89d
Fix gamma handling and improve brush canvas performance
...
Color correctness:
- Unpremultiply before the sRGB OETF on the display and export blits;
encoding premultiplied color corrupted antialiased/transparent edges.
- Tag exported video as full-range BT.709 (matrix/primaries/transfer).
- Run perception effects (invert, brightness/contrast, hue/saturation)
in gamma space to match standard editors.
- Interpolate gradients in gamma space across the raster and vector paths.
- Render effect thumbnails in the same linear space as the live pipeline.
Brush performance:
- Store the raster canvas as Rgba16Float (no shadow banding from 8-bit
linear), with an incremental per-tile ping-pong sync replacing the
per-frame full-canvas copy.
- Do the linear->sRGB readback conversion on the GPU and reuse a cached
scratch texture, dropping a ~110ms-per-stroke CPU decode.
Cleanup:
- Single COLOR_WGSL prelude and shared CPU sRGB scalars instead of ~8
duplicated copies of the transfer functions.
- Shared compute-pipeline builder; smudge folded onto the tile-sync path.
2026-06-16 08:32:39 -04:00
Skyler Lehmkuhl
54d5764bd0
Make beats canonical representation rather than seconds
2026-06-02 13:06:36 -04:00
Skyler Lehmkuhl
f372a84313
Massive tempo refactor - make beats canonical time rep and allow them to be non constant
2026-04-02 10:26:01 -04:00
Skyler Lehmkuhl
ae146533d9
Update automation lanes too
2026-04-01 10:17:52 -04:00
Skyler Lehmkuhl
cfb8e4462b
All events now have three time references for seconds, measures/beats, frames
2026-03-30 10:15:55 -04:00
Skyler Lehmkuhl
65a550d8f4
Add piano roll note snapping
2026-03-24 19:24:24 -04:00
Skyler Lehmkuhl
fa40173562
Add automatable volume and pan control to default instruments
2026-03-23 23:27:05 -04:00
Skyler Lehmkuhl
434b488a4c
Merge branch 'rust-ui' of https://git.skyler.io/skyler/Lightningbeam into rust-ui
2026-03-22 18:16:25 -04:00
Skyler Lehmkuhl
f16e651610
work on vector graph
2026-03-22 18:16:17 -04:00
Skyler Lehmkuhl
0d7f15853c
Set default timeline mode based on activity
2026-03-20 21:05:00 -04:00
Skyler Lehmkuhl
6b6ae230a1
Add pitch bend support
2026-03-18 23:11:24 -04:00
Skyler Lehmkuhl
4f3da810d0
Add automation inputs for audio graphs
2026-03-18 11:25:48 -04:00
Skyler Lehmkuhl
8acac71d86
Merge branch 'rust-ui' of https://git.skyler.io/skyler/Lightningbeam into rust-ui
2026-03-13 18:53:37 -04:00
Skyler Lehmkuhl
c9a9c2c5f0
rewrite vector backend again
2026-03-13 18:53:33 -04:00
Skyler Lehmkuhl
d7a29ee1dc
Double CPU performance by using tiny-skia instead of vello CPU
2026-03-13 18:52:37 -04:00
Skyler Lehmkuhl
3bc980d08d
Use audio engine as source of truth for audio tracks
2026-03-11 12:37:31 -04:00
Skyler Lehmkuhl
ce7ed2586f
Support Vello CPU fallback on systems with older GPUs
2026-03-10 21:39:01 -04:00
Skyler Lehmkuhl
26f06da5bf
Add gradient support to vector graphics
2026-03-10 00:57:47 -04:00
Skyler Lehmkuhl
8bd65e5904
Address Mac build failures
2026-03-09 22:03:51 -04:00
Skyler Lehmkuhl
0ae97f9562
Address Mac build failures
2026-03-09 14:36:54 -04:00
Skyler Lehmkuhl
0066dffc81
Address Mac and Windows build failures
2026-03-09 14:15:08 -04:00
Skyler Lehmkuhl
06973d185c
Merge branch 'rust-ui' of https://git.skyler.io/skyler/Lightningbeam into rust-ui
2026-03-09 13:41:48 -04:00
Skyler Lehmkuhl
dc93f78dc7
More work on DCEL correctness
2026-03-09 13:41:45 -04:00
Skyler Lehmkuhl
78e296ffde
Improve export performance
2026-03-09 13:39:56 -04:00
Skyler Lehmkuhl
a18a335c60
Export images
2026-03-09 11:22:51 -04:00
Skyler Lehmkuhl
09856ab52c
Refactor tools and fix bugs
2026-03-08 18:44:32 -04:00
Skyler Lehmkuhl
0d2609c064
work on raster tools
2026-03-07 16:55:38 -05:00
Skyler Lehmkuhl
a628d8af37
Shape tools
2026-03-07 07:27:45 -05:00
Skyler Lehmkuhl
1900792fa9
Magic wand selection
2026-03-07 03:39:09 -05:00
Skyler Lehmkuhl
1e80b1bc77
Paint bucket
2026-03-07 02:53:47 -05:00
Skyler Lehmkuhl
e7641edd0d
Add blur/sharpen tool
2026-03-06 11:47:10 -05:00
Skyler Lehmkuhl
922e8f78b6
Refactor tools
2026-03-06 10:07:24 -05:00
Skyler Lehmkuhl
901aa04246
Add sponge tool
2026-03-06 09:17:35 -05:00
Skyler Lehmkuhl
6590b249d1
Add dodge/burn tool
2026-03-06 09:05:14 -05:00
Skyler Lehmkuhl
7d55443b2a
Add pattern stamp tool
2026-03-06 08:40:17 -05:00
Skyler Lehmkuhl
1d9d702a59
Add healing brush
2026-03-06 08:25:12 -05:00
Skyler Lehmkuhl
de24622f02
Add clone stamp tool
2026-03-06 08:05:45 -05:00
Skyler Lehmkuhl
2c9d8c1589
Add tool skeletons
2026-03-06 07:22:50 -05:00
Skyler Lehmkuhl
d1f47d7164
Merge branch 'rust-ui' of /home/skyler/Dev/Lightningbeam-2/. into rust-ui
2026-03-06 06:19:48 -05:00
Skyler Lehmkuhl
bff3d660d6
Improve smudge tool
2026-03-06 06:03:33 -05:00
Skyler Lehmkuhl
bc7d997cff
More region select fixes
2026-03-06 05:52:20 -05:00
Skyler Lehmkuhl
f2c15d7f0d
brush fixes and improvements
2026-03-05 20:24:38 -05:00
Skyler Lehmkuhl
f97e61751f
Fix DCEL selection bugs
2026-03-05 19:55:39 -05:00
Skyler Lehmkuhl
292328bf87
add brush library
2026-03-04 16:42:43 -05:00
Skyler Lehmkuhl
63a8080e60
improve painting performance
2026-03-04 15:20:39 -05:00
Skyler Lehmkuhl
16b0d822e3
painting fixes
2026-03-04 14:40:08 -05:00
Skyler Lehmkuhl
885c52c02a
organize raster buffers better
2026-03-02 11:24:12 -05:00
Skyler Lehmkuhl
73ef9e3b9c
fix double paste and make selections always floating
2026-03-02 09:19:55 -05:00
Skyler Lehmkuhl
c1266c0377
remove legacy path that was still dumping into text clipboard
2026-03-02 07:54:14 -05:00
Skyler Lehmkuhl
75e35b0ac6
Don't dump json into text clipboard
2026-03-02 07:30:09 -05:00