Commit Graph

  • 37c9b449c6 Never crash: media crate without expect() Brandon ThomasandClaude Opus 5.5 2026-10-04 12:18:36 -04:00
  • 8e4e29844e Never crash: PDF close-path operators and CFF outlines without a current point Brandon ThomasandClaude Opus 5.5 2026-10-04 12:15:02 -04:00
  • 6708ff55b4 Never crash: SVG path data no longer loops forever on a number after Z Brandon ThomasandClaude Opus 5.5 2026-10-04 12:14:58 -04:00
  • ed54a8cd15 Never crash: interchange export/import without expect() Brandon ThomasandClaude Opus 5.5 2026-10-04 12:10:09 -04:00
  • 3861b6d043 Merge pull request #13 from storytold/m3-project-operations BFlat 2026-10-04 23:05:45 +07:00
  • e0ed28f55d M3.9: closing a modified project asks to save it first; the modified mark follows undo m3-project-operations bflatasticandClaude Opus 5.5 2026-10-04 23:02:14 +07:00
  • 0da12c676f Never crash: steering rules, clippy.toml, forbid unsafe Brandon ThomasandClaude Opus 5.5 2026-10-04 11:43:47 -04:00
  • 10644a83aa Merge pull request #11 from storytold/pr/license-standard Brandon Thomas 2026-10-04 10:09:09 -04:00
  • 93c858688b Licensing: standard LICENSE files, NOTICE, ArtCraft brand terms Brandon ThomasandClaude Opus 5.5 2026-10-04 10:05:24 -04:00
  • 0a8cdfc67e Scripting: Property.keyInSpatialTangent / keyOutSpatialTangent under their AE names storybored379andClaude Opus 5.5 2026-10-03 23:36:10 -07:00
  • 3411fc80ab Keyframes: a Hold key no longer eases the motion into it storybored379andClaude Opus 5.5 2026-10-03 23:36:10 -07:00
  • 18fcc48046 Shortcuts: don't bind macOS-only Ctrl+Cmd shortcuts off macOS storybored379andClaude Opus 5.5 2026-10-03 23:36:10 -07:00
  • fb87ac5647 Merge branch 'worktree-agent-a0407bd39e9d4b595' Brandon Thomas 2026-10-04 03:41:14 -04:00
  • a006ed5765 M13.32: web main-thread stall: Warp Stabilizer plans solved in job workers Brandon ThomasandClaude Opus 5.5 2026-10-04 03:40:46 -04:00
  • 402b4cb52f Merge branch 'worktree-agent-abff9a10f06a98f2c' Brandon Thomas 2026-10-04 03:19:26 -04:00
  • f9e1807962 Merge branch 'main' into worktree-agent-abff9a10f06a98f2c Brandon Thomas 2026-10-04 03:16:01 -04:00
  • 3921e6c680 M13.30: Content-Aware Fill in a job worker on its GPU Brandon ThomasandClaude Opus 5.5 2026-10-04 03:15:54 -04:00
  • c8a42b2a26 Merge branch 'worktree-agent-afaf588d9c94630c4' Brandon Thomas 2026-10-04 03:06:47 -04:00
  • c59e0a6407 Merge main into M13.28 worktree Brandon ThomasandClaude Opus 5.5 2026-10-04 02:57:55 -04:00
  • 91f4a603a9 Merge branch 'main' into worktree-agent-abff9a10f06a98f2c Brandon Thomas 2026-10-04 02:57:35 -04:00
  • f3715aac32 M13.30: web depth and polish Brandon ThomasandClaude Opus 5.5 2026-10-04 02:57:17 -04:00
  • 6f7e536ca6 M13.28: architecture notes for the part C GPU effects Brandon ThomasandClaude Opus 5.5 2026-10-04 02:56:16 -04:00
  • c4315818da M13.28: GPU generators (fx_gen2): Lightning, Advanced Lightning, Beam, Lens Flare, Radio Waves, Vegas, Stroke, Scribble, Write-on, Paint Bucket, Eyedropper Fill, CC Glue Gun, CC Threads, Audio Spectrum/Waveform, Basic Text, Path Text Brandon ThomasandClaude Opus 5.5 2026-10-04 02:56:00 -04:00
  • f1a999edbe Merge branch 'worktree-agent-a11430ddf8ce9f23d' Brandon Thomas 2026-10-04 02:34:35 -04:00
  • 2d41ce612d M13.29: ROADMAP GPU effect count Brandon ThomasandClaude Opus 5.5 2026-10-04 02:33:51 -04:00
  • 47be3e18f3 Merge main into M13.29 worktree Brandon Thomas 2026-10-04 01:36:27 -04:00
  • 1c855c3e07 M13.29: GPU effects part D (particles and remaining fallbacks) Brandon ThomasandClaude Opus 5.5 2026-10-04 01:35:56 -04:00
  • 5df9cde182 M13.28: GPU pixel ports (fx_pixel2): CC Cross/Radial/Vector Blur, Reduce Interlace Flicker, CC Composite, Color Link, Cineon, HDR Compander/Highlight Compression, Grow Bounds, CC Overbrights, CC Block Load, CC Burn Film, CC Glass/Plastic, CC HexTile, CC Mr. Smoothie, Inner/Outer Key, CC Simple Wire Removal, Basic 3D Brandon ThomasandClaude Opus 5.5 2026-10-04 01:33:54 -04:00
  • 764c3a31ad M13.28: golden hashes of the plan-drawn CPU effects (pinned before the GPU refactor) Brandon ThomasandClaude Opus 5.5 2026-10-04 01:06:40 -04:00
  • b9f09869eb M13.29: particle effects golden hashes Brandon ThomasandClaude Opus 5.5 2026-10-04 01:04:43 -04:00
  • 51c21931ca Parity audit at d39c0e8: ≈99% weighted, 89/3/0, every P0 feature done Brandon ThomasandClaude Opus 5.5 2026-10-04 01:01:21 -04:00
  • d39c0e818c Merge branch 'worktree-agent-a9fea98fe9839069d' Brandon Thomas 2026-10-04 00:53:58 -04:00
  • d5bb5ad994 Merge branch 'main' into worktree-agent-a9fea98fe9839069d Brandon Thomas 2026-10-04 00:52:53 -04:00
  • 14f9c44915 Merge branch 'worktree-agent-a3d97efbded4f5ed3' Brandon Thomas 2026-10-04 00:50:49 -04:00
  • b3a228ed74 Merge branch 'main' into worktree-agent-a3d97efbded4f5ed3 Brandon Thomas 2026-10-04 00:50:03 -04:00
  • ce6ece4cd4 M13.27: sim effects golden hashes Brandon ThomasandClaude Opus 5.5 2026-10-04 00:50:03 -04:00
  • b73028d999 Merge branch 'main' into worktree-agent-a9fea98fe9839069d (filmcraft rev 2c5ba7a: AAF and OMF interchange) Brandon ThomasandClaude Opus 5.5 2026-10-04 00:45:00 -04:00
  • 8cb6d34c58 M13.26: import command keeps After Effects' menu label Brandon ThomasandClaude Opus 5.5 2026-10-04 00:41:06 -04:00
  • 1b61d81f3b Merge branch 'worktree-agent-a139f16b3a4130998' Brandon Thomas 2026-10-04 00:39:13 -04:00
  • 3ee5823429 Merge branch 'worktree-agent-a51902829f462d739' Brandon Thomas 2026-10-04 00:26:41 -04:00
  • 05b614990b Merge branch 'main' into worktree-agent-a9fea98fe9839069d Brandon Thomas 2026-10-04 00:25:43 -04:00
  • 955422819c M13.26: Premiere Pro interop commands (file.importTimeline, file.exportTimeline with ProRes 4444 pre-renders), File menu entries, export dialog, docs and pixel round-trip tests Brandon ThomasandClaude Opus 5.5 2026-10-04 00:25:43 -04:00
  • 808ca70d47 Merge origin/main (M13.22 GPU effects part A) into M13.23: both GPU effect lists (236), docs recounted Brandon Thomas 2026-10-04 00:17:37 -04:00
  • 299fe09efe Merge branch 'main' into worktree-agent-a139f16b3a4130998 Brandon Thomas 2026-10-04 00:15:57 -04:00
  • 32c53aa35e av1enc tests: decode with a single-threaded filmcraft-av1 decoder Brandon ThomasandClaude Opus 5.5 2026-10-04 00:15:39 -04:00
  • fe80862eeb M13.26: effectcraft-interchange crate (L3): timeline documents to compositions and back via filmcraft-interchange (FCP7 XML, FCPXML, OTIO, EDL) Brandon ThomasandClaude Opus 5.5 2026-10-04 00:05:54 -04:00
  • 7c675124ae Merge origin/main (M13.24) into M13.23 Brandon Thomas 2026-10-03 23:59:41 -04:00
  • 4a2ca9115b M13.23: Shatter wireframe views and Foam's texture / map extras fall back via gpu_supported (no readback attempt) Brandon ThomasandClaude Opus 5.5 2026-10-03 23:59:22 -04:00
  • 7a5a93bcbc Merge branch 'worktree-agent-a38a174c36aa9f23a' Brandon Thomas 2026-10-03 23:59:12 -04:00
  • d3a7777939 Merge branch 'main' into worktree-agent-a139f16b3a4130998 Brandon Thomas 2026-10-03 23:57:57 -04:00
  • cc5c831c0a media: WebM VP9 alpha imports as straight alpha (FilmCraft 2c5ba7a) Brandon ThomasandClaude Opus 5.5 2026-10-03 23:57:57 -04:00
  • ca9a30bf0c Merge branch 'main' into worktree-agent-a38a174c36aa9f23a Brandon Thomas 2026-10-03 19:52:55 -04:00
  • 8ea5b861ed Merge branch 'worktree-agent-acd022ffe72ec3783' Brandon Thomas 2026-10-03 19:08:20 -04:00
  • 49d0c16c9f M13.23: docs — GPU effects part B (parity EFF-5, architecture GPU section, ROADMAP count, gpu crate docs) Brandon ThomasandClaude Opus 5.5 2026-10-03 18:36:26 -04:00
  • a55b07ef01 Merge main into M13.23 Brandon Thomas 2026-10-03 18:35:42 -04:00
  • 7d9f369a5e Merge branch 'main' into worktree-agent-acd022ffe72ec3783 Brandon Thomas 2026-10-03 18:35:29 -04:00
  • 1ec9336d7c M13.23: GPU simulation render passes Brandon ThomasandClaude Opus 5.5 2026-10-03 18:35:22 -04:00
  • 1b726349ab M13.24: web app depth (WEB-1) — GPU effects in frame workers, OPFS disk cache, storage manager Brandon ThomasandClaude Opus 5.5 2026-10-03 18:35:03 -04:00
  • 590c85bfb0 Merge branch 'main' into worktree-agent-a38a174c36aa9f23a Brandon Thomas 2026-10-03 18:28:15 -04:00
  • 5d8ad635ad M13.22: docs — architecture GPU section (time / text / transition families, Advanced 3D split runs and skies on the GPU), parity (EFF-5, 196 GPU effects) Brandon ThomasandClaude Opus 5.5 2026-10-03 18:27:39 -04:00
  • 0c4e533460 M13.22: GPU compositing of Advanced 3D runs with blend modes, track mattes (2D and 3D), Preserve Transparency, and environment backgrounds (Classic and Advanced 3D skies) Brandon ThomasandClaude Opus 5.5 2026-10-03 18:26:06 -04:00
  • bbe29e7c5b Merge branch 'worktree-agent-aab5c21557d20742c' Brandon Thomas 2026-10-03 18:20:21 -04:00
  • bae3ccc410 Merge branch 'main' into worktree-agent-aab5c21557d20742c Brandon Thomas 2026-10-03 18:14:17 -04:00
  • 3881dbb32e M13.25: Home Templates gallery (thumbnails, open, delete, Save Current as Template), Save as Template and My Custom RGB dialogs, form automation ids; parity update Brandon ThomasandClaude Opus 5.5 2026-10-03 18:14:17 -04:00
  • a909de43b7 M13.22: GPU time effects (Time Difference, Time Displacement, CC Force Motion Blur, CC Wide Time, Pixel Motion Blur, Timewarp's frame building; motion vectors and frame fetches on the CPU) Brandon ThomasandClaude Opus 5.5 2026-10-03 17:57:03 -04:00
  • 2e5ea051a8 M13.23: GPU Immersive Video effects Brandon ThomasandClaude Opus 5.5 2026-10-03 17:53:23 -04:00
  • d0b92948ee M13.22: GPU transitions and perspective (Block Dissolve, CC Glass/Grid/Image Wipe, CC Jaws, CC Line Sweep, CC Radial ScaleWipe, CC Scale Wipe, CC Twister, CC WarpoMatic, Radial Shadow, CC Bender, CC Blobbylize, CC Cylinder, CC Sphere, CC Spotlight, CC Environment, 3D Glasses) and text (Numbers, Timecode: CPU glyph coverage, GPU composite) Brandon ThomasandClaude Opus 5.5 2026-10-03 17:48:02 -04:00
  • 9e70cde725 M13.25: View > Simulate Output > My Custom RGB (primaries, white, gamma or an RGB ICC profile; kept in Settings; view.customRgb) and File menu entries for templates Brandon ThomasandClaude Opus 5.5 2026-10-03 17:46:41 -04:00
  • e3e35a7ec2 M13.23: GPU colour management (LUTs, OCIO, Color Profile Converter, Lumetri LUT/look) Brandon ThomasandClaude Opus 5.5 2026-10-03 17:43:24 -04:00
  • b760f1d23a M13.25: project templates engine — eight original built-in templates with Essential Graphics controls and rendered thumbnails; user .ectemplate templates in the config Templates folder; templates.list/thumbnail/create/saveAs/delete Brandon ThomasandClaude Opus 5.5 2026-10-03 17:37:18 -04:00
  • 6b91afc087 M13.23: GPU 3D Channel effects (aux channels as textures) Brandon ThomasandClaude Opus 5.5 2026-10-03 17:33:41 -04:00
  • f7927c8f9f M13.22: GPU CC light family (CC Light Rays, CC Light Burst 2.5, CC Light Sweep, CC Light Wipe) Brandon ThomasandClaude Opus 5.5 2026-10-03 17:31:26 -04:00
  • f256677c8e Parity audit at 58163a2: ≈98% weighted (99.6% with fractions), 87/5/0, ≈2–2.5 h wall clock left Brandon ThomasandClaude Opus 5.5 2026-10-03 17:26:06 -04:00
  • 081ce79de3 Merge M13.14 agent-interface audit + lazy open (worktree-agent-a5f8967ebd42ce98b) Brandon ThomasandClaude Opus 5.5 2026-10-03 17:23:10 -04:00
  • 58163a28fb Merge pull request #5 from storytold/docs-accuracy BFlat 2026-10-04 01:16:08 +07:00
  • 8a7142f9eb Merge pull request #4 from storytold/timeline-properties BFlat 2026-10-04 01:16:00 +07:00
  • 2c056ae6cf Docs: accuracy pass — README (306 effects, the web build ships, HEVC/AV1 export, pure-Rust encoders are FilmCraft's plus our own, an accurate 'still to come' list instead of features that exist), ROADMAP (M11 done, M12 mostly done, M13 done, all effects in full), parity summary (no simplified effects left), preferences (web storage is OPFS/IndexedDB; the in-window macOS menu bar setting), CLAUDE.md (the Illustrator sibling is ../vectorcraft) bflatastic 2026-10-04 01:13:21 +07:00
  • f95eface83 M13.20: docs — README (Timeline shortcuts and Puppet tools), control protocol (reveal / keyAt / twirlSelected UI commands, timeline.layer.<id>.row and viewer.puppetPin.<uid> element ids), agents guide (Timeline: layer.arrange above, reveal shortcuts, keys.toggleTransform, rename), architecture (puppet selection, rigging and follow-through; per-thread expression context recovery), parity (M13.17–M13.20) bflatastic 2026-10-04 01:10:36 +07:00
  • f9990f7387 M13.20: every Timeline property shortcut — double presses AA (Material Options), PP (paint / Roto Brush / Puppet), SS (selected properties), RR (Time Remap), TT (Mask Opacity), MM (all mask properties; a single M now shows Mask Path), FF (missing effects), EE (expressions) next to LL and UU; Alt+Shift+A/P/S/R/T add or remove a keyframe at the current time on every selected layer in one undo step (keys.toggleTransform: separated X/Y/Z Position, Orientation and X/Y/Z Rotation on 3D layers); Ctrl/Cmd+` twirls the selected layers open or closed (from a reveal, their full tree) bflatastic 2026-10-04 01:10:33 +07:00
  • aef72378f8 M13.19: the Timeline's rename field and twirl arrows work — the name field took the keyboard focus every frame (Enter and clicking away could never leave it, which also silenced every single-key shortcut); it now focuses once with the name selected, Enter or a click elsewhere commits, Escape cancels; the layer row's click area sat on top of the twirl arrow and the name field (it was registered after them) and now sits under them; Ctrl-click a layer's arrow opens every group inside bflatastic 2026-10-04 01:09:20 +07:00
  • ba3748f79e Merge pull request #3 from storytold/timeline-viewer-fixes BFlat 2026-10-04 00:33:54 +07:00
  • 52cf74e997 M13.18: drag layer rows in the Timeline to reorder them — a line shows where they land, the selected layers move together (an unselected row moves alone), one undo step, nothing for a drop in place; layer.arrange {above: layer} for agents bflatastic 2026-10-04 00:30:33 +07:00
  • bb973e2c76 M13.17: the viewer keeps its pan after a middle-button or Hand drag — egui reports no total drag on the release frame, so the pan was recomputed as the drag's start and snapped back bflatastic 2026-10-04 00:30:29 +07:00
  • bb06a66083 Merge pull request #2 from storytold/puppet-rigging BFlat 2026-10-04 00:26:24 +07:00
  • 78dceea638 M13.16: docs: parity cites the renumbered puppet tasks (M13.14–M13.16) bflatastic 2026-10-04 00:22:30 +07:00
  • a02bcc8441 M13.16: puppet Follow-Through — puppet.follow (Puppet tool bar ▸ Follow-Through…) makes pins trail a leader pin for hair, cloth and overlapping action: each follower's Position adds the leader's displacement from rest delayed by delay (the k-th nearest by k × delay with Cascade), scaled by Amount, keeping its own keyframes; leader = the first selected pin, followers = the others; one undo step; reachable over MCP (execute_command) bflatastic 2026-10-04 00:19:26 +07:00
  • 6ec177de83 M13.15: rig puppet pins to nulls — Points Follow Nulls / Nulls Follow Points (Window ▸ Create Nulls From Paths, paths.* {pins?}) take selected pins, named pins, or every pin of a layer with no path: a null per Position / Advanced pin drives its Position (fromComp of the null's anchor, so parented nulls rig limbs), or rides on it (toComp of the pin's Position) to carry other layers; one undo step bflatastic 2026-10-04 00:19:25 +07:00
  • 6869cff51b M13.14: puppet pin editing — click / Shift-click selects pins (puppet.selectPins), a drag from empty canvas or Alt-drag marquee-selects them, Select All with a pin selected takes every pin of that kind, Delete removes the selected pins instead of their layer; Advanced and Bend pins rotate by their ring and scale by its square (Shift: 15° / 5 % steps, one undo step per drag); ⌘/Ctrl-dragging one of several selected pins records them all; pins in their kind's colour, larger under the pointer; pushpin icons for the five pin tools bflatastic 2026-10-04 00:19:24 +07:00
  • 244cee4687 M8.1: expressions keep working on long-lived threads — boa leaves values on its VM stack when an exception unwinds through call frames (every pending host request does), so after tens to hundreds of evaluations that read layers or effects every expression on the thread failed with "maximum stack size"; a run that hits the limit now gets a fresh context and is retried once (regression test: 6000 host-reading evaluations on one thread) bflatastic 2026-10-04 00:19:22 +07:00
  • 91bd8ca7c8 Merge main into M13.14 Brandon Thomas 2026-10-03 13:13:50 -04:00
  • 9890a82796 Merge branch 'worktree-agent-a6553844386fd3ca8' Brandon Thomas 2026-10-03 13:10:45 -04:00
  • 56b3917a14 Merge main into M13.15 Brandon Thomas 2026-10-03 13:00:33 -04:00
  • 8b43adb8a0 Merge main into M13.14 Brandon Thomas 2026-10-03 12:59:27 -04:00
  • e2d7a5a182 M13.15: qa batch tool and reply affordances Brandon ThomasandClaude Opus 5.5 2026-10-03 12:56:58 -04:00
  • 12235b5dc5 M13.15: qa project lifecycle; Collect Files makes its folder; agents cookbook Brandon ThomasandClaude Opus 5.5 2026-10-03 12:56:41 -04:00
  • 780419c235 Compositions: reject zero and negative frame rates instead of panicking storybored379andClaude Opus 5.5 2026-10-03 09:31:41 -07:00
  • 0ae7a1925a Expressions: keep the runtime usable after errors and property reads storybored379andClaude Opus 5.5 2026-10-03 09:31:41 -07:00
  • 77ab92fb7d M13.15: qa essential graphics template via CLI script Brandon ThomasandClaude Opus 5.5 2026-10-03 12:30:11 -04:00
  • 97329edb39 M13.14: performance section with before/after numbers; test tidy Brandon ThomasandClaude Opus 5.5 2026-10-03 12:17:46 -04:00
  • 9fb375e4b0 Merge branch 'worktree-agent-a4b0610bd14276508' Brandon Thomas 2026-10-03 12:17:22 -04:00