← Deschide previzualizarea DEV

Barza așezată — corecție după captura utilizatorului

v40 — capul deasupra marginii, corpul în cavitate

Captura furnizată în /tmp/a.png a clarificat problema variantei v39: capul era sub marginea din spate, iar pasărea prea mică și prea îngropată. În compoziția nouă, capul și gâtul se ridică deasupra marginii din spate; corpul este mai mare și rămâne în centrul cavității. Lemnul din față acoperă abdomenul și picioarele, nu capul și aproape tot gâtul.

Corecția a fost realizată cu instrumentul integrat imagegen, editând compoziția separată v39, fără modificarea panoramelor originale. Resursa folosită în pagină este assets/barza-cuib-v40/compozitie.webp (aproximativ 58 KB); sursa generată este păstrată în assets/barza-cuib-v40/compozitie-sursa.png. Masca locală a fost extinsă în sus pentru a nu tăia noua poziție a capului. Poziția și scara rendererului animat au fost ajustate la noua poziție așezată.

Înainte — v39 · Detaliul verificat în browser · Desktop · Telefon · Tabletă.

Captură Chromium: capul berzei deasupra marginii din spate, corpul în cavitate și picioarele ascunse

Filmarea pe telefon · Primăvară · Verificări · Promptul exact.

Verificat în Chromium fără WebGL la 1440×900, 390×844 și 768×1024: repaus, ridicare, așezare manuală și revenire automată, HTTP 200, fără erori JavaScript sau HTTP și fără depășire orizontală. Confirmat că vechiul sprite este ascuns când compoziția așezată este afișată. Iarna compoziția este ascunsă automat. Rămân zece albine și două episoade automate ale berzei în trei minute. Marcajul paginii: v40 · CUIB INTEGRAT.

Modificate: scene.js, index.html și acest raport. Noi: assets/barza-cuib-v40/ și captures/barza-v40/. Backup înainte: /docker/websites/dev-backups/cenei-stork-reference-fix-v40/before.tar. Captura utilizatorului, imaginile originale, toate versiunile și backupurile anterioare sunt păstrate. PROD și configurația Docker/Nginx sunt nemodificate.

Compoziție nouă pentru repausul așezat

Probele succesive de decupaj nu au rezolvat convingător compoziția: lăsau corpul în față sau îi tăiau artificial conturul. Pentru repaus este folosită acum o imagine separată, compusă cu imagegen din cuibul original și referința berzei. Corpul este în cavitate, sub marginea apropiată; lemnul existent din față îl acoperă natural. Picioarele nu sunt vizibile.

În pagină se înlocuiește numai un mic decupaj central al cuibului, printr-un strat separat cu margini estompate. Fișierul panoramei originale rămâne nemodificat. Imaginea încărcată este assets/barza-cuib-v39/compozitie.webp, circa 49 KB. PNG-ul generat complet este păstrat în assets/barza-cuib-v39/compozitie-sursa.png; nu este încărcat de pagina de test. Generare prin instrumentul integrat imagegen, apoi codare WebP pentru site.

Captura de detaliu din browser · Desktop · Telefon · Tabletă · Pagina și marcajul versiunii.

Captură Chromium: barza în cavitatea cuibului, corpul acoperit de marginea frontală

La repaus, vechiul sprite animat este ascuns prin display:none; la ridicare compoziția este ascunsă și se afișează rendererul animat. Același lucru a fost verificat după așezarea manuală și revenirea în modul automat. Nu sunt afișate simultan două păsări.

Filmarea pe telefon · Filmarea pe tabletă · Primăvară · Cuibul fără pasăre · Rezultatele verificărilor.

Verificat în Chromium fără WebGL, la 1440×900, 390×844 și 768×1024: HTTP 200, fără erori JavaScript sau resurse HTTP eșuate, fără depășire orizontală, repaus, ridicare, așezare și revenire automată. Confirmată ascunderea compoziției iarna. Sunt păstrate zece albine și două episoade automate ale berzei în trei minute. Mișcările rămân animații 2D; noua compoziție privește aspectul repausului.

Marcajul vizibil al paginii: PREVIZUALIZARE DEV · v39 · CUIB INTEGRAT. Promptul exact folosit cu imagegen · Resursa locală WebP.

Modificate: scene.js, index.html și acest raport. Noi: assets/barza-cuib-v39/, captures/barza-v39/, probele captures/barza-v38/ și captures/barza-v38-probe/. Backupuri înaintea lucrărilor: /docker/websites/dev-backups/cenei-stork-cavity-clip-v38/before.tar și /docker/websites/dev-backups/cenei-stork-brooding-composite-v39/before.tar. Toate originalele și backupurile anterioare sunt păstrate. PROD nu a fost modificat.

Secțiunile de mai jos sunt istoricul variantelor precedente.

v37 — proporții și punct de sprijin corectate

Barza este redusă la 80% din dimensiunea anterioară și are același punct de sprijin în interiorul cuibului atât așezată, cât și în picioare: reperul cuibului plus 16 unități pe verticală. A fost eliminată deplasarea suplimentară care depindea de poziția așezată. Astfel nu mai este așezată pe marginea apropiată a cuibului.

A fost retrasă masca separată a crengilor oblice din v36. Se păstrează numai peretele frontal continuu al cuibului, care acoperă baza corpului; la repaus rămân vizibile capul, gâtul și partea superioară a spatelui. O estompare fină a conturului păsării (1,7 unități în coordonatele sprite-ului) o apropie de claritatea panoramei. Fișierele de imagine rămân nemodificate.

Înainte — v36 · După — așezată · În picioare · Telefon · Tabletă.

Barza așezată în interiorul cuibului

Verificare vizuală în Chromium pentru ambele poziții, la 1440×900, 390×844 și 768×1024, fără erori JavaScript sau depășire orizontală. Stratul frontal folosește aceeași panoramă ca fundalul. Rezultate.

Modificate: scene.js, index.html și acest raport. Capturi noi: captures/barza-v37/ și probele din captures/barza-v37-probe/. Backup: /docker/websites/dev-backups/cenei-stork-nest-placement-v37/before.tar. Comportamentul rar, albinele, meteo, imaginile originale, toate backupurile și PROD sunt păstrate.

v36 — corecția măștii cuibului

În v35, masca acoperea numai zona joasă a cuibului, iar crengile oblice rămâneau în spatele corpului. Deplasarea cu 16 unități în jos accentua impresia de pasăre lipită în față. Poziția așezată este acum retrasă la o deplasare de 10 unități. Sunt readuse în față și crengile oblice și verticale ale cuibului.

O primă probă cu poligoane pline producea benzi artificiale și a fost înlocuită. Masca finală folosește culoarea lemnului din panorama originală pentru crengile selectate: golurile întunecate dintre crengi rămân transparente. Marginea frontală joasă acoperă în continuare baza corpului. Nu au fost modificate imaginile originale și nu este încărcat un nou fișier de imagine pentru această corecție.

Înainte — v35 · După — desktop · Telefon · Tabletă · Primăvară · În picioare.

Verificat în Chromium la 1440×900, 390×844 și 768×1024: așezată și în picioare, fără erori JavaScript sau depășire orizontală. Confirmat că stratul frontal folosește exact imaginea fundalului; iarna pasărea și stratul frontal sunt ascunse automat. Au fost comparate trei capturi la aceeași încadrare: masca activă, masca oprită și cuibul gol. În zona testată deasupra marginii joase, 664 de pixeli ocupau pasărea fără mască și reveneau la imaginea cuibului cu masca activă, confirmând suprapunerea crengilor peste corp.

Mască activă · Fără mască · Cuib gol · Comparație pixeli · Verificări.

Modificate: scene.js, index.html și acest raport. Adăugate capturile din captures/barza-v36/ și capturile diagnostice captures/nest36-empty.png, captures/nest36-grid.png. Backup: /docker/websites/dev-backups/cenei-stork-nest-branches-v36/before.tar. Ritmul rar, originalele, backupurile anterioare, albinele, meteo și PROD au fost păstrate.

v35 — marginea din față acoperă pasărea

Poziția așezată coboară progresiv cu 16 unități în coordonatele panoramei. Un strat deasupra berzei reutilizează exact panorama curentă, decupată după marginea frontală a cuibului; crengile din față acoperă baza corpului și picioarele. La ridicare deplasarea revine treptat la zero. Poziția în picioare este păstrată.

Nu sunt modificate fotografiile și nu este descărcată o imagine nouă: stratul frontal folosește aceeași adresă ca fundalul. Decupajul este local cuibului și se deplasează după reperul sezonier. Straturile meteo rămân deasupra.

Așezată — desktop · Telefon · Tabletă · În picioare · Verificări Chromium.

Verificate pozițiile așezată și ridicată la dimensiunile 1440×900, 390×844 și 768×1024, fără erori JavaScript sau depășire orizontală în aceste probe. Sursa stratului frontal a fost confirmată identică cu fundalul.

Backup înainte: /docker/websites/dev-backups/cenei-stork-nest-depth-v35/before.tar. Modificate: scene.js, index.html și acest raport. Capturi noi: captures/barza-v35/ și captura diagnostică captures/nest-grid-v35.png. Comportamentul rar, albinele, imaginile originale și PROD sunt nemodificate.

v34 — așezată aproape tot timpul

La pornire este deja așezată. Modul automat are numai două episoade scurte în fiecare interval de trei minute, cu începuturi variabile în ferestrele 65–85 și 145–165 secunde. Fiecare episod include o ridicare scurtă, un singur gest și așezarea la loc. În rest rămâne așezată, fără mișcare sau recalcularea imaginii. Planul se reînnoiește la fiecare ciclu. Alegerea gestului: 70% privire, 20% sprijin, 10% pene. Duratele gesturilor rămân cele rapide din v33.

Privirea a fost redusă la o singură întoarcere discretă, până la 55% din unghiul disponibil, o scurtă menținere și revenire; nu mai scanează repetat stânga–dreapta. Butoanele de test funcționează separat și trec în modul manual. Reactivarea modului automat o așază la loc.

Desktop · Telefon · Tabletă · Rezultate: proporția timpului așezată, planuri și comenzi manuale.

Au fost verificate pornirea așezată, eșantionarea întregului ciclu de 180 de secunde, probele manuale și revenirea la automat în Chromium fără WebGL, la dimensiuni de desktop, telefon și tabletă.

Backup: /docker/websites/dev-backups/cenei-stork-quiet-v34/before.tar. Modificate: stork-morph.js, scene.js, index.html și acest raport. Adăugate capturile și rezultatele din captures/barza-v34. Imaginile, albinele, meteo și PROD sunt nemodificate.

v33 — durate scurtate, pauze păstrate

Privirea: 1,6–2 secunde; schimbarea sprijinului: 1,4–1,8 secunde; aranjarea penelor: 2,6–3,2 secunde; așezarea și ridicarea din ciclul complet: 3,2–3,8 secunde. Comanda manuală de așezare oprește ciclul la jumătate și menține poziția așezată, iar ridicarea parcurge restul ciclului. Pauzele dintre gesturi rămân 3,2–6,5 secunde. Sunt schimbate duratele berzei, nu viteza întregii scene.

Tranzițiile 2D și limitele de realism din v32 rămân valabile; această actualizare nu rezolvă toate deformările sau costul randării. Albinele și apa nu au fost accelerate.

Filmarea pe telefon · Timpi efectivi măsurați în Chromium.

Backup: /docker/websites/dev-backups/cenei-stork-tempo-v33/before.tar și copia stork-morph.js în același director. Modificate: perched-stork.js, stork-morph.js (versiunea importului), scene.js, index.html și acest raport. Capturi și filmări noi: captures/barza-v33/. PROD și imaginile originale sunt nemodificate.

v32 — corectarea pâlpâirii și a salturilor dintre fotografii

Versiunea v31 estompa două PNG-uri cu opacități complementare prin compunere normală. În suprapunere, corpul devenea parțial transparent, iar diferențele dintre poziții produceau contururi duble. Acum textura este deformată pe o plasă după repere anatomice comune, iar cele două contribuții sunt adunate cu alfa premultiplicat. Îmbinările triunghiurilor au fost suprapuse pentru a elimina liniile transparente. Cadrele deja calculate sunt reutilizate; interpolarea are 60 de pași pe pereche de poziții.

La privire este folosit numai intervalul profil–trei sferturi, apoi revenire: trecerea până la direcția opusă deforma capul și a fost retrasă din animația activă. Aranjarea penelor folosește aceeași fotografie de bază ca repausul, eliminând schimbarea întregului corp la începutul și sfârșitul gestului.

Limite: aceasta rămâne o animație 2D aproximativă. Nu certifică mișcări realiste. Întoarcerea amplă a capului nu este rezolvată prin acest atlas. Gesturile noi în poziția așezată au fost amânate pentru a nu extinde aceeași problemă. Pentru realism coerent este necesară o animație cu cadre consecutive consistente sau un personaj articulat.

Desktop · Telefon · Tabletă · Verificări și măsurători.

În proba Chromium fără WebGL, eșantioanele din interiorul corpului au păstrat alfa între 252 și 255 din 255 în timpul privirii, în locul estompării corpului. Acest test privește numai zona eșantionată, nu toate marginile siluetei. Așezarea menținută și ridicarea au trecut verificarea; fără erori JavaScript sau depășire orizontală la 1440×900, 390×844 și 768×1024. Proba de randare activă a măsurat aproximativ 49 FPS, cu percentila 95 de 50 ms între cadre: există încă un cost de calcul, deci fluiditatea nu este certificată pe telefoane fizice. Albinele rămân zece, lățime 18, ritm 1,4×.

Noi: stork-morph.js, assets/barza-v31/landmarks-v32.json și captures/barza-v32/. Modificate: perched-stork.js, scene.js, index.html, acest raport. Backup: /docker/websites/dev-backups/cenei-stork-morph-v32/before.tar. Originalele, fișierele v31, toate backupurile și PROD au rămas păstrate.

Versiunea curentă v31: poziții fotografice dedicate

Privirea folosește două direcții noi ale capului, nu simpla înclinare a fotografiei. La schimbarea sprijinului piciorul liber este vizibil îndoit. Așezarea trece printr-o poziție intermediară și rămâne așezată până la o comandă nouă. „Ridică în picioare” termină ridicarea și rămâne în repaus. Gesturile sunt scurte, separate prin pauze variate.

O planșă PNG transparentă cu șase poziții, generată cu instrumentul integrat imagegen din fotografia originală, este afișată local prin SVG. La privire se folosesc pozițiile complete aliniate pentru a evita îmbinări dure la gât. Tranzițiile sunt interpolări între fotografii; nu este un model 3D sau o filmare. La mărire puternică pot fi observate diferențe între poziții. Aranjarea penelor păstrează rendererul anterior.

Cap întors · Picior îndoit · Așezată · Telefon · Tabletă · Rezultatele verificării.

Verificat în Chromium, fără WebGL, la 1440×900, 390×844 și 768×1024: ambele direcții ale capului, piciorul liber, așezarea menținută și ridicarea la repaus; fără erori JavaScript în aceste probe. Dimensiunile mobile sunt simulate.

Fișiere noi: stork-poses.js, assets/barza-v31/poses.png, assets/barza-v31/PROMPT.txt și captures/barza-v31/. Modificate: perched-stork.js, scene.js, index.html și acest raport. Backup: /docker/websites/dev-backups/cenei-stork-poses-v31/before.tar. Fotografia originală, albinele, efectele meteo și PROD nu au fost modificate.

Promptul folosit cu imagegen · Planșa PNG nouă. Secțiunile de mai jos descriu versiunile anterioare, păstrate ca istoric.

Actualizare v30 — ritm: privirea durează 2,3–3,1 secunde, schimbarea sprijinului 2,6–3,4 secunde, aranjarea penelor 4,2–5,3 secunde. Pauzele sunt de 3,2–6,5 secunde. Eliminată legănarea continuă, redus balansul și accelerate mișcările mici de curățare a penelor; coborârea capului și revenirea au durate diferite. Aceste ajustări nu reprezintă o așezare în cuib sau o întoarcere reală a capului: acestea necesită imagini dedicate. Butonul „Pe cuib” rămâne revenirea la repaus în picioare.

Verificări v30 desktop și telefon. Backup înainte: /docker/websites/dev-backups/cenei-stork-rhythm-20261110/before.tar. Modificate: perched-stork.js, scene.js, index.html și acest raport. Adăugate capturile și filmarea din captures/barza-v30. PROD și imaginile originale sunt nemodificate.

Actualizare v29: primul gest este aranjarea penelor și începe după 1,2 secunde, pentru a fi vizibil de la pornire. Butoanele berzei trec automat la detaliul cuibului și aduc scena în partea vizibilă a paginii. Verificare v29 · Desktop · Telefon. Backup: /docker/websites/dev-backups/cenei-stork-visible-20261110-1740/.

Privește în jur prin înclinări discrete ale capului, își schimbă sprijinul și își aranjează penele de pe piept. Clipește la intervale variate. Gesturile au pauze și ordine variabile; planul se reînnoiește la fiecare trei minute. Picioarele rămân ancorate pe cuib.

Pentru verificare, alege încadrarea Detaliu · cuib și folosește butoanele Privește în jur, Schimbă sprijinul și Aranjează penele. Dacă apeși alt gest în timpul unei mișcări, acesta începe după revenirea la poziția neutră. Pe cuib încheie gestul și revine la repaus. Glisorul permite examinarea pozițiilor; Pauză animații oprește mișcarea. Modul automat este sezonier, martie–august; butoanele permit testarea manuală.

Filmări ale gesturilor

Privire:

Schimbarea sprijinului:

Aranjarea penelor:

Capturi și verificări

Desktop 1920×1080 · Telefon 390×844 · Tabletă 768×1024

Repaus · Privire · Sprijin · Pene

Verificat în Chromium pe dev.cenei.ro, inclusiv cu WebGL dezactivat: HTTP 200, fără erori JavaScript sau resurse HTTP eșuate, fără depășire orizontală la cele trei dimensiuni. Testate butoanele, cererea unui gest în timpul altuia, revenirea la repaus, pauza și ascunderea automată iarna. Coordonatele ambelor picioare au fost identice în toate cele patru poziții testate. Tranzițiile calculate la începutul și sfârșitul gesturilor sunt continue.

Proba de performanță în browserul headless a măsurat aproximativ 60 FPS în timpul aranjării penelor. Telefonul și tableta sunt simulate prin dimensiunea ferestrei; aceasta nu este o măsurătoare pe dispozitive fizice. Rezultate · Performanță

Test suplimentar: repetarea aceleiași poziții după repaus a trecut de trei ori consecutiv, cu unghiul randat egal cu cel cerut. A fost corectată invalidarea imaginii memorate la revenirea în repaus. Rezultatul repetării.

Implementare și limite

Este folosit PNG-ul fotografic original, fără modificarea fișierului. Gâtul este deformat local în Canvas 2D și afișat prin SVG; capul și ciocul își păstrează forma. Picioarele sunt separate de partea animată. Randarea gâtului este limitată la 30 de actualizări pe secundă și reutilizează imaginea în repaus. Nu sunt necesare biblioteci, CDN sau WebGL.

Rămâne o animație 2D realizată dintr-o singură fotografie: nu reprezintă o întoarcere tridimensională a capului sau un zbor. Schimbarea sprijinului este intenționat discretă. Zborul nu este inclus în această etapă.

Au fost modificate numai fișierele DEV perched-stork.js, scene.js, scene-config.js și index.html. Au fost adăugate acest raport și captures/barza-pe-cuib-v28/. Configurația ciclului berzei este acum 180 de secunde. Cele zece albine, mărimea de 18 unități și viteza de bază 1,4× au fost păstrate.

Backup înaintea modificărilor: /docker/websites/dev-backups/cenei-stork-movements-20261110-165333/before.tar, plus before-scene-config.js în același director. Backupurile și testele anterioare sunt păstrate. PROD, imaginile originale și configurația Docker/Nginx nu au fost modificate.