Typer av animationer i datorgrafik

I den här artikeln kommer du att lära dig en annan titt på ytterligare utveckling animation. Kommer 3D-animation att ersätta 2D eller kommer de att gå på parallella vägar. Om några funktioner i animationsproduktion i dessa stilar

"2D-animation är död". Vi hör den här frasen överallt, trots de senaste kortfilmerna som har nominerats till Oscars.

Oavsett om klassisk animation verkligen är död eller inte, kommer vi idag att försöka se på situationen från en annan vinkel, och förstå anledningarna till varför 2D-animation bör förbli i det förflutna.

2D-animation är mitt livs passion, som har gått med mig sida vid sida i många år. Under min karriär insåg jag att man måste lära sig att se på vilken situation som helst från olika vinklar. Eftersom folk säger "2D-animation är död", måste vi veta VARFÖR de säger det, och också förstå varför det är bra och varför det är dåligt. Det finns inga hypehyperboler i den här artikeln. Bara torra fakta. Låt oss börja.

1. 3D är lättare.

Ja, det finns animatörer som kommer att skumma om munnen och bevisa för dig att 3D-animering INTE är lättare än 2D, tills du springer ut ur rummet och gömmer dig på en säker plats. Men överväg gärna min synpunkt.

Animation är animation. Det här är inte en stil, eller ens en typ (2D, 3D, stop motion, etc.). Oavsett vilket medium du animerar i kommer du att använda samma principer som i 2D, 3D, 5D och vilken annan form av animering som helst. Därför är BOKSTAVELLT ingen form av animering svårare eller lättare. Detta är en subjektiv indikator. Därför måste vi vara uppmärksamma på PROCESSEN.

Låt oss säga att du har en animatör som är en mästare på sitt hantverk. Hypotetiskt har hon ingen erfarenhet av animering, men hon har teoretiska färdigheter som Glen Keane själv skulle avundas. Det skulle vara slöseri med tid, ansträngning och talang att inte låta den här animatören bli upptagen, så det är vår plikt att ge henne ett jobb.

För att kunna tillämpa sina kunskaper i 3D måste hon studera 3D-mjukvara. Lär dig ny programvara – svår uppgift, men genomförbart. Genom att gå till exempel vissa kurser och studera viss litteratur kommer vår hypotetiska animatör att kunna tillämpa sin teoretiska superkunskap i 3D-rymden.

För att kunna tillämpa sina kunskaper i 2D kommer hon dock också att behöva lära sig mycket - grunderna i att rita på masternivå. Men det finns ingen tydlig uppslagsbok med instruktioner här, eftersom det inte finns något program här. Du kan gå kurser, men de kommer bara att vara det första steget, eftersom du kommer att lära dig rita hela ditt liv, till skillnad från att trycka på knappar i ett program.

Tro inte på mina ord, kolla dem.

Ta papper, gör hundra teckningar av olika poser och försök se till att karaktären (som du förresten inte kom på) i varje pose förblir samma karaktär, med samma proportioner och design. Det här är en fullständig mardröm.

Nej, jag säger inte att 3D-animering är riktigt lätt, för låt mig påminna dig om att animation är animation. Det här är färdigheten som behövs för att ge en bild liv och överföra den till skärmen. Den ena kräver säker användning av programvara, den andra kräver mästerliga ritfärdigheter, så att Da Vinci skulle lägga ifrån sig pennan och kasta sitt arbete i papperskorgen av avund.

Sanningen är att sådana artister blir färre och färre för varje dag. Det beror på att animation är en konstform som förs vidare från lärare till elev. Du behöver en mer erfaren animatör för att påpeka dina misstag. och ju färre sådana lärare finns kvar, desto färre elever fortsätter sitt arbete.

Visst kan vi använda olika tekniker för att underlätta vissa saker, men då måste vi fråga oss själva: ÄR DET VÄRT DET?

2. Datorer är överlägsna människor.

Har vi redan tänt en fin brasa? Låt oss kasta lite mer ved.

Det enkla faktum är att en dator kan göra vad som helst på en detaljnivå och perfektion som ingen människa kan göra detsamma. Tro mig inte? Försök att göra detta manuellt:

Vissa kanske hävdar: "Tja, de gör helt enkelt inte den här typen av bilder i 2D. Det görs annorlunda där." Frågan återstår då: Varför? Varför och varför ska vi begränsa oss till något när tekniken redan är här i dina händer och kan ge dig obegränsade möjligheter. Varför gå tillbaka och göra något som är svårare att göra, även i ett begränsat format? Varför inte acceptera framtiden och leva i det förflutna?

Det här är frågor som varje animatör måste svara på, oavsett hur eller var de använder sina färdigheter. Vi MÅSTE fråga: "Är det här Det bästa sättet? Kan vi berätta historien bättre på det här sättet (det är trots allt det som är viktigast)? Kommer det att finnas en bättre koppling mellan karaktär och tittare? Kommer dessa vackra realistiska vågor att hjälpa skottet, eller bör de dämpas, för trots sin skönhet och brant distraherar de?”

Att använda teknik för teknikens skull är ett dårjobb. Samma sak som att göra saker "på det gamla sättet" för det var så de brukade göra det. Om den nya metoden är överlägsen den gamla, om den ger dig nya möjligheter, så är det en dum idé att överge den för nostalgins skull. Som konstnärer/tekniker MÅSTE vi VETTA VARFÖR VI VÄLJER en viss teknik/metod/metod/medium för att uppnå våra mål, och detta val bör aldrig vara "för att någon annan gjorde det." att inspireras av våra mentorer, våra "konstnärliga förfäder", är underbart. Men att jämföra sig med dem, eller ännu värre, att försöka bli dem, är ett säkert sätt att skruva upp. De är dem, och vi är vi.

3. Datorer är överlägsna människor. (noggrannhet)

Jag frågade en av vår tids coolaste animatörer, Tom Bancroft, om "Vad gör 3D-animation bättre" och fick det här svaret:

"En sak som 3D-animation (och säkert människorna bakom) gör bättre än 2D är precision. Jag skulle säga extrem precision. Jag arbetade med några av dessa scener i en av 1900-talets mest exakta filmer, Disney: Pocahontas (till exempel när hon tänker på sin döda mamma). Jag kan intyga att även med de bästa mellanbilderna och de bästa wedge-ups, är det otroligt svårt att visa en karaktär som knappt rör sig under långa perioder, speciellt när den senare visas på riktigt stora skärmar där allt är synligt. Och under 2D-animeringens dagar på Disney hade vi inte råd att använda samma karaktärsblad, annars skulle det bli livlöst och smälta in i bakgrunden. Och i datoranimering det är inga problem att göra detta. Det blev lätt att knappt flytta något. Inga skakiga linjer. Många av de bästa CG-animatörerna använder denna funktion aktivt. Och samtidigt använder CG-animatörer ofta 2D-animering för förhandsvisning. Och detta är definitivt vettigt.

Har vår konsts pendel svängt för långt? Ja, jag tror att det är precis vad vi ser nu. Ultrarealistisk animation, som i sin trovärdighet liknar en långfilm, och därför går magin som ligger i centrum för animationskonsten förlorad i den.”

Tom märkte mycket viktig poäng: "3D-animation (och, naturligtvis, människorna bakom)." Många människor (icke-artister) tror att datorn gör allt åt oss. När jag säger att datorer är överlägsna människor så säger jag att datorn som verktyg har en högre grad av precision. Detta gör att animatörer kan göra saker som en penna inte kan. Och som redan sagt, animation är animation, oavsett vad.

4. Förändringar ligger framför oss.

Låt oss säga att du har en scen i 3D och din regissör plötsligt inser att det skulle vara bättre att visa den ur fågelperspektiv, och inte ur en masks synvinkel, som nu är fallet. Du kan få till stånd en sådan bluff i 3D utan problem! En liten justering av den befintliga kameran och voila. Och i 2D? Allt du behöver göra är att kasta en stol på närmaste manusförfattare. I 2D måste animatören inte bara göra om scenen, utan börja från början. Bokstavligen. Nya skisser, massor av skisser, sökande efter den optimala synvinkeln på scenen...istället för att bara lite justera den virtuella kameran som de gör nu i 3D. Så att göra ändringarna som oundvikligen följer manuset blir inte bara snabbare, utan också billigare för produktion.

5. 3D är mer verkligt.

Låt oss gå lite utanför ramen för denna artikel. När jag förberedde materialet frågade jag några av mina kollegor varför 3D hypotetiskt är den enda utvecklingen av framtida animation. Några av intervjupersonerna var animatörer och de frågade om jag var sjuk i huvudet. En del var bara entusiaster, men en var bara en vän till mig som förknippas med animation enbart med en stol och popcorn på bion som jag bjöd in honom till. Utanför sin barndom tog han sällan initiativ till att titta på någon tecknad film. Jag frågade om han hade sett "Frozen"? Nej. Vad sägs om "City of Heroes" eller "How to Train Your Dragon 2"? Nej. Jag brydde mig inte ens om att fråga om han hade sett Sagan om prinsessan Kaguya. Han såg den animerade serien Hercules, eftersom han är ett fan av grekisk mytologi, men erkände att han inte tyckte om att se själva filmen.

På min fråga: "Varför 3D?" hans svar var uppenbart och helt enkelt upprörande - hon är mer realistisk. för honom suddar 3D-animation ut gränserna mellan verklighet och fantasi, och för honom är det ett sätt att teoretiskt förverkliga några av hans fantasier.

Och om du ställer samma fråga till någon 2D-animatör kommer de att berätta att övertygande karaktärer gör det som händer verkligt, och i detta är de överlägsna all teknik, design och modeller (3D). Men problemet är att det inte är animatörerna som går på bio. Salarna är fyllda av olika människor som inte har en aning om hur animation görs och fungerar. För dem är "3D-animation mer verklig."

Du kan ifrågasätta detta faktum så mycket du vill utifrån en kreativ persons synvinkel som är direkt insatt i animeringens process/historia etc.. Men du måste alltid komma ihåg MÅLPUBLICIEN.

Som jag redan nämnt, medan jag skrev den här artikeln, pratade jag med olika människor från olika områden. Charles Kenny - författare till AnimationAnomaly.com delade en intressant synpunkt som jag aldrig hade tänkt på tidigare: Infrastruktur.

”Traditionell animation, som är under konstant press från CG, har inte alls samma imponerande kapital och tekniska utveckling. Om du som investerare vill investera i en renderfarm eller mjukvaruutveckling, då är du intresserad av att din produkt ska kunna återanvändas, vilket motsvarar 3D-animation.”

Samantha Youssef från Studio Technique har detta att säga i sin kommande bok, Movements and Forms:

”I slutändan tror jag att 3D är mer effektivt ur ett affärsperspektiv, och branschen är i första hand ett företag, inte en konst. Oavsett hur många underbara artister som arbetar i den här branschen, oavsett vilka mästerverksprojekt som utvecklas, kommer motivationen alltid att vara densamma – pengar.”

Ovanstående är en fet poäng ur logisk synvinkel. (Ja, ja, vi artister struntar ofta i logiken, men den finns, tro mig). Idag lägger studiorna mycket mer ansträngning, investeringar och hopp på 3D-produktion.

Naturligtvis, tack vare detsamma, kan Sintika fortsätta att animeras med klassiska tekniker, men nuförtiden, med tanke på den ökade efterfrågan, snäva deadlines, marknadsföring och andra absurda termer, föredras datorisering.

Ingen beslut kommer inte att tillåta redan skapad dyr programvara, rendera gårdar och tekniker för att samla damm medan animatörer vässar sina pennor. Och vare sig du vill erkänna det eller inte så är vår bransch business, och först då konst. Om 3D-verktygen redan finns här, infrastrukturen är etablerad och arbetsflödet är fulländat, varför inte använda det KOMPETENT?

Låt oss sammanfatta.

När jag började samla material till den här artikeln gjorde jag det bara för att jag är hundra procent ett 2D-fan och det var intressant för mig att se på situationen från en annan vinkel. I slutet av min forskning hade jag nästan övertygat mig själv om att det var värt att hedra 2D:s minne och inte vänta på att hon långsamt skulle dö i våra armar.

Men ändå.

Som du kan se finns det en anledning som vägrar kapitulera från djupet av mitt sinne angående det faktum att 2D måste fortsätta. Jämfört med fakta ovan är det helt ologiskt och irrationellt. Detta är dock den mest övertygande anledningen:

2D-ANIMATION = MÄNNISKOR.

Jag har sett och älskat många 3D-animerade filmer. De var övertygande, med rika bilder och inre värld. Men jag kände mig aldrig så mycket "mänsklig" i dem som jag gjorde i 2D-animation.

Genom att ge maskinen viss kontroll över vad som händer tror jag verkligen att vi förlorar en bit själ i slutprodukten. Naturligtvis är det många som inte håller med mig (men i den här artikeln kan du utmana vilka som helst av mina ord =)), som säger att datorn bara är ett verktyg, som innan det fanns en penna, innan den fanns en glöd från en eld och en grottvägg. Detta är en rättvis poäng och jag accepterar den. Samtidigt kommer det att finnas animatörer som hävdar att 101 Dalmatiner och Djungelboken var animationens höjdpunkt på grund av animatörens råa linjer som inte polerades till maskinell precision.


Människor är inte perfekta. Och enligt min mening är det tack vare våra brister som vi skapar de fantastiska sakerna som vi skapar. Och det finns saker som bara en ofullkomlig person kan göra perfekt. Levande linjer i ritningen, ojämna kanter, "misstag" som vissa kanske säger - det är precis det som lockar mig till 2D-animation. Du ser mycket djupare ut än just dessa linjer, former och fläckar.

Låter snorigt? För det är de vi är. Människor. Vi är människor och vi kännetecknas av sådana känslor som kärlek, hat och massor av andra komplexa känslor. Genom att ta bort detta element, till och med bara låta datorn göra jobbet "rent", förlorar vi 2D och det som är gömt i det. Det är detta argument som alltid kommer att ligga på skalan av min skala "För 2D och mot 3D". Medan vi lever, de som känner till och minns 2D-animation i sin bästa åren, hon kommer också att vara vid liv.

01/03/17 6,3K

Animationstekniker utvecklas ständigt, och spelutvecklare och filmstudior letar ständigt efter begåvade och kreativa individer som kan tillämpa dessa tekniker.


Här är huvudtyperna av animation som kan användas för att skapa digitala karaktärer för tv-program, kommersiella applikationer, företagslogotyper, filmer, videor eller spel.
  • Traditionell animation.
  • 2D vektor animation.
  • 3D datoranimation.
  • Rörlig grafik.
  • Stop motion.

Traditionell animation

Har du någonsin sett bilder som visas som ramar i snabb följd, ritade på genomskinliga pappersark med färgade markörer? Denna typ av datoranimering kallas traditionell. Den används för preliminära karaktärsskisser.

Denna process kan vara ganska dyr och tidskrävande, eftersom animatörer måste skapa en serie olika bildrutor baserat på 24 bildrutor per sekund. Denna metod används främst på datorer, såväl som surfplattor med speciella datorprogram, så att du kan skapa animationer i stil med gamla Disney-tecknade filmer.

2D vektor animation

Den mest använda animationsstilen. Dess ramar är skapade på en relativt plan yta. Dessutom har vektoranimering antagit några traditionella animeringstekniker. I verkligheten är det samma sak som traditionell animering, förutom att en process som kallas skuggning och skuggning tillämpas på ramarna.

Under denna process placerar animatörer tunna, genomskinliga ark av celluloid på papper som animerade karaktärer ritas på och överför dem sedan till film. I slutet finns stillbilder från olika karaktäreröverlappar varandra, och på grund av filmens höga transparens kan du skapa en komposition av olika element och karaktärer.

3D datoranimation

3D-animering skiljer sig helt från andra typer av animering inom datorgrafik. Även om de använder samma principer för komposition och rörelse, skiljer sig de tekniska metoderna som används för att lösa de olika problemen avsevärt. I 3D-animering behöver animatören inte vara en grafiker. Det är mer som att leka med dockor än att rita.

Dessa kallas även datorgenererade bilder ( CGI). De uppstår när datoranimatörer skapar en ström av bilder som sammanförs för att bilda en animation. Att kombinera dynamiska och statiska bilder görs med hjälp av datorgrafik. Karaktärer skapade i 3D visas digitalt på skärmen och kombineras sedan med trådramen, vilket gör att varje modell kan animeras på olika sätt.

Animation skapas genom att skapa modeller i individuella nyckelbildrutor, och sedan multiplicerar datorn dem och tolkar animeringen genom att lägga till mellanliggande bildrutor mellan nyckelbildrutor.

Dessutom ägnas mycket tid åt att arbeta med kurvor som representerar olika delar av föremålet vid olika tidsperioder. I 3D-animering måste alla karaktärer beaktas, även de som är det visst ögonblick tiden blockeras av något och är inte synliga.

Huvudskillnaden mellan dessa typer av animering är att i traditionell och 2D-animation arbetar konstnären på individuella bildrutor, medan det i 3D-animering alltid finns ett kontinuerligt flöde. Om det slutar uppfattas det som ett fel. Även när karaktären förblir på plats finns det alltid ett kontinuerligt flöde av ramar som skapar en illusion av verkligheten.

Rörlig grafik

Har du någonsin undrat hur reklamfilmer, animerade logotyper, filmöppningstexter och appannonser skapas? Detta görs med hjälp av rörliga grafiska texter och element, eller som jag kallar det, rörlig grafik.

Detta är en process som använder "multiplicering" av animerade bildrutor för att skapa jämna rörelser mellan bildrutor. Rammultiplikationsprogram stöder skript som automatiskt ändrar animeringen för att skapa många effekter.

3D-kompositioner skapas av platta element som rör sig i förhållande till varandra, vilket skapar en illusion av volym. De kan också ackompanjeras av ljudeffekter eller musik. Sådana objekt används ofta i multimediaprojekt.

Stop motion

Stop motion är en typ av datoranimation som är mer lik traditionell animation. Allt du behöver göra är att ta ett foto av ett objekt, och när du flyttar objektet en relativt kort sträcka tar du ytterligare ett foto. Denna procedur upprepas upprepade gånger, och när bilderna spelas upp en efter en skapas intrycket av rörelse.

Att skapa en 2D-tecknad film i KINESKO är:

Priset för 2D-animering beror på sådana faktorer

  1. Timing för videon.
  2. Animeringens komplexitet. Ju mer detaljerad ritningen är, desto högre pris på 2D-animering.
  3. Tillgång till ytterligare tjänster(röst, marknadsföring, etc.).

Stadier för att skapa 2D-animationer

1. Skapa 2D-animation börjar med insamling och analys av initial information, på grundval av vilken den bildas aning. Efter dess överenskommelse med kunden skrivs det scenario.

2. Nästa steg för att göra 2D-animering är utveckling av karaktärsdesign. Det börjar med en skiss ritad av konstnären, som senare förfinas och förenklas. Konstnären kommer på utseende karaktärer, deras känslor och till och med de ljud de gör.

3. Sedan går vi vidare till skapa en storyboard, preliminär visualisering av videon. Det låter animatörer förstå hur den slutliga videon ska se ut (vinkel, utseende och beteende hos karaktärer, etc.).

4. En storyboard används för att skapa nyckelbilder för video. Efter att ha ritat dem börjar arbetet med att skapa mellanramar(fasning). Dra parallellt bakgrunder.

5. Efter att 2D-animationsproduktionen är klar finns det fortfarande röstskådespeleri Och lägga till ljudeffekter.

Beställ med 2D-animationstjänst

Varför du borde göra 2D-animering

1. I 3D-animering finns det många begränsningar när man konstruerar en ram eller scen. Att skapa 2D-animationer är mycket lättare. 2D-karaktärer är mer flexibla och har bättre ansiktsuttryck vilket bidrar till deras minnesbarhet. 3D-modeller skapas på olika sätt, varje rörelse beräknas med matematiska formler.

2. 2D-animering använder mer visuella effekter än 3D, vilket påskyndar arbetet avsevärt.

3. Karaktärsanimering i 2D-videor kostar mindreän i volymetriska.

4. I 2D-animering kan information fylla hela skärmen. I 3D-videor tar landmärken i rymden upp en del av skärmen och minskar antalet arbetspixlar.

5. För voluminösa karaktärer kan håret "sjunka" in i huvudets struktur, och öronen kan gå genom hatten. Det finns inga sådana problem med 2D-animerade karaktärer.


1. "Gummi"-hjälte. De tecknade karaktärernas kroppar är ofta komprimerade och uttänjda. Och ändå måste kroppens volym förbli densamma.

2. Förberedande rörelser. Innan någon åtgärd utförs gör en person vanligtvis förberedande rörelser. I animation är denna teknik överdriven. Främst för att meddela tittaren vad som kommer att hända härnäst.

3. Scenframträdande. Positionerna och ansiktsuttrycken för animerade karaktärer ska vara enkla och uttrycksfulla.

4. Oändliga rörelser.Även om en tvådimensionell karaktär är statisk bör stödelementen vara i konstant rörelse.

5. Rörelse i bågar. Levande ting rör sig alltid längs en bågformad väg. Även om plötsliga rörelser kan tyckas vara raka, är detta vilseledande.

6. Karikatyr. Animation och realism är svåra saker att kombinera. En glad karaktär ska lysa som solen, medan en arg karaktär ska se ut som en kittel redo att explodera.

7. Attraktionskraften hos karaktärerna.Även ett läskigt troll som bor i ett träsk kan vara attraktivt. Om karaktären verkar tråkig kommer hela filmen att verka så.

Hur gör man en animerad karaktär söt?

  • karaktären ska se ut som ett barn;
  • hans huvudkaraktärsdrag är blygsamhet och självtvivel;
  • hans huvud bör vara större än hans kropp, och hans ögon bör vara lågt liggande;
  • hans kropp bör vara fyllig, betona en god aptit.

Utvecklingen av skapande av 2D-animationer

1. "Steamboat Willie"(1928) är den första ljudtecknade filmen. Detta är också den tredje tecknade filmen där Musse Pigg förekommer.

2. "Snövit och de sju dvärgarna"(1937) blev den första färgtecknade filmen i full längd. Hon fick till och med en Oscar för sina innovativa prestationer.

3. "Mary Poppins"(1964) är inte den första filmen som kombinerar live action med animation. Detta är dock det främsta exemplet på användningen av sådan teknik, utan vilken Who Framed Roger Rabbit och andra kända filmer inte skulle existera.

4. "Katten Fritz äventyr"(1962) var den första tecknade filmen som fick betyget X. På grund av dess erotiska och våldsamma scener visades den aldrig på tv, men den blev en startpunkt i animationens historia för vuxna.

5. "Akira"(1988) släpptes efter att Hayao Miyazaki grundade sin berömda Studio Ghibli. Men det var hon som fungerade som drivkraften för populariseringen av anime i Amerika och resten av världen, vilket öppnade vägen för filmerna av den tidigare nämnda Miyazaki, Evangelion och många andra.

6. "Vinnie Bear och hans vänner" blev Disneys sista handritade tecknade film, vilket markerade slutet på en era.

Detta är en ganska provocerande fråga som oroar många människor. Allt började från det ögonblick då ett så gigantiskt animationsmonster som Disney (grundaren av stilen) tillkännagav stängningen av sin 2D-avdelning. Frågan som alla tänker på är, vad betyder detta för framtiden för klassisk animation? Betyder detta att det inte kommer att finnas mer klassisk animation?

Allt oftare stöter jag på unga proffs som föredrar 2D-animation, men arbetar i 3D. När jag frågar dem varför är svaret för det mesta detsamma - "Men det finns ingen framtid för 2D-animation. Klassisk animation är död! Men är detta sant? Är 2D-animation verkligen död? Låt oss ta reda på det.

Till att börja med är "2D-animation" och "klassisk animation" två helt olika begrepp. En av dem betyder riktning, typ av animation, "2D" - platt, tvådimensionell animation. Och ett annat begrepp betyder teknik. Den klassiska tekniken är att arbeta på ett animationsbord med Disneys 12 principer. Dessa två begrepp bör aldrig förväxlas.

"Klassisk animation", avkodningen av detta koncept i själva namnet är "KLASSISK". Under många år gjordes animering på animationsbord, med samma oförändrade 12 principer som uppfanns för länge sedan. Det här är en klassiker, som andra bra klassiska saker i vår värld, som till exempel Mozarts musik. Deras tid går, men vi uppskattar dem fortfarande och går vidare, med hjälp av den samlade erfarenheten. Men vi kan inte säga att klassisk animation är död. Den har precis genomgått förändringar, hänger med i tiden och anpassar sig till kraven från en ny generation tittare.

Nu är det svårt att prata om en specifik typ av animation. Gränserna har suddats ut. Sällan i början av ett projekt vet en studio om det kommer att vara ett 2D- eller 3D-projekt. Först genomförs testning - i vilken animeringsriktning idén kommer att vara tydligast, lättast att skapa och, naturligtvis, snabbast. Och först då, baserat på resultaten av många tester, ibland till och med många år, bestäms vilken utrustning som ska användas.

CSS3 animation Ger sajter dynamik. Det ger liv till webbsidor och förbättrar användarupplevelsen. Till skillnad från CSS3-övergångar baseras skapande av animationer på nyckelbildrutor, som låter dig spela upp och upprepa effekter automatiskt under en viss tid, samt stoppa animeringen inom en loop.

CSS3-animering kan användas för nästan alla html-element, såväl som:före och:efter pseudoelementen. Listan över animerade egenskaper finns på sidan. När du skapar animationer, glöm inte eventuella prestandaproblem, eftersom att ändra vissa egenskaper kräver mycket resurser.

Introduktion till CSS-animering

Webbläsarstöd

IE: 10.0
Firefox: 16,0, 5,0 -moz-
Krom: 43.0, 4.0 -webkit-
Safari: 4.0 -webkit-
Opera: 12,1, 12,0 -o-
iOS Safari: 9, 7.1 -webkit-
Opera Mini:
Android webbläsare: 44, 4.1 -webkit-
Chrome för Android: 44

1. Nyckelrutor

Nyckelrutor används för att ange värden för animeringsegenskaper vid olika punkter i animeringen. Nyckelrutor definierar beteendet för en animationscykel; animeringen kan upprepas noll eller fler gånger.

Nyckelbildrutor specificeras med @keyframes-regeln, definierad enligt följande:

@keyframes animationsnamn (regellista)

Skapandet av animationer börjar med installationen nyckelramar@keyframes regler. Ramar avgör vilka egenskaper som kommer att animeras i vilket steg. Varje ram kan inkludera ett eller flera deklarationsblock av ett eller flera egenskaps- och värdepar. @keyframes-regeln innehåller namnet på elementets animering, som länkar regeln och elementets deklarationsblock.

@keyframes shadow ( från (text-shadow: 0 0 3px black;) 50% (text-shadow: 0 0 30px black;) till (text-shadow: 0 0 3px black;) )

Nyckelrutor skapas med hjälp av nyckelorden från och till (motsvarande värdena 0% och 100%) eller med hjälp av procentenheter, som kan anges så många du vill. Du kan också kombinera nyckelord och procentenheter. Om ramar har samma egenskaper och värden kan de kombineras till en deklaration:

@nyckelrutor flyttas ( från, till ( överst: 0; vänster: 0; ) 25 %, 75 % (överst: 100 %;) 50 % (överst: 50 %;) )

Om 0 % eller 100 % ramar inte anges, skapar användarens webbläsare dem med hjälp av de beräknade (ursprungligen inställda) värdena för den animerade egenskapen.

Om flera @keyframes-regler definieras med samma namn, kommer den sista i dokumentordningen att aktiveras och alla tidigare ignoreras.

När @keyframes-regeln har deklarerats kan vi referera till den i animationsegenskapen:

H1 ( teckenstorlek: 3,5 em; färg: mörkmagenta; animation: shadow 2s oändlig lätthet in-ut; )

Det rekommenderas inte att animera icke-numeriska värden (med sällsynta undantag), eftersom resultatet i webbläsaren kan vara oförutsägbart. Du bör inte heller skapa nyckelbildrutor för egenskapsvärden som inte har en mittpunkt, som egenskapsvärden färg: rosa och färg: #ffffff , width: auto och width: 100px , eller border-radius: 0 och border- radie: 50% (i det här fallet skulle det vara korrekt att ange kantradie: 0%).

1.1. Timingfunktion för nyckelbilder

En nyckelbildrutestilregel kan också deklarera en tillfällig funktion som ska användas när animeringen flyttas till nästa nyckelbildruta.

Exempel

@keyframes studsar ( från ( överst: 100px; animation-timing-funktion: ease-out; ) 25% ( top: 50px; animation-timing-function: ease-in; ) 50% ( top: 100px; animation-timing- funktion: ease-out; ) 75% ( övre: 75px; animation-timing-funktion: ease-in; ) till ( övre: 100px; ) )

Fem nyckelbildrutor är specificerade för animationen som heter "studs". Mellan den första och andra nyckelbildrutan (det vill säga mellan 0 % och 25 %), används easing-funktionen. Mellan den andra och tredje nyckelbildrutan (det vill säga mellan 25 % och 50 %), används den mjuka accelerationsfunktionen. Och så vidare. Elementet flyttar sig uppåt på sidan med 50px, saktar ner när det når sin högsta punkt, och snabbar sedan upp när det sjunker till 100px. Den andra halvan av animeringen beter sig på liknande sätt, men flyttar bara elementet 25px upp på sidan.

Tidtagningsfunktionen som anges i nyckelbilden till eller 100 % ignoreras.

2. Animationsnamn: egenskapen animation-name

Egenskapen animation-name anger listan över animeringar som tillämpas på elementet. Varje namn används för att välja en nyckelbildruta i en regel som tillhandahåller egenskapsvärden för animeringen. Om namnet inte matchar några nyckelbildrutor i regeln, det finns inga egenskaper att animera, eller så finns det inget animationsnamn, kommer animeringen inte att köras.

Om flera animeringar försöker ändra samma egenskap kommer animeringen närmast slutet av listan med namn att köras.

Animeringsnamnet är skiftlägeskänsligt och nyckelordet none är inte tillåtet. Det rekommenderas att använda ett namn som återspeglar kärnan i animationen, och du kan använda ett eller flera ord listade med ett bindestreck - eller understrecket _ .

Fastigheten går inte i arv.

Syntax

Animation-name: none; animationsnamn: test-01; animationsnamn: -sliding; animationsnamn: rörlig-vertikalt; animationsnamn: test2; animationsnamn: test3, move4; animationsnamn: initial; animationsnamn: ärva;

3. Animation duration: animation-duration egenskap

Egenskapen animation-duration anger varaktigheten för en animeringscykel. Anges i sekunder s eller millisekunder ms. Om ett element har mer än en animation specificerad kan du ställa in en annan tid för varje genom att lista värdena separerade med kommatecken.

Fastigheten går inte i arv.

Syntax

Animationens varaktighet: .5s; animationslängd: 200ms; animationslängd: 2s, 10s; animationslängd: 15s, 30s, 200ms;

4. Timing funktion: animation-timing-funktion egenskap

Egenskapen animation-timing-function beskriver hur animeringen kommer att fortskrida mellan varje par nyckelbildrutor. Under animeringsfördröjning tillämpas inte timingfunktioner.

Fastigheten går inte i arv.

animation-timing-funktion
Värden:
linjär Linjär funktion, animering sker jämnt över hela tiden, utan fluktuationer i hastighet.
Bezier funktioner
lätthet Standardfunktionen, animeringen startar långsamt, accelererar snabbt och saktar ner i slutet. Motsvarar cubic-bezier(0.25,0.1,0.25,1) .
lätta in Animeringen startar långsamt och går sedan långsamt upp i slutet. Motsvarar cubic-bezier(0.42,0,1,1) .
lätta ut Animeringen startar snabbt och saktar ner mjukt i slutet. Motsvarar cubic-bezier(0,0,0.58,1) .
lätta-in-ut Animationen startar långsamt och slutar långsamt. Motsvarar cubic-bezier(0.42,0,0.58,1) .
cubic-bezier(x1, y1, x2, y2) Tillåter dig att manuellt ställa in värden från 0 till 1. Du kan bygga vilken bana som helst av hastigheten på animeringsändringen.
stegfunktioner
steg-start Ställer in steg-för-steg-animering, delar upp animeringen i segment, ändringar sker i början av varje steg. Utvärderas i steg(1, start) .
stegände Steg-för-steg-animering, ändringar sker i slutet av varje steg. Utvärderas i steg(1, slut) .
steg (antal steg, stegposition) En stegtidsfunktion som tar två parametrar. Den första parametern anger antalet intervaller i funktionen. Detta måste vara ett positivt heltal större än 0, om inte det andra argumentet är hopp-ingen, i vilket fall det måste vara ett positivt heltal större än 1. Den andra parametern, som är valfri, anger stegpositionen - punkten där animeringen börjar, med ett av följande värden:
  • jump-start - det första steget sker vid värdet 0
  • hoppa slut - sista steget sker vid värde 1
  • hoppa-ingen - alla steg sker inom intervallet (0, 1)
  • hoppa-båda - det första steget sker med värdet 0, det sista - med värdet 1
  • start - beter sig som tjuvstart
  • slut - beter sig som ett hoppslut

Med värdestart börjar animeringen i början av varje steg, med värdet slut i slutet av varje steg med en fördröjning. Latensen beräknas genom att dividera animationstiden med antalet steg. Om den andra parametern inte anges används standardvärdet slut.

första
ärva

Syntax

Animation-timing-funktion: lätthet; animation-timing-funktion: ease-in; animation-timing-funktion: ease-out; animation-timing-funktion: lätta-in-ut; animation-timing-funktion: linjär; animation-timing-funktion: steg-start; animation-timing-funktion: steg-slut; animation-timing-funktion: cubic-bezier(0.1, 0.7, 1.0, 0.1); animation-timing-funktion: steg(4, slut); animation-timing-funktion: lätthet, steg-start, cubic-bezier(0.1, 0.7, 1.0, 0.1); animation-timing-function: initial; animation-timing-funktion: ärva;

Steg-för-steg-animering kan användas för att skapa intressanta effekter, såsom text som skrivs ut eller en laddningsindikator.

5. Animationsupprepning: egenskapen animation-iteration-count

Egenskapen animation-iteration-count anger hur många gånger animationsslingan spelas. Ett startvärde på 1 betyder att animationen kommer att spelas från början till slut en gång. Den här egenskapen används ofta tillsammans med animation-direction-egenskapens alternativa värde, vilket gör att animeringen spelas upp i omvänd ordning i alternativa loopar.

Fastigheten går inte i arv.

Syntax

Animation-iteration-count: oändlig; animation-iteration-count: 3; animation-iteration-count: 2,5; animation-iteration-count: 2, 0, oändlig;

6. Animation direction: animation-direction-egenskap

Egenskapen animation-direction bestämmer om animeringen ska spelas i omvänd ordning på vissa eller alla loopar. När animeringen spelas upp i omvänd ordning, är också timingfunktionerna omvända. Till exempel, när den spelas i omvänd ordning, kommer ease-in-funktionen att fungera som ease-out.

Fastigheten går inte i arv.

animation-riktning
Värden:
vanligt All animering upprepas uppspelning enligt specifikationen. Standardvärde.
omvänd Alla animationsupprepningar spelas i motsatt riktning mot hur de definierades.
alternativ Varje udda upprepning av animationsslingan spelas i normal riktning, varje jämn upprepning spelas i motsatt riktning.
växelvis-omvänd Varje udda upprepning av animationsslingan spelar i motsatt riktning, varje jämn upprepning spelar i normal riktning.
första Ställer in egenskapsvärdet till standardvärdet.
ärva Ärver egenskapsvärdet från det överordnade elementet.

För att avgöra om en upprepning av en animationsslinga är jämn eller udda, börjar antalet upprepningar på 1.

Syntax

Animation-riktning: normal; animation-riktning: omvänd; animation-direction: alternativ; animation-riktning: alternativ-omvänd; animationsriktning: normal, omvänd; animationsriktning: alternativ, omvänd, normal; animation-direction: initial; animation-direction: ärva;

7. Spela animation: animation-play-state-egenskap

Egenskapen animation-play-state avgör om animeringen ska starta eller pausa. Det är möjligt att stoppa animering i en loop genom att använda den här egenskapen i ett JavaScript-skript. Du kan också stoppa animeringen när du håller musen över ett objekt - state:hover .

Fastigheten går inte i arv.

Syntax

Animation-play-state: löpning; animation-play-state: pausad; animation-play-state: pausad, löpning, löpning; animation-play-state: initial; animation-play-state: ärva;

8. Animation delay: animation-delay-egenskap

Egenskapen animation-delay avgör när animeringen ska starta. Anges i sekunder s eller millisekunder ms.

Fastigheten går inte i arv.

Syntax

Animation-fördröjning: 5s; animationsfördröjning: 3s, 10ms;

9. Elementets tillstånd före och efter uppspelning av animationen: egenskapen animation-fill-mode

Egenskapen animation-fill-mode bestämmer vilka värden som tillämpas av animationen utanför dess körningstid. När animeringen är klar återgår elementet till sina ursprungliga stilar. Som standard påverkar animering inte egenskapsvärden när animering tillämpas på ett element - animationsnamn och animationsfördröjning . Dessutom, som standard, påverkar animationer inte värdena för egenskaperna animation-duration och animation-iteration-count efter att de är klara. Egenskapen animation-fill-mode kan åsidosätta detta beteende.

Fastigheten går inte i arv.

animation-fill-läge
Värden:
ingen Standardvärde. Elementets tillstånd ändras inte före eller efter att animeringen spelas upp.
framåt När animeringen slutar (som bestäms av värdet för animation-iteration-count), kommer animeringen att tillämpa egenskapsvärdena vid den tidpunkt då animeringen slutar. Om animation-iteration-count är större än noll, tillämpas värdena för slutet av den senaste avslutade iterationen av animationen (inte värdet för början av iterationen som kommer härnäst). Om animation-iteration-count är noll, kommer de tillämpade värdena att vara de som startar den första iterationen (samma som i animation-fill-mode: baklänges;).
bakåt Under perioden som definieras med animationsfördröjning kommer animeringen att tillämpa egenskapsvärdena som definieras i nyckelbildrutan, vilket kommer att påbörja den första iterationen av animeringen. Dessa är antingen värdena från nyckelbildruta (när animationsriktning: normal eller animationsriktning: alternativ) eller till nyckelbildrutevärden (när animeringsriktning: omvänd eller animeringsriktning: alternativ).
både Låter dig lämna ett element i den första nyckelbildrutan innan animeringen börjar (bortsett från ett positivt fördröjningsvärde) och fördröja den sista bildrutan till slutet av den sista animeringen.

Syntax

Animation-fill-mode: ingen; animation-fill-mode: framåt; animation-fill-mode: bakåt; animation-fill-mode: båda; animation-fill-mode: ingen, bakåt; animation-fill-mode: både, framåt, ingen;

10. Kort beskrivning av animation: animationsegenskap

Alla parametrar för uppspelning av animationer kan kombineras i en egenskap - animation , och listar dem åtskilda av ett mellanslag:

Animation: animation-namn animation-varaktighet animation-timing-funktion animation-delay animation-iteration-count animation-direction;

För att spela upp animationen räcker det att endast ange två egenskaper - animationsnamn och animationslängd , de återstående egenskaperna kommer att ha sina standardvärden. I vilken ordning fastigheterna listas spelar ingen roll, det enda är att körtiden för animation-duration måste komma före animation-delay-fördröjningen.

11. Flera animationer

För ett element kan du ställa in flera animeringar och lista deras namn separerade med kommatecken:

Div (animation: shadow 1s ease-in-out 0,5s alternat, move 5s linear 2s;)



Indisk Solitaire