Minher0
5b2f305f72
instance3d: a dedicated 3D Layer Instance effect, and the copy is cached
...
CC Composite stays After Effects-pure: its Layer parameter is gone, so
parameter indices match AE again (scripts and expressions that address
parameters by index). The model reference lives in its own effect,
ec.3d.instance3d (3D Channel, CPU, one layer parameter), which replaces
the layer's pixels with the referenced layer's render — alpha included.
A referenced model's solo render is now hashed into the owner's cache key
instead of declining the entry (Bflat, review of #2410 ): the layer, its
animated values and transform, the mesh item, the comp camera and lights,
draft 3D, the renderer setting and the in/out gate. Covered by a render
test: the copy is cached, served on the second render, and re-rendered
when the camera pans or the model leaves its in/out range.
2026-10-29 10:18:17 +00:00
Minher0
36a50a6366
layer.create: the instance copy takes the source's Solo switch
...
A soloed model keeps its Solo switch with its video off, and any_solo
hides non-soloed layers: the copy was excluded and the comp rendered
blank. The copy now takes the Solo over; the source's video stays off.
Covered by instance3d_keeps_the_copy_visible_when_the_source_is_soloed.
2026-10-27 09:46:32 +00:00
Minher0
db1f798455
Merge main into #2410
...
PR #2491 moved the modules; the instance3d changes follow the new layout:
- tests_instance3d.rs lives in src/tests/instance3d.rs now (declared in src/tests.rs)
- solo_3d moved from render/src/lib.rs to render/src/pipeline.rs, pub(crate),
and its FxHost::layer caller moved to render/src/fx_host.rs
- cmd/create.rs, effects/channel2.rs, gpu/fx_pixel2.rs and render/cache/dependencies.rs
followed their moves automatically (rename detection)
2026-10-27 09:15:43 +00:00
aiongg
b7b75ed37a
style: cargo fmt on the moved files
2026-10-26 21:54:30 +00:00
aiongg
3e38bd7349
refactor(pdf): split the PostScript interpreter ps.rs into ps/*.rs
2026-10-26 21:49:12 +00:00
aiongg
5cb742591c
refactor(effects): split ocio.rs into ocio/*.rs
2026-10-26 21:49:12 +00:00
aiongg
13fe6e5c03
refactor(effects): split sim.rs into sim/*.rs
2026-10-26 21:49:12 +00:00
aiongg
67ef9ad93c
refactor(effects): split sim2.rs into sim2/*.rs
2026-10-26 21:49:12 +00:00
aiongg
b05467e47f
refactor(effects): split generate3.rs into generate3/*.rs
2026-10-26 21:49:12 +00:00
aiongg
f5f51f8db8
refactor(ui-egui): move viewer frame, geometry, gestures, shapes, tools and view parts to panels/viewer/*.rs
2026-10-26 21:49:12 +00:00
aiongg
9b52c71a71
refactor(ui-egui): move viewer tests to panels/viewer/tests.rs
2026-10-26 21:49:12 +00:00
aiongg
319d2cba3b
refactor(ui-egui): move menu commands, dispatch, entries, shortcuts and the menu bar to menus/*.rs
2026-10-26 21:49:11 +00:00
aiongg
03f5ba581d
refactor(ui-egui): move EffectcraftApp methods to app/*.rs
2026-10-26 21:49:11 +00:00
aiongg
0eea2d67ab
refactor(ui-egui): move app constructors and eframe::App to app.rs, clock and hooks to their own files, screenshot and playback state to state.rs
2026-10-26 21:49:11 +00:00
aiongg
da99df18b4
refactor(ui-egui): move lifecycle_tests to lifecycle_tests.rs
2026-10-26 21:49:11 +00:00
aiongg
e59048107a
refactor(ui-egui): move Effect Controls panel parts to panels/effect_controls/*.rs
2026-10-26 21:49:11 +00:00
aiongg
5c6375c7ea
refactor(psd): move limits, model, parsing and pixel decoding out of lib.rs
2026-10-26 21:49:11 +00:00
aiongg
80453e8673
refactor(psd): move the test counters module to counters.rs
2026-10-26 21:49:11 +00:00
aiongg
55ab7b556c
refactor(project): move settings, comp, layer, footage and item types out of lib.rs
2026-10-26 21:49:11 +00:00
aiongg
cbce15f069
refactor(render): move footage, effect host, accelerators, options, pipeline, layers and frames out of lib.rs
2026-10-26 21:49:11 +00:00
aiongg
4a5562c35b
refactor(engine): move layer commands to cmd/layer/*.rs
2026-10-26 21:49:11 +00:00
aiongg
770e30d3ed
refactor(engine): move settings model, page types and schema to settings/prefs/*.rs
2026-10-26 21:49:11 +00:00
aiongg
bba3291b24
refactor(engine): move Session methods to session/{dispatch,edit,comps,render}.rs
2026-10-26 21:49:11 +00:00
aiongg
2b4fcdd3db
refactor(engine): move error, services, document state, event, fonts and Session methods out of lib.rs
2026-10-26 21:49:11 +00:00
aiongg
d76cfc7c45
refactor(engine): move cmd.rs helpers to cmd/{schema,enabled,params}.rs
2026-10-26 21:49:11 +00:00
aiongg
eea1f50cd3
refactor(engine): move guard, logging, perf, sysinfo, storage to system/
2026-10-26 21:49:11 +00:00
aiongg
a7660a1e37
refactor(engine): move jobs, offload, remote to background/
2026-10-26 21:49:11 +00:00
aiongg
85e26db57d
refactor(engine): move learn, templates, demo, links to home/
2026-10-26 21:49:11 +00:00
aiongg
1c565ba2df
refactor(engine): move psd_import, vector, xml_project to interchange/
2026-10-26 21:49:11 +00:00
aiongg
d6b53650db
refactor(engine): move doc_path, footage_check, footage_reload, sequence, media_browser, media_cache to footage/
2026-10-26 21:49:11 +00:00
aiongg
9991466ff1
refactor(engine): move prefs, session_settings, config, shortcuts, autosave to settings/
2026-10-26 21:49:11 +00:00
aiongg
3b5e19027e
refactor(engine): move tracking, camera_track, mask_track, warp, roto, models to analysis/
2026-10-26 21:49:11 +00:00
aiongg
3559c9bb3d
docs(gpu): name the moved test module in a comment
2026-10-26 21:49:11 +00:00
aiongg
03c6dfa7a9
refactor(model): move src/fbx_tests.rs to src/fbx/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
140b8d911c
refactor(psd): move tests_<topic>.rs files to src/tests/
2026-10-26 21:49:11 +00:00
aiongg
576f1d1706
refactor(pdf): move loose test files to src/tests/
2026-10-26 21:49:11 +00:00
aiongg
48253ff5e1
refactor(script): move loose test files to src/tests/
2026-10-26 21:49:11 +00:00
aiongg
9526833a62
refactor(render): move loose test files to src/tests/
2026-10-26 21:49:11 +00:00
aiongg
959322dc38
refactor(gpu): move loose test files to src/tests/
2026-10-26 21:49:11 +00:00
aiongg
35e66b17a6
refactor(engine): move tests_<topic>.rs files to src/tests/, tests.rs content to tests/session.rs
2026-10-26 21:49:11 +00:00
aiongg
bcf34a087c
refactor(ui-egui): move src/workspace_state.rs tests to src/workspace_state/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
188e39440a
refactor(ui-egui): move src/pointer_wrap.rs tests to src/pointer_wrap/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
2f26ee2e24
refactor(ui-egui): move src/panels/viewer_text.rs tests to src/panels/viewer_text/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
c4d5c9c499
refactor(ui-egui): move src/panels/timeline.rs tests to src/panels/timeline/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
c43158e859
refactor(ui-egui): move src/menus.rs tests to src/menus/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
10ee0d51ab
refactor(ui-egui): move src/frames.rs tests to src/frames/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
7204aeaa69
refactor(text): move src/layout.rs tests to src/layout/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
2e76b5f8b2
refactor(text): move src/fonts.rs tests to src/fonts/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
07b9862ed8
refactor(segment): move src/tflite.rs tests to src/tflite/tests.rs
2026-10-26 21:49:11 +00:00
aiongg
f924bc0946
refactor(keyframe): move src/lib.rs tests to src/tests.rs
2026-10-26 21:49:11 +00:00