diff --git a/remotion/src/folge08/szene7.tsx b/remotion/src/folge08/szene7.tsx index 9d58f37..41ef678 100644 --- a/remotion/src/folge08/szene7.tsx +++ b/remotion/src/folge08/szene7.tsx @@ -84,7 +84,8 @@ export const Szene7: React.FC = () => { f={f} kam={kam} laterne={{inHand: false, licht: 1, x: LATERNE.x, y: LATERNE.y}} - noa={{pose: [[0, 'noa_B_hocken'], [z.bild0.start + 4, 'noa_B_hand-hase'], [z.hals.start, 'noa_B_hocken'], [z.igel.start - 2, 'noa_B_hand-igel']], x: NOA_X}} + // Noas Körperschatten nur ohne erhobene Hand – sonst gäbe es den Hasen/Igel an der Wand doppelt + noa={{pose: [[0, 'noa_B_hocken'], [z.bild0.start + 4, 'noa_B_hand-hase'], [z.hals.start, 'noa_B_hocken'], [z.igel.start - 2, 'noa_B_hand-igel']], x: NOA_X, schatten: 1 - Math.max(hase, igel)}} pino={{pose: [[0, 'pino_A4_staunen'], [z.p1.start, 'pino_A3_lachen']], x: LATERNE.x - 230}} lulu={{pose: 'lulu_A3_lachen', stauchY: strecken}} wandExtra={ diff --git a/remotion/src/folge08/wand.tsx b/remotion/src/folge08/wand.tsx index 58a785c..0e4564a 100644 --- a/remotion/src/folge08/wand.tsx +++ b/remotion/src/folge08/wand.tsx @@ -6,8 +6,8 @@ import {BODEN} from '../baukasten/orte'; import {Abenddunkel, GartenAbend, Laterne, WAND_VOLL, WandSchatten, laterneInNoasHand} from './teile'; // Gemeinsame Bühne für Szene 4–7: die drei an der Hauswand, die Laterne als einzige Lichtquelle. -// Lulu und Pino werfen ihren Schatten an die Wand (Noa nicht: ihr Bild enthält die Laterne samt Stab, -// deren Schatten wäre falsch – die Lampe ist ja das Licht); er nimmt dieselbe Pose, Drehung und Stauchung an +// Alle werfen ihren Schatten an die Wand – Noa nur, wenn sie die Laterne nicht hält (ihr Laternenbild enthält +// Laterne samt Stab, deren Schatten wäre falsch: die Lampe ist ja das Licht); er nimmt dieselbe Pose, Drehung und Stauchung an // (nickt Lulu, nickt ihr Schatten mit). Feste Plätze, damit die Szenen zusammenpassen. export const PLATZ = {noa: 700, pino: 880, lulu: 1180, laterneBoden: {x: 560, y: BODEN - 56}}; @@ -15,7 +15,7 @@ export const PLATZ = {noa: 700, pino: 880, lulu: 1180, laterneBoden: {x: 560, y: export type Buehne = { kam: {x: number; y: number; zoom: number}; laterne: {inHand: boolean; x?: number; y?: number; licht: number; schwung?: number}; - noa: {pose: string | Posenfolge; x?: number}; + noa: {pose: string | Posenfolge; x?: number; schatten?: number}; // schatten: Deckkraft 0–1 (0 solange sie die Laterne hält) pino: {pose: string | Posenfolge; x: number; gang?: Gang; drehung?: number; y?: number; k?: number; versatz?: number}; lulu: {pose: string | Posenfolge; x?: number; hell?: number; drehung?: number; stauchY?: number; k?: number}; wandExtra?: React.ReactNode; // z. B. Hand-Schatten (an der Wand, hinter den Figuren) @@ -31,6 +31,8 @@ export const Wandszene: React.FC = ({kam, laterne, noa, pino, lulu, wand const s = hand.s; const kLulu = lulu.k ?? 1.12; // Lulus Schatten: etwas größer als Lulu, Kopf und Hals passen an die Wand const kPino = pino.k ?? 1 + 220 / Math.max(80, Math.abs(pino.x - lat.x)); + const kNoa = 1 + 160 / Math.max(120, Math.abs(noaX - lat.x)); + const noaSchatten = laterne.inHand ? 0 : (noa.schatten ?? 1); const hell = lulu.hell ?? 1; const pinoGeht = pino.gang?.geht(f); // Niemand steht ganz still: alle atmen, Lulu wiegt sich leicht – die Schatten machen es mit @@ -44,6 +46,7 @@ export const Wandszene: React.FC = ({kam, laterne, noa, pino, lulu, wand {/* Schatten an der Wand (hinter den Figuren) */} + {noaSchatten > 0 && } {wandExtra}