@docyrus/animaguru 0.22.0 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE.md +25 -1
- package/README.md +9 -3
- package/dist/animaguru.js +311 -3
- package/package.json +1 -1
- package/skills/animaguru-archive-light-table/SKILL.md +34 -0
- package/skills/animaguru-archive-light-table/references/recipe.md +26 -0
- package/skills/animaguru-briefing-board/SKILL.md +34 -0
- package/skills/animaguru-briefing-board/references/recipe.md +27 -0
- package/skills/animaguru-caption-news/SKILL.md +34 -0
- package/skills/animaguru-caption-news/references/recipe.md +26 -0
- package/skills/animaguru-city-symphony/SKILL.md +34 -0
- package/skills/animaguru-city-symphony/references/recipe.md +26 -0
- package/skills/animaguru-countdown/SKILL.md +34 -0
- package/skills/animaguru-countdown/references/recipe.md +26 -0
- package/skills/animaguru-data-physicalization/SKILL.md +34 -0
- package/skills/animaguru-data-physicalization/references/recipe.md +27 -0
- package/skills/animaguru-exploded-teardown/SKILL.md +34 -0
- package/skills/animaguru-exploded-teardown/references/recipe.md +27 -0
- package/skills/animaguru-kino-montage/SKILL.md +34 -0
- package/skills/animaguru-kino-montage/references/recipe.md +26 -0
- package/skills/animaguru-lidar-survey/SKILL.md +34 -0
- package/skills/animaguru-lidar-survey/references/recipe.md +26 -0
- package/skills/animaguru-machine-anatomy/LICENSE +21 -0
- package/skills/animaguru-machine-anatomy/SKILL.md +42 -0
- package/skills/animaguru-machine-anatomy/references/craft.md +97 -0
- package/skills/animaguru-machine-anatomy/references/recipe.md +52 -0
- package/skills/animaguru-microscope-story/SKILL.md +34 -0
- package/skills/animaguru-microscope-story/references/recipe.md +26 -0
- package/skills/animaguru-news-package/SKILL.md +34 -0
- package/skills/animaguru-news-package/references/recipe.md +26 -0
- package/skills/animaguru-newsreel/SKILL.md +34 -0
- package/skills/animaguru-newsreel/references/recipe.md +26 -0
- package/skills/animaguru-satellite-briefing/SKILL.md +34 -0
- package/skills/animaguru-satellite-briefing/references/recipe.md +27 -0
- package/skills/animaguru-telestrator/SKILL.md +34 -0
- package/skills/animaguru-telestrator/references/recipe.md +26 -0
- package/skills/animaguru-visual-investigation/SKILL.md +34 -0
- package/skills/animaguru-visual-investigation/references/recipe.md +26 -0
- package/skills/animaguru-white-model-projection/SKILL.md +34 -0
- package/skills/animaguru-white-model-projection/references/recipe.md +27 -0
- package/templates/video/README.md +1 -1
- package/templates/video/VIDEO-STYLE-NOTICES.txt +25 -1
- package/templates/video/shared/locales/en/style-studies.json +137 -0
- package/templates/video/src/kit/anatomy/LICENSE +21 -0
- package/templates/video/src/kit/anatomy/iso-kit.ts +842 -0
- package/templates/video/src/kit/anatomy/palette.ts +41 -0
- package/templates/video/src/kit/anatomy/pixi.ts +43 -0
- package/templates/video/src/studies/anatomy-plotter.ts +179 -0
- package/templates/video/src/studies/scenes.ts +379 -0
- package/templates/video/style-source-provenance.json +8 -2
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Machine Anatomy production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `machine-anatomy`: one dispensing head on a gantry fills a 4 × 4 tray of wells in a serpentine pass while the card's readout counts the well and the millilitres dispensed. The figure is built in `src/studies/anatomy-plotter.ts` with the bundled kit; the gallery preview renders the same module at a larger size. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`. All study copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- machine-anatomy`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `plotterFrame()` or the kit directly and compose the figure into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## The kit
|
|
8
|
+
|
|
9
|
+
`src/kit/anatomy/iso-kit.ts` is the core of the Anatomy kit, vendored unchanged with its MIT `LICENSE` beside it. World points are `[x, y, z]` with z up; paths come back as SVG `d` strings in screen pixels.
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import { Graphics } from "pixi.js";
|
|
13
|
+
import * as K from "./kit/anatomy/iso-kit"; // "../../../runtime/kit/anatomy/iso-kit" from animations/NAME/src/
|
|
14
|
+
import { drawDots, drawLine, drawSolid } from "./kit/anatomy/pixi";
|
|
15
|
+
|
|
16
|
+
const PLATE = { x: -120, y: -70, w: 240, d: 140, r: 8 };
|
|
17
|
+
const P = K.fitProjection(K.boxCorners(PLATE, -16, 90), 1280, 620, { pad: 24, azimuth: 45 });
|
|
18
|
+
const base = new Graphics();
|
|
19
|
+
drawSolid(base, K.slabOf(PLATE, -12, 12, P, 8, 1.6), { tone: "mid", width: 1.2 });
|
|
20
|
+
drawLine(base, K.planOutline(K.insetPlan(PLATE, 5), 0, P), { tone: "faint", width: 1 });
|
|
21
|
+
drawDots(base, K.pointsAt(K.corners(PLATE, 10).map(([x, y]): K.Point3 => [x, y, 0]), P), { size: 1.1 });
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
| Need | Kit calls |
|
|
25
|
+
|---|---|
|
|
26
|
+
| Camera and depth | `fitProjection`, `boxCorners`, `iso`, `depthOf`, `screenRise`, `axisVector`, `towardViewer` |
|
|
27
|
+
| Solids | `slabOf(plan, z, h, P, steps, bevel)`, `cylinder(cx, cy, r, z, h, P, steps, bevel)`, `extrude(ring, z, h, P, { convex })`, `insetPlan`, `corners` |
|
|
28
|
+
| Lines on faces | `planOutline`, `ring`, `onTop`, `lineOnTop`, `segment`, `rise`, `sideSeam`, `sideArc`, `sideRing` |
|
|
29
|
+
| Parts | `topTicks`, `sideTicks`, `radialTicks` (rulers and dials), `knurl`, `coil` (back and front halves), `dotGrid`, `haloOf` |
|
|
30
|
+
| Faces | `topMatrix`, `sideMatrix` map flat local coordinates onto a top or side face, for a screen, a dial face or engraved text |
|
|
31
|
+
|
|
32
|
+
`drawSolid` paints like the kit's `solidSvg`: paper fill, four side shades, top, crease and bevel, then the outline; a `lit` solid gets the white face and the lit edge. Widths are screen pixels: about 1 px at 1280 wide and 1.5 px at 1920, a little heavier for the lit part. For the soft shadow under the base, fill `haloOf(...)` into its own Graphics with a `BlurFilter` and the palette's `halo` colour at `haloOpacity`. Move a rigid part by rebuilding it at its new position, or by translating a Graphics built at rest by `axisVector(P, [dx, dy, dz])`; rebuild a part whose shape changes (a compressing coil, a turning needle). The kit's SVG and HTML helpers (`solidSvg`, `figureSvg`, `plateHtml`, `ISO_CSS`) remain available for stills and overlays but are not needed in Pixi.
|
|
33
|
+
|
|
34
|
+
Not bundled: the upstream lathe (turned parts on any axis), tube (pipes and cables), geometry audit, WebGL and 3D modules. Draw round parts on vertical axes with `cylinder`, keep cables and pipes few, short and clear of the subject, and prove order and clearance with 4× frames instead of the audit.
|
|
35
|
+
|
|
36
|
+
## Adaptation decisions
|
|
37
|
+
|
|
38
|
+
- An interactive figure becomes timed choreography. Its idle tour is the film's timeline, pointer input becomes scripted beats, and the readout is computed each frame from the same model and schedule as the parts.
|
|
39
|
+
- The card corners (Fig n, title, hint, readout) and the caption are editable, localized text. At 1280 wide, 14–16 px monospace reads; keep the drawing itself free of words.
|
|
40
|
+
- A series of figures shares one camera, one scale and one palette. Cut or crossfade between figures, or push into one mechanism and settle.
|
|
41
|
+
- Light paper is the default; for a dark plate use `ANATOMY_PALETTES.dark` everywhere and never mix theme tones.
|
|
42
|
+
|
|
43
|
+
The study is silent, original procedural art built to demonstrate construction, tones, order and motion. It makes no product claims. Configure an original machine, numbers, palette, scene sequence, duration and soundtrack from the brief. Use `src/studies/timing.ts` for deterministic easing, springs and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; inspect the actual frames as well.
|
|
44
|
+
|
|
45
|
+
## Sources and attribution
|
|
46
|
+
|
|
47
|
+
Adapted from [Anatomy](https://github.com/wheresryan22/anatomy) by Ryan ([@wheresryan22](https://x.com/wheresryan22)), MIT, pinned at commit `1482e8469b0a9e0d8cc18ea2740a01423d29ae80`. `iso-kit.ts` is a verbatim copy; the craft and workflow guidance is condensed and adapted for film. The study figure, its gallery preview, the palette module and the PixiJS adapter are original AnimaGuru work. The workspace's `VIDEO-STYLE-NOTICES.txt` and `src/kit/anatomy/LICENSE` preserve the notice.
|
|
48
|
+
|
|
49
|
+
- [SKILL.md](https://github.com/wheresryan22/anatomy/blob/1482e8469b0a9e0d8cc18ea2740a01423d29ae80/SKILL.md)
|
|
50
|
+
- [references/craft.md](https://github.com/wheresryan22/anatomy/blob/1482e8469b0a9e0d8cc18ea2740a01423d29ae80/references/craft.md)
|
|
51
|
+
- [references/motion.md](https://github.com/wheresryan22/anatomy/blob/1482e8469b0a9e0d8cc18ea2740a01423d29ae80/references/motion.md)
|
|
52
|
+
- [kit/iso-kit.ts](https://github.com/wheresryan22/anatomy/blob/1482e8469b0a9e0d8cc18ea2740a01423d29ae80/kit/iso-kit.ts)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-microscope-story
|
|
3
|
+
description: Build Microscope Story visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Microscope Story
|
|
8
|
+
|
|
9
|
+
One continuous dive from a slide on the bench to a single cell, with focus breaths, true scale bars and readings counted from the image. It is an evidence style: real data, imagery or scans carry the film. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#microscope-story). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which specimen, stain or modality, and do you have your own scans (SVS, NDPI, MRXS, or SEM TIFFs with a scale)?
|
|
16
|
+
- What should be measured or counted, and should the film end on a cell or climb back out?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Ask the user for their own data, scans, files or rights first; otherwise find licence-clean sources (see the [production recipe](references/recipe.md)). Never stand a generated image in for the evidence, and never invent a number. Keep `production/FACTS.md` (each on-screen or spoken claim, its source URL and quoted wording, or the measurement method) and `production/CREDITS.md` (every asset's source, author and licence), and deliver both with the film. CC BY-SA, ODbL, "no known restrictions" or non-commercial terms are not CC0: name them to the user and ask before using them.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Graphics, Text, Container, Assets, Mesh or Filters skills. Read `animaguru` before generating assets: generation can supply music, narration or a title background, never the evidence itself. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential text and exact numerical geometry belong in authored canvas content.
|
|
25
|
+
|
|
26
|
+
- The specimen is a real, licence-clean micrograph or whole-slide scan; nothing on it is drawn, retouched or generated, and two different samples never zoom into each other.
|
|
27
|
+
- Scale is the camera: one log-space dive through registered pyramid levels, a focus breath at every real objective change and a focal-plane sweep on landing. The scale bar, field of view and magnification come from the file's pixel size.
|
|
28
|
+
- Readings are measured: describe what was measured, never diagnose. One accent, away from the stain's hues, marks the counted pixels and the reading.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect upsampling at the deepest level, seams between levels, scale-bar values against the pixel size, counted shares against the mask and raw counts, and frosted panels over stain and glass. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Microscope Story production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `microscope-story`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- microscope-story`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Evidence and sources
|
|
8
|
+
|
|
9
|
+
OpenSlide test data (check each file's licence line), NCI Imaging Data Commons (licence per collection), the Cell Image Library, Wellcome Collection, Wikimedia Commons filtered by licence, and NIH or CDC galleries; prefer files whose metadata carries the pixel size. Not usable: NC images, journal figures, AI images. Download into the film's `public/` or `production/` folders, log every request, and record each asset in `production/CREDITS.md` and each claim in `production/FACTS.md`. Burn a readable credit into the frame where the medium calls for one.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Export pyramid levels as textures registered in one world frame (level-0 pixels). Draw the finest level that is not upsampled and cross-blend the next one; the camera is a similarity transform interpolated as a log spiral about the target point.
|
|
14
|
+
- Focus breaths use a `BlurFilter` whose strength follows the objective events; the focal sweep blends sharp and blurred copies through a tilted gradient mask.
|
|
15
|
+
- Count pixels offline from the plate and a stated threshold, reveal the counted mask behind a scan front as a tinted sprite, and build frosted panels from a blurred, darkened copy under a mask.
|
|
16
|
+
|
|
17
|
+
The study is silent, original procedural art with illustrative values, labelled as such; it demonstrates material, light, layout and motion, not evidence. Replace its stand-ins with the real data, imagery or scans described above, never with generated imagery. The gallery preview is a procedural specimen drawn in code, labelled on screen as not a real slide. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
18
|
+
|
|
19
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
20
|
+
|
|
21
|
+
## Sources and attribution
|
|
22
|
+
|
|
23
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
24
|
+
|
|
25
|
+
- [styles/microscope/STYLE.md](https://github.com/lemomo-ai/lemo-opuscar/blob/b5e8ef93930b6d828f352055a689320f138237b1/styles/microscope/STYLE.md)
|
|
26
|
+
- [styles/microscope/demo/film.js](https://github.com/lemomo-ai/lemo-opuscar/blob/b5e8ef93930b6d828f352055a689320f138237b1/styles/microscope/demo/film.js)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-news-package
|
|
3
|
+
description: Build Broadcast News Package visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Broadcast News Package
|
|
8
|
+
|
|
9
|
+
A television newsroom's on-air package built entirely in code: a sting that becomes the channel bug, a rundown that opens and closes the bulletin, a lower-third strap that never leaves the frame, and full-frame graphics that carry the facts. It is a documentary & broadcast style; it can run as pure graphics over real data, with footage optional. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#news-package). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- How many stories, and which graphics does each need (a split-flap board, a threshold chart, an explainer map, a spec card, a quote card)?
|
|
16
|
+
- Does the user have their own brand (name, plate colour, voice), or should one be invented for this film?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Every on-screen number and sentence comes from an official source first; ask the user for their own data, pictures or a recorded voice before anything else (see the [production recipe](references/recipe.md)). Draw charts from real series only; tag a line `SCHEMATIC` when only a few numbers are known. A generated illustrative plate is a last resort, always tagged `ILLUSTRATION` while visible, and never stands in for the event, a place or a person. Keep `production/FACTS.md` (claim, URL, quoted wording) and `production/CREDITS.md`, delivered with the film.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Graphics, Text, Container or Filters skills. Read `animaguru` before generating assets: generation can supply an anchor voice, music or an illustrative plate, never the facts themselves. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential straps, datelines and numbers belong in authored canvas content.
|
|
25
|
+
|
|
26
|
+
- One package system throughout: a brand plate, a tab, a paper strap, ink cards, mono datelines, stamps — viewers read the system before the words.
|
|
27
|
+
- The strap never leaves the frame from the first story to the recap; its tab changes category with a flash; the sting becomes the bug by flying into the corner.
|
|
28
|
+
- The package travels with its picture: under a wipe, draw the strap, tab, source line and corner tag per side of the wipe, never once on top of everything, so the chrome never lags the cut.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect strap/tab/source-line sync under every wipe, schematic-vs-data labelling, source-line length limits, every claim against `FACTS.md`, and illustration tagging on any generated plate. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Broadcast News Package production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `news-package`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- news-package`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Evidence and sources
|
|
8
|
+
|
|
9
|
+
The company's or institution's own page, the exchange's own data, or a government statistics portal for every number (log the claim and quoted wording). For pictures, ask in order: the user's own images first; generated illustrative plates only if the user wants them, tagged `ILLUSTRATION` for as long as visible and never standing in for the event, a place in the news or a person; failing that, Wikimedia Commons (CC0, public domain or CC BY only), U.S. federal agencies (NASA, NOAA, NARA, USGS — public domain), Internet Archive (public domain, CC0 or CC BY items; U.S. works before 1931 are public domain), or abstract backgrounds drawn in code. Record every asset in `production/CREDITS.md` and every claim in `production/FACTS.md`.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Build the brand plate as one `Graphics` parallelogram reused for the sting, the bug, the desk front and the end card, driven by a single position/scale tween rather than four separate assets.
|
|
14
|
+
- Build the split-flap board as two `Container`s clipped to top and bottom halves, cross-fading the old and new tile faces on the flip; drive the threshold chart's line head and bars from one shared series.
|
|
15
|
+
- Draw the strap, tab, source line and corner tag inside each wipe's own clip (one state per side of the transition), never as a single overlay drawn once on top of everything, so the package never lags the picture by a frame.
|
|
16
|
+
|
|
17
|
+
The study is silent, original procedural art with illustrative values, labelled as such; it demonstrates material, layout and motion, not evidence. Replace its stand-ins with the real data, pictures or footage described above, never with unlabelled generated imagery. The gallery preview runs the package graphics end to end with no footage, illustrative throughout and labelled as such. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
18
|
+
|
|
19
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
20
|
+
|
|
21
|
+
## Sources and attribution
|
|
22
|
+
|
|
23
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
24
|
+
|
|
25
|
+
- [styles/news-package/STYLE.md](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/news-package/STYLE.md)
|
|
26
|
+
- [styles/news-package/demo/main.js](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/news-package/demo/main.js)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-newsreel
|
|
3
|
+
description: Build 1920s Newsreel visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# 1920s Newsreel
|
|
8
|
+
|
|
9
|
+
A sound newsreel of the late 1920s cut from real archive material: a searchlight-and-globe ident with a brass fanfare, a newspaper spinning into the lens, a fast announcer and a hot band, all inside one silver-graded projector gate. It is a documentary & broadcast style: real archive film, photographs, print or recordings carry the picture; only the packaging is drawn. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#newsreel). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which archive film, photographs, print or recordings do you have, or should be found, and what is the one place-and-story arc?
|
|
16
|
+
- What is the ident's fictional name, and which native transitions (iris, wipe, flip) fit the story's turns?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Ask the user for their own archive film, photographs, print or recordings first; otherwise find licence-clean sources (see the [production recipe](references/recipe.md)). Never generate "archive" pictures: only the ident, cards, maps and end card are drawn, and the footage and print must be real. Keep `production/FACTS.md` (each on-screen or spoken claim, its source URL and quoted wording) and `production/CREDITS.md` (every asset's source, author and licence), and deliver both with the film. CC BY-SA or "no known restrictions" are not a clear licence: name them to the user and ask before using them.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Filters, Mesh, Graphics, Text or Assets skills. Read `animaguru` before generating assets: generation can supply music or narration, never the archive footage itself. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential place cards and subtitles belong in authored canvas content, never baked into the picture.
|
|
25
|
+
|
|
26
|
+
- One silver grade and projected gate (1.37:1, rounded corners, black outside) sits over every real shot; flicker, gate weave and scratches belong to the picture layer only, never to type.
|
|
27
|
+
- The ident, spinning paper, map spread, place cards and end card are the only generated elements; draw them with Graphics and Text, never as a stand-in for archive imagery.
|
|
28
|
+
- Cuts and landings ride a hot-band beat grid; use the style's own fixed transitions (iris, diagonal wipe, flip, venetian blinds, clock wipe) once each, never a cross-dissolve between stories.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect the gate mask at every corner, grade consistency across clips (one level set per clip, never per frame), place-card reading time, subtitle one-line limits, and every date or claim against `FACTS.md`. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# 1920s Newsreel production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `newsreel`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- newsreel`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Evidence and sources
|
|
8
|
+
|
|
9
|
+
U.S. National Archives (films, often via Internet Archive "FedFlix" copies; federal works are public domain; Universal Newsreel 1929–1967 is in NARA too), Internet Archive (check each item's licence field and provenance; skip YouTube mirrors or "restored/AI enhanced" versions), Wikimedia Commons (PD-US-expired, PD-US-no-notice, PD-USGov, CC0 or CC BY only; not CC BY-SA or "no known restrictions"), Library of Congress, print published in the US before 1931 (newspapers, magazines, books on archive.org/HathiTrust/Commons, public domain), and sound recordings published before 1926 (public domain in the US). Download into the film's `public/` or `production/` folders, log every request, and record each asset in `production/CREDITS.md` and each claim in `production/FACTS.md`.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Composite the gate as a `Container` clipped to a rounded-rectangle mask; apply the silver grade with a `ColorMatrixFilter` (greyscale, contrast, warm multiply/screen tint) plus a small custom filter or seeded `Graphics` noise for flicker, gate weave and scratches, applied to the picture layer only.
|
|
14
|
+
- Build the ident (searchlights, globe, title lettering) and the spinning-paper headline with `Graphics` and `Text` in OFL faces; animate the paper's slam with a scale/rotation tween that decays into a landing beat, never as "archive" imagery.
|
|
15
|
+
- Keep subtitles, place cards and the end card on an unfiltered type layer above the gate, so type never weaves or flickers with the picture; drive every cut and landing from one beat-grid timing function.
|
|
16
|
+
|
|
17
|
+
The study is silent, original procedural art with illustrative values, labelled as such; it demonstrates material, layout and motion, not evidence. Replace its stand-ins with the real archive film, photographs, print or recordings described above, never with generated imagery. The gallery preview shows only the code-drawn packaging (the ident, the spinning headline, a place card and an iris), with no footage standing in for real archive film. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
18
|
+
|
|
19
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
20
|
+
|
|
21
|
+
## Sources and attribution
|
|
22
|
+
|
|
23
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
24
|
+
|
|
25
|
+
- [styles/newsreel/STYLE.md](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/newsreel/STYLE.md)
|
|
26
|
+
- [styles/newsreel/demo/index.html](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/newsreel/demo/index.html)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-satellite-briefing
|
|
3
|
+
description: Build Satellite Briefing visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Satellite Briefing
|
|
8
|
+
|
|
9
|
+
Satellite imagery graded to an analyst's grey, with thin measured hairlines, dated passes and one reading per screen in one continuous zoom. It is an evidence style: real data, imagery or scans carry the film. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#satellite-briefing). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which place, dates and claim should the imagery test, and do you have your own survey or GIS layers?
|
|
16
|
+
- Where should true colour return, and which single reading matters most?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Ask the user for their own data, scans, files or rights first; otherwise find licence-clean sources (see the [production recipe](references/recipe.md)). Never stand a generated image in for the evidence, and never invent a number. Keep `production/FACTS.md` (each on-screen or spoken claim, its source URL and quoted wording, or the measurement method) and `production/CREDITS.md` (every asset's source, author and licence), and deliver both with the film. CC BY-SA, ODbL, "no known restrictions" or non-commercial terms are not CC0: name them to the user and ask before using them.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Graphics, Text, Container, Assets, Mesh or Filters skills. Read `animaguru` before generating assets: generation can supply music, narration or a title background, never the evidence itself. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential text and exact numerical geometry belong in authored canvas content.
|
|
25
|
+
|
|
26
|
+
- Use licence-clean, georeferenced imagery of the real place or the user's own layers; the ground is a photograph, the hairlines are what the analyst measured.
|
|
27
|
+
- Stack plates by resolution in one world frame and zoom in log space; grade the analysis layer to a cool grey with a shoulder so white stays reserved for marks and the accent for the one reading.
|
|
28
|
+
- Draw outlines, range lines and reticles through the same ground-to-screen function as the imagery; time changes are scan passes, never dissolves, and readings count up and land.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect plate seams and upsampling at each altitude, grey-grade clipping, mark registration through every camera move, the burned-in imagery credit and every number against `FACTS.md`. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Satellite Briefing production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `satellite-briefing`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- satellite-briefing`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Evidence and sources
|
|
8
|
+
|
|
9
|
+
USGS Landsat (1972 on, worldwide), USGS NAIP (US, about 1 m), NASA Blue Marble, MODIS and VIIRS through NASA GIBS, and Copernicus Sentinel with its credit line ("Contains modified Copernicus Sentinel data [year]"); outlines from Natural Earth. Search by bounding box and date in the Planetary Computer STAC or USGS EarthExplorer and log every request. Not usable: Google, Bing, Esri, Mapbox, Planet or Maxar imagery, news photos or generated imagery. Download into the film's `public/` or `production/` folders, log every request, and record each asset in `production/CREDITS.md` and each claim in `production/FACTS.md`. Burn a readable credit into the frame where the medium calls for one.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Load each plate as a texture inside one world `Container`, nested by resolution with feathered alpha masks. Scale the container in log space for the dive and cross-blend plates where their texel size meets the screen pixel. An oblique orbit can use `PerspectiveMesh` corners or a small shader; describe it as a 2.5D view unless a shader does the ray–sphere work.
|
|
14
|
+
- Apply the analyst grade with a `ColorMatrixFilter` or a small custom filter driven by one uniform. Keep marks in a separate, unfiltered layer drawn with `Graphics` from projected ground coordinates every frame.
|
|
15
|
+
- Put dated plates on one grid and reveal the newer plate behind a soft moving gradient mask; each outline prints behind the same mask edge, and earlier outlines stay as dashed history.
|
|
16
|
+
|
|
17
|
+
The study is silent, original procedural art with illustrative values, labelled as such; it demonstrates material, light, layout and motion, not evidence. Replace its stand-ins with the real data, imagery or scans described above, never with generated imagery. The gallery preview is procedural terrain drawn in code, labelled on screen as not a real place. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
18
|
+
|
|
19
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
20
|
+
|
|
21
|
+
## Sources and attribution
|
|
22
|
+
|
|
23
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
24
|
+
|
|
25
|
+
- [styles/satellite-briefing/STYLE.md](https://github.com/lemomo-ai/lemo-opuscar/blob/b5e8ef93930b6d828f352055a689320f138237b1/styles/satellite-briefing/STYLE.md)
|
|
26
|
+
- [styles/satellite-briefing/demo/engine.js](https://github.com/lemomo-ai/lemo-opuscar/blob/b5e8ef93930b6d828f352055a689320f138237b1/styles/satellite-briefing/demo/engine.js)
|
|
27
|
+
- [styles/satellite-briefing/demo/overlay.js](https://github.com/lemomo-ai/lemo-opuscar/blob/b5e8ef93930b6d828f352055a689320f138237b1/styles/satellite-briefing/demo/overlay.js)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-telestrator
|
|
3
|
+
description: Build Sports Telestrator visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Sports Telestrator
|
|
8
|
+
|
|
9
|
+
The TV analysis segment: play the clip at full speed, rewind, freeze it, and draw on the broadcast picture — rings under feet, marker arrows for the ball, a flattened pitch board — then play on and switch angles. It is a documentary & broadcast style: real match footage carries the picture; every line is drawn on top of it. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#telestrator). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which match footage (with rights) and which piece of action gets the full rewind-and-freeze breakdown?
|
|
16
|
+
- Which roles (the team or ball, opponents, the space) should the three colours carry, and which sport?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Ask the user for their own footage, line-ups, event data or photos first; otherwise find licence-clean sources (see the [production recipe](references/recipe.md)). Real footage only: never invent a number the footage can't support (ball speed, distance run); keep `production/FACTS.md` (every counted number, with how it was measured) and `production/CREDITS.md` (every asset's source, author and licence), delivered with the film.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Mesh, Filters, Graphics or Text skills. Read `animaguru` before generating assets: generation can supply music or narration, never the match footage itself. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential labels, the stopwatch and the data card belong in authored canvas content.
|
|
25
|
+
|
|
26
|
+
- Everything is drawn on the real picture in the picture's own coordinates: rings under feet, arrows along the ball's path, traced pitch lines; nothing floats in an abstract diagram until the deliberate flatten.
|
|
27
|
+
- One freeze, one finding: flash, punch, desaturate, spotlight, then ring → area or link → label, each 0.3–0.6 seconds apart.
|
|
28
|
+
- The perspective flatten fits a homography from marked pitch points and redraws the freeze frame as a mesh moving to board coordinates, reusing the same point set for both views.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect tracked-point accuracy against full-resolution crops, overlay alignment through the freeze's punch transform, packaging placement over any real logo or URL, and every counted number against `FACTS.md`. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Sports Telestrator production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `telestrator`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- telestrator`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Evidence and sources
|
|
8
|
+
|
|
9
|
+
Wikimedia Commons (many clips are cut from broadcasters' own YouTube uploads under CC BY; read the licence on each file page; not CC BY-SA or "no known restrictions"), a broadcaster's or club's own verified YouTube channel when its video page states a Creative Commons Attribution licence (save the evidence: channel id, verification, licence field, date checked; never a re-upload or fan mirror), the league's or broadcaster's own match page for facts (scores, minutes, how a goal was scored), and Commons photographs (CC BY/CC0) for player portraits. Download the native resolution, never an "AI-upscaled" stream; record each asset in `production/CREDITS.md` and every counted number and its measurement method in `production/FACTS.md`.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Track reference points (feet, ball) as hand-authored keyframes in source-pixel coordinates, interpolated the same way across slow motion and freezes; check them against full-resolution crops, never a scaled contact sheet.
|
|
14
|
+
- Use a `PerspectiveMesh`, or a small custom shader doing the equivalent projection, for the flatten into a top-down board; drive both the broadcast overlay and the board positions from the same homography point set.
|
|
15
|
+
- Build the freeze entry (white flash, punch-in, desaturate, spotlight) as one small filter and transform chain applied uniformly to every freeze, so overlays drawn afterward inherit the same transform and never slide off the players.
|
|
16
|
+
|
|
17
|
+
The study is silent, original procedural art with illustrative values, labelled as such; it demonstrates material, layout and motion, not evidence. Replace its stand-ins with the real match footage described above, never with generated imagery. The gallery preview uses an illustrative match with no real footage or team behind it, labelled as such. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
18
|
+
|
|
19
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
20
|
+
|
|
21
|
+
## Sources and attribution
|
|
22
|
+
|
|
23
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
24
|
+
|
|
25
|
+
- [styles/telestrator/STYLE.md](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/telestrator/STYLE.md)
|
|
26
|
+
- [styles/telestrator/demo/index.html](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/telestrator/demo/index.html)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-visual-investigation
|
|
3
|
+
description: Build Visual Investigation visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Visual Investigation
|
|
8
|
+
|
|
9
|
+
A cold investigation desk: footage, photographs, documents, sound and maps from one real event laid on one shared clock so they check each other; frozen frames are circled and magnified, quotes are highlighted on the page, and every piece of evidence is pulled into one map at the end. It is a documentary & broadcast style: real footage, documents, photographs and sound carry the film. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#visual-investigation). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which event's footage, documents, photographs, sound and maps do you have, and what is the one sync point every source should converge on?
|
|
16
|
+
- Which time scales should the clock pass through (hours → minutes → seconds → days)?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Ask the user for their own footage, documents, photographs, recordings or data first; otherwise find licence-clean sources (see the [production recipe](references/recipe.md)). Mark every inference `≈ / inferred / unlocated / schematic` on screen and in `production/FACTS.md`; never fake a multi-camera event from a single source. Keep `production/CREDITS.md` (every asset's source, author and licence), delivered with the film. CC BY-SA, "no known restrictions" or unclear origin are not usable without the user's explicit agreement.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Graphics, Mesh, Text or Filters skills. Read `animaguru` before generating assets: generation can supply music or narration, never the evidence itself. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential readouts, tags and findings belong in authored canvas content.
|
|
25
|
+
|
|
26
|
+
- Cut points are sync points: pick one instant every source can recognise (an impact, a flash, a public clock) and align each source to it; a source that starts late simply appears late.
|
|
27
|
+
- One clock lives inside the layout itself (a card timestamp, a chart playhead, a `T+` stopwatch), never a separate reserved timeline band by default.
|
|
28
|
+
- Red is the only colour and it only ever points (circles, links, the playhead, the verdict); everything else is grey panels on a near-black ground, and each section says one finding.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect sync-point alignment across sources, inference labelling, source-tag presence on every panel, reading time on verdict boards, and every claim against `FACTS.md`. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Visual Investigation production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `visual-investigation`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- visual-investigation`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Evidence and sources
|
|
8
|
+
|
|
9
|
+
Internet Archive (NARA-donated Universal Newsreels 1929–1967 are public domain; other newsreel companies are not, even when tagged PD by an uploader), Wikimedia Commons (U.S. federal work — Navy, NASA, NARA, NOAA, USGS — is public domain; treat "not renewed" agency-photo claims, e.g. AP/INS/Wide World, as uncertain and skip), NASA (public domain except marked third-party items), Library of Congress and national archives (read each rights statement; "no known restrictions" is not a licence), USGS The National Map (historical topographic maps, public domain). Download into the film's `public/` or `production/` folders, log every request, and record each asset in `production/CREDITS.md` and each claim, with inferences kept separate, in `production/FACTS.md`.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Build the sync grid and the evidence-map links as `Graphics` paths drawn progressively (stroke-by-length) from one shared `playhead()` keyframe list, reused by the audio mix so clockwork ticks and picture stay locked together.
|
|
14
|
+
- For the freeze-circle-magnify move, freeze a video texture's current frame, then render a cropped, scaled copy of the same texture inside a circular mask for the loupe, so the magnified detail is genuinely the same pixels.
|
|
15
|
+
- Keep the map and plan panels as `Graphics` line drawings (or a `Mesh` for an oblique plan) with one projection function mapping real survey coordinates to screen space, reused by every panel that cites a position.
|
|
16
|
+
|
|
17
|
+
The study is silent, original procedural art with illustrative values, labelled as such; it demonstrates material, layout and motion, not evidence. Replace its stand-ins with the real footage, documents, photographs and sound described above, never with generated imagery. The gallery preview uses illustrative evidence panels with no real case behind them, labelled as such. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
18
|
+
|
|
19
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
20
|
+
|
|
21
|
+
## Sources and attribution
|
|
22
|
+
|
|
23
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
24
|
+
|
|
25
|
+
- [styles/visual-investigation/STYLE.md](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/visual-investigation/STYLE.md)
|
|
26
|
+
- [styles/visual-investigation/demo/index.html](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/visual-investigation/demo/index.html)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-white-model-projection
|
|
3
|
+
description: Build White Model Projection visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# White Model Projection
|
|
8
|
+
|
|
9
|
+
A white massing model in a dark room, where projected light paints data onto the buildings one layer at a time. It is an evidence style: real data, imagery or scans carry the film. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#white-model-projection). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which place, scale and layers (age, height, zoning, sun), and do you have the place's own building data?
|
|
16
|
+
- Which building or set should be picked out at the end?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Ask the user for their own data, scans, files or rights first; otherwise find licence-clean sources (see the [production recipe](references/recipe.md)). Never stand a generated image in for the evidence, and never invent a number. Keep `production/FACTS.md` (each on-screen or spoken claim, its source URL and quoted wording, or the measurement method) and `production/CREDITS.md` (every asset's source, author and licence), and deliver both with the film. CC BY-SA, ODbL, "no known restrictions" or non-commercial terms are not CC0: name them to the user and ask before using them.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Graphics, Text, Container, Assets, Mesh or Filters skills. Read `animaguru` before generating assets: generation can supply music, narration or a title background, never the evidence itself. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential text and exact numerical geometry belong in authored canvas content.
|
|
25
|
+
|
|
26
|
+
- The model is real geometry from open data or the user's plans, extruded at a stated scale. It is never coloured in the material: data arrives as projected light that brightens surfaces facing the projector and stops at the edge of the throw.
|
|
27
|
+
- Bring one layer at a time, each with its own gesture of light: buildings switching on by decade, a level climbing every facade, a real sun's shadows. House lights cut fast and return slowly.
|
|
28
|
+
- Every number comes from the same buildings that are on the table. Readouts sit in the left third, pins rise from roofs, and each layer uses one hue family.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect that colour lands only on lit white surfaces, readout legibility over the model, pin anchors through the camera move, and every number against the data file. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# White Model Projection production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `white-model-projection`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- white-model-projection`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Evidence and sources
|
|
8
|
+
|
|
9
|
+
3DBAG (Netherlands, CC BY 4.0), PLATEAU (Japan), city open-data portals (footprints with heights or floors, zoning, plans) or the user's own plans and surveys. OpenStreetMap and Overture are ODbL: name the terms and ask first. Compute the sun from the place's latitude and a real date (NOAA/Meeus). Download into the film's `public/` or `production/` folders, log every request, and record each asset in `production/CREDITS.md` and each claim in `production/FACTS.md`. Burn a readable credit into the frame where the medium calls for one.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Precompute footprints and heights in model units. Draw extruded blocks as `Graphics` faces in painter's order from one camera, or render a set of white-model plates offline with matching per-building masks for heavy scenes; describe the method as 2.5D.
|
|
14
|
+
- Colour each visible face from its normal and the projector direction: white × house light, plus layer colour × (0.42 + 0.58 × facing) × throw mask. A layer is per-building state, not a texture.
|
|
15
|
+
- A rising level is a per-face clip at the current height with a soft bright crest; decades switch on per building with a short flash. Pins and readouts are `Graphics` and `Text` through the same projection.
|
|
16
|
+
|
|
17
|
+
The study is silent, original procedural art with illustrative values, labelled as such; it demonstrates material, light, layout and motion, not evidence. Replace its stand-ins with the real data, imagery or scans described above, never with generated imagery. The gallery preview is rendered in code from an illustrative district. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
18
|
+
|
|
19
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
20
|
+
|
|
21
|
+
## Sources and attribution
|
|
22
|
+
|
|
23
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
24
|
+
|
|
25
|
+
- [styles/white-model/STYLE.md](https://github.com/lemomo-ai/lemo-opuscar/blob/b5e8ef93930b6d828f352055a689320f138237b1/styles/white-model/STYLE.md)
|
|
26
|
+
- [styles/white-model/demo/studio.js](https://github.com/lemomo-ai/lemo-opuscar/blob/b5e8ef93930b6d828f352055a689320f138237b1/styles/white-model/demo/studio.js)
|
|
27
|
+
- [styles/white-model/demo/overlay.js](https://github.com/lemomo-ai/lemo-opuscar/blob/b5e8ef93930b6d828f352055a689320f138237b1/styles/white-model/demo/overlay.js)
|
|
@@ -102,7 +102,7 @@ The installed style skills cover visual treatment and motion technique across su
|
|
|
102
102
|
|
|
103
103
|
## Original studies and production review
|
|
104
104
|
|
|
105
|
-
Browse `animaguru.templates.json` for all
|
|
105
|
+
Browse `animaguru.templates.json` for all 48 styles and purpose workflows. The 37 expanded, evidence, Machine Anatomy and documentary & broadcast styles include a runnable original study; use `npm run example -- blueprint-drafting` in an untouched starter. Evidence- and documentary-style studies use illustrative values, labelled as such; a production film replaces them with real data, imagery, footage or scans. The command backs up the starter, refuses to replace an authored film, and connects the study to the normal player, timeline and HTML5/MP4 exporters. To compose studies in an existing film, import their scene and renderer instead.
|
|
106
106
|
|
|
107
107
|
`npm run review` starts a local browser review session. Open the printed URL; it saves representative JPEG frames, actual text bounds, reading-hold notes and repeated-seek comparisons in `production/review/`. The numerical report complements frame inspection and full-speed listening. Optional media trim/time mapping and cue helpers are in `src/studies/`. All procedural example art is original; source inspirations and MIT notices are recorded in `VIDEO-STYLE-NOTICES.txt`.
|
|
108
108
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Video style sources and notices
|
|
2
2
|
|
|
3
|
-
The executable studies and preview art are original AnimaGuru procedural 2D/2.5D work. Material/motion guidance was adapted from the pinned repositories below. No external creator video, sample music or demo font is bundled. Third-party demo assets retain their own licenses.
|
|
3
|
+
The executable studies and preview art are original AnimaGuru procedural 2D/2.5D work. Material/motion guidance was adapted from the pinned repositories below. The Machine Anatomy geometry kit (src/kit/anatomy/iso-kit.ts) is a verbatim copy from anatomy; its MIT notice is also in src/kit/anatomy/LICENSE. No external creator video, sample music or demo font is bundled. Third-party demo assets retain their own licenses.
|
|
4
4
|
|
|
5
5
|
lemo-opuscar
|
|
6
6
|
MIT License
|
|
@@ -52,3 +52,27 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
52
52
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
53
53
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
54
54
|
SOFTWARE.
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
anatomy
|
|
58
|
+
MIT License
|
|
59
|
+
|
|
60
|
+
Copyright (c) 2026 Ryan
|
|
61
|
+
|
|
62
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
63
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
64
|
+
in the Software without restriction, including without limitation the rights
|
|
65
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
66
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
67
|
+
furnished to do so, subject to the following conditions:
|
|
68
|
+
|
|
69
|
+
The above copyright notice and this permission notice shall be included in all
|
|
70
|
+
copies or substantial portions of the Software.
|
|
71
|
+
|
|
72
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
73
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
74
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
75
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
76
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
77
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
78
|
+
SOFTWARE.
|