V tomto tématu je popsáno, jak v Animate CC pracovat s kamerou.

Kamera v aplikaci Animate umožňuje animátorům simulovat reálnou kameru.V dřívějších verzích se animátoři spoléhali na rozšíření třetích stran různé kvality a kompatibility nebo upravovali své animace tak, aby napodobovaly pohyb kamery. Animátoři mohou používat následující funkce, které jsou nedílnou součástí každého filmu:

  • Posouvání s objektem na snímku
  • Dosažení dramatického efektu zvětšením objektu zájmu
  • Zdůraznění celkové kompozice oddálením pohledu od snímku
  • Přesunutí pozornosti diváků z jednoho objektu na jiný změnou ohniskového bodu
  • Otáčení kamery
  • Aplikace barevných efektů na scénu pomocí barevných odstínů nebo filtrů

Když nastavíte zobrazení kamery pro svou kompozici, díváte se na vrstvy jakoby skrze tuto kameru. Na vrstvu kamery také můžete přidávat doplnění nebo klíčové snímky.

Nástroj Kamera je v aplikaci Animate CC k dispozici pro všechny integrované typy dokumentů: HTML Canvas, WebGL a Actionscript.

Povolení nebo zakázání kamery

K zapnutí nástroje Kamera použijte některou z následujících možností:

  • Na panelu Nástroje klikněte na ikonu Kamera.
  • Na časové ose klikněte na tlačítko Přidat/odebrat kameru.

Když je kamera zapnutá, zobrazí se hranice plochy ve stejné barvě, jakou má vrstva kamery.

Kamera
Pracovní plocha Kamera

A. Obrys plochy B. Ikona Kamera C. Vlastnosti kamery D. Efekty barvy kamery E. Nástroj Kamera F. Ikona Kamera G. Vrstva kamery 

Plocha se nyní vůči dokumentu chová jako kamera. Na panel Časová osa se přidá nová vrstva kamery s objektem kamery. Když vyberete nástroj Kamera, zpřístupní se v Inspektoru vlastností ikona kamery.

Když je kamera zapnutá:

  • Aktuální dokument je v režimu kamery.
  • Plocha se změní na kameru.
  • Okraj kamery je vidět v ohraničení plochy.
  • Vrstva kamery je vybraná.  

Přiblížení, otáčení nebo posouvání kamery

Přiblížení kamery

  1. Když chcete objekt přiblížit nebo nastavit hodnoty přiblížení, použijte ovládací prvky pro přiblížení na obrazovce na panelu Vlastnosti kamery.

    zoom_rotate
    Přiblížení a otáčení

  2. Když chcete scénu přiblížit, změňte hodnoty přiblížení nebo použijte posuvník, který je dole na ploše.

  3. Jestliže chcete obsah přiblížit, posuňte jezdce směrem ke znaménku +. Chcete-li obsah oddálit, posuňte ho ke znaménku -.

  4. Chcete-li povolit nekonečné hodnoty přiblížení na obou stranách, uvolněte jezdce, který se vrátí zpět do střední polohy. 

Otáčení kamery

  1. K otočení objektu nebo nastavení hodnot otočení na panelu Vlastnosti kamery použijte ovládací prvky pro přiblížení na obrazovce.

  2. Pokud chcete nastavit efekt natočení každé vrstvy, změňte hodnoty natočení. K ovládání otáčení také můžete použít ovládací prvky posuvníku otáčení.

  3. Chcete-li povolit nekonečné hodnoty otočení na obou stranách, uvolněte jezdce, který se vrátí zpět do klidové polohy. Číslo v ovládacím prvku označuje aktuálně použitý úhel otočení.

Posouvání kamery

  1. Klikněte na ohraničující rámeček kamery a přetáhněte jej kamkoli ve vrstvě kamery na ploše.

  2. Posouvejte vybraný objekt nahoru a dolů nebo stiskněte klávesu Shift a posouvejte jej vodorovně či svisle bez náklonu.

  3. Když je nástroj Kamera aktivní, představuje každé přetažení operaci posouvání uvnitř ohraničení kamery.

Používání ovládacích prvků kamery pro posouvání

Souřadnice X a Y ve vlastnostech kamery v Inspektoru vlastností kamery můžete použít k přesnému posunutí kamery.
Ovládací prvky kamery pro posouvání
Ovládací prvky kamery pro posouvání

Chcete-li posunout objekty ve vodorovném směru, přesuňte myš nad hodnotu souřadnice X a přetáhněte posuvník doprava nebo doleva. 

Chcete-li posunout objekty ve svislém směru, přesuňte myš nad hodnotu souřadnice Y a přetáhněte posuvník doprava nebo doleva.

Možnosti obnovení efektů kamery

Změny, které provedete u posunu, zvětšení a natočení kamery a u barevných efektů kamery, můžete vrátit zpět a kdykoli tak obnovit původní nastavení. Chcete-li zachovat původní hodnoty vlastnosti, klikněte na ikonu Obnovit zobrazenou vedle jednotlivých vlastností..

Vlastnosti kamery
Vlastnosti kamery

Použití odstínu na vrstvu kamery

  1. Vyberte panel Kamera > Vlastnosti. Pokud chcete zapnout nebo vypnout efekt odstínu, zaškrtněte políčko Odstín.

    Efekty barvy kamery
    Efekty barvy kamery
  2. Změňte hodnotu odstínu (v procentech) a barvu RGB odstínu pro aktuální snímek.

    Poznámka:

    Tato funkce je podporována pro typy dokumentů AS3 a WebGL. 

Úprava barevných filtrů u vrstvy kamery

  1. Na panelu vlastností Kamera zaškrtněte políčko Nastavit barvu, kterým zapnete nebo vypnete efekt filtru.

  2. Upravte hodnoty jasu, kontrastu, sytosti a odstínu pro aktuální snímek. Přijatelný rozsah pro jas, kontrast a sytost je -100 až 100 % a pro odstín -180 až 180 °.

    Poznámka:

    Tato funkce je podporována pouze pro dokumenty typu AS3. 

Vytvoření paralaxního efektu pomocí kamery a hloubky vrstvy

Herní vývojáři chtějí vytvářet poutavé hry, které uživatele zaujmou zajímavými efekty. Ve hře můžete například ve vrstvách popředí a pozadí použít různé objekty, u kterých můžete ovládat rychlost a polohu. Zaměřením kamery na konstantní ohniskový bod můžete objekty přesouvat různou rychlostí a vytvořit tak trojrozměrný efekt. Při vytváření 2D animací v aplikaci Animate CC lze tohoto efektu dosáhnout pomocí kamery a funkce Hloubka vrstvy. V panelu Hloubka vrstvy můžete vytvořit paralaxní efekt pro objekty změnou hloubky vrstev. Pokud chcete použít hloubku vrstvy, klikněte na Okno > Hloubka vrstvy.

Další informace o hloubce vrstvy získáte kliknutím sem

  1. V aplikaci Animate vytvořte více objektů v různých vrstvách.

  2. Ke každé vrstvě připojte různou hloubku vrstvy.

  3. Kliknutím na nástroj Kamera přidejte vrstvu kamery.

    camera-layer
    Vrstva kamery v okně Hloubka vrstvy

Tento efekt umožňuje zobrazit hloubku a perspektivu objektů.

  • Objekty blíže ke kameře se pohybují rychleji než objekty, které jsou od kamery dále.
  • Když je vrstva kamery nastavena na hodnotu 0, objekty blíže ke kameře mají nízká kladná čísla a objekty dále od kamery mají vysoká kladná čísla. Vrstvy umístěné za kamerou mají záporná čísla. 

Video zobrazující paralaxní efekt a hloubku Z kamery

Video zobrazující paralaxní efekt a hloubku Z kamery
V tomto videu si můžete prohlédnout paralaxní efekt a přiblížení kamery.

Zamknutí vrstvy ke kameře

Animátoři a herní vývojáři někdy potřebují, aby některé objekty v animaci byly vždy zaměřeny v pohledu kamery. Může se jednat například o akční tlačítko, zbraň nebo HUD displej zobrazující měřič času. V takových případech potřebujete, aby byl příslušný datový zdroj uzamknut s pohybem kamery. V aplikaci Animate můžete tohoto efektu dosáhnout pomocí funkce Připojit ke kameře.

Zamknutí vrstvy ke kameře
Zamknutí vrstvy ke kameře

Když připojíte vrstvu ke kameře, objekty v této vrstvě jsou připnuty ke kameře a vždy se pohybují společně s kamerou. To vytváří dojem, že ve výsledné animaci tyto objekty nejsou ovlivněny pohyby kamery.

Ke kameře můžete připojit jednotlivé vrstvy kliknutím na tečku ve sloupci pro připojení kamery. Pokud vrstva je připojena ke kameře, zobrazí se vedle názvu vrstvy zástupná ikona.  

Následující obrázky znázorňují chování vrstvy před a po připojení ke kameře:

Obrázek zobrazující animaci, když vrstva není připojená ke kameře:

Vrstva bez zamčené kamery
Vrstva bez zamčené kamery

Obrázek zobrazující animaci, když vrstva je připojená ke kameře:

Vrstva s uzamčenou kamerou
Vrstva s uzamčenou kamerou

Ke kameře můžete připojit nebo od ní odpojit všechny vrstvy najednou tak, že kliknete na ikonu pro připojení kamery na časové ose.  

Připojení všech vrstev ke kameře
Obrázek zobrazující všechny vrstvy připojené ke kameře:

Použití kamery za běhu

Rozhraní API kamery pro dokumenty ve formátu AS3, WebGL a HTML Canvas umožňují za běhu zavést kameru, získat k ní přístup a spravovat ji. Níže je uveden seznam rozhraní API kamery pro dokumenty AS3, WebGL a HTML Canvas:

Typ Třída  Příklad Popis
AS3 VirtualCamera

import fl.VirtualCamera;

var cameraObj = VirtualCamera.getCamera(root);

Získá objekt kamery. Vhodné, pokud chcete získat nebo nastavit vlastnosti kamery za běhu.
HTML Canvas VirtualCamera var cameraObj = AdobeAn.VirtualCamera.getCamera(exportRoot); Získá objekt kamery. Ujistěte se, že jste při vytváření obsahu zapnuli kameru.
WebGL VirtualCamera var cameraObj = flwebgl.VirtualCamera.getCamera(stage.getPlayer()); Získá objekt kamery. Ujistěte se, že jste při vytváření obsahu zapnuli kameru.

Poznámka:

Všechny tyto metody platí pro dokument ve formátu AS3. Některé z těchto metod nejsou k dispozici pro formát WebGL a HTML Canvas. Dostupnost nebo nedostupnost metod pro WebGL a HTML Canvas je vyznačena v posledních dvou sloupcích tabulky.

Metody virtuální kamery

Č.

Metoda

Prototyp

Příklad

Popis

HTML Canvas

WebGL

1

getPosition

getPosition():Object

trace(cameraObj.getPosition().x, cameraObj.getPosition().y,
cameraObj.getPosition().z);
Vrátí objekt s vlastnostmi x, y a z, které určují aktuální polohu kamery.

Ano

Ano

2

setPosition

setPosition(posX:Number,posY:Number, posZ:Number=0):void

cameraObj.setPosition(100,100,100);

Přesune kameru do absolutní polohy danou vstupními parametry. Výchozí hodnota = 0.

Ano

Ano

3

moveBy

moveBy(tx:Number,ty:Number,tz:Number=0): void

cameraObj.moveBy(100,100,100);

Přesune kameru relativně k aktuální poloze o tx, ty nebo tz.
Poznámka: tz má smysl, jen pokud je povolena hloubka vrstvy. Výchozí hodnota = 0.

Ano

Ano

4

resetPosition

resetPosition():void

cameraObj.resetPosition();

Obnoví výchozí polohu kamery, tzn. (0,0,0).

Ano

Ano

5

getZoom

getZoom():Number

trace(cameraObj.getZoom());

Vrátí aktuální hodnotu zvětšení kamery. Výchozí hodnota je 100 %.

Ano

Ano

6

setZoom

setZoom(zoom:Number):void

cameraObj.setZoom(120);

Zvětšení kamery na absolutní hodnotu danou vstupním parametrem v procentech.

Ano

Ano

7

zoomBy

zoomBy(zoom:Number):void

cameraObj.zoomBy(100);

Zvětšení kamery relativně k aktuální hodnotě zvětšení (v procentech).

Ano

Ano

8

resetZoom

resetZoom():void

cameraObj.resetZoom();

Obnoví výchozí hodnotu zvětšení kamery, tzn. 100 %.

Ano

Ano

9

getRotation

getRotation():Number

trace(cameraObj.getRotation());

Vrátí aktuální úhel kamery.  

Ano

Ano

10

setRotation

setRotation(angle:Number):void

cameraObj.setRotation(45);

Otočí kameru o absolutní úhel daný vstupními parametry.

Ano

Ano

11

rotateBy

rotateBy(angle:Number):void

cameraObj.rotateBy(60);

Otočí kameru relativně k aktuálnímu úhlu danému vstupními parametry.

Ano

Ano

12

resetRotation

resetRotation():void

cameraObj.resetRotation();

Obnoví úhel kamery na nulu.

Ano

Ano

13

setTint

setTint(tintColor:uint,tintPercent: Number):void

cameraObj.setTint(0x56FFFF, 68);

Nastaví odstín kamery pomocí barvy (RGB) a procentuální hodnoty (procenta odstínu).

Ne

Ano

14

setTintRGB

setTintRGB(red:uint,green:uint,blue: uint,tintPercent:Number):void

cameraObj.setTintRGB(0xff, 0, 0, 50);

Nastaví odstín kamery pomocí rozložených hodnot barev R, G, B a hodnoty tintPercent (procenta odstínu).

Ne

Ano

15

getTint()

getTint():Object

var tint=cameraObj.getTint();
trace("color:",tint.color,
"percentage:",tint.percent);

Vrátí objekt se dvěma vlastnostmi: percent a color.

Ne

Ano

16

getTintRGB

getTintRGB():Object

var tint = cameraObj.getTintRGB();
trace("tint color red:", tint.red,"green:",
tint.green," blue:",tint.blue,"tint percent: ",tint.percent);

Vrátí objekt se čtyřmi vlastnostmi: percent, red, green, blue.

Ne

Ano

17

resetTint

resetTint()

cameraObj.resetTint();

Odebere odstín kamery.

Ne

Ano

18

setColorFilter

setColorFilter(brightness:Number, contrast:Number,saturation:Number,hue: Number):void

cameraObj.setColorFilter(100,-50,
50,-100);

Nastaví barevný filtr kamery pomocí rozložených hodnot (jas, kontrast, sytost a odstín).

Ne

Ne

19

resetColorFilter

resetColorFilter()

cameraObj.resetColorFilter();

Odebere barevný filtr.

Ne

Ne

20

reset

reset()

cameraObj.reset();

Obnoví všechny vlastnosti kamery na výchozí hodnoty.

Ano

Ano

21

setZDepth

setZDepth(zDepth:Number):void

cameraObj.setZDepth(200);

Nastaví pro kameru hodnotu hloubky Z.

Ano

Ne

22

getZDepth

getZDepth():Number

trace(cameraObj.getZDepth());

Vrátí aktuální hodnotu hloubky Z kamery.

Ano

Ne

23

pinCameraToObject

pinCameraToObject(object:DisplayObject, offsetX:Number=0,offsetY:Number=0, offsetZ=0)

cameraObj.pinCameraToObject
(getChildByName("InstanceName"), 200,50);

Kamera sleduje objekt zadaný vstupním parametrem za běhu. Pokud jsou k dispozici hodnoty offsetX, offsetY a offsetZ, kamera sleduje (x+offsetX, y+offsetY, z+offsetZ).

Ano

Ano

24

setPinOffset

setPinOffset(offsetX:Number, offsetY:Number,offsetZ:Number)

cameraObj.setPinOffset(-60,0);

Změní hodnoty offsetX a offsetY pro připnutí kamery k objektu. Kamera sleduje objekt vzhledem k bodu (x+offsetX, y+offsetY, zDepth+z) za běhu.

Ano

Ano

25

unpinCamera

unpinCamera()

cameraObj.unpinCamera();

Odebere připnutí kamery k libovolnému objektu.

Ano

Ano

26

setCameraMask

setCameraMask(maskObj:DisplayObject)

cameraObj.setCameraMask(maskObj);

Nastaví maskObj jako masku kamery.

Ne

Ne

27

removeCameraMask

removeCameraMask()

cameraObj.removeCameraMask();

Odebere masku z kamery.

Ne

Ne

Přístup ke kameře jako k objektu filmového klipu

Typ Metoda Prototyp Příklad
AS3 getCameraAsMovieClip

getCameraAsMovieClip(container:DisplayObject):MovieClip

var cameraObj=fl.VirtualCamera.getCameraAsMovieClip(root);
HTML Canvas getCameraAsMovieClip
getCameraAsMovieClip(container:DisplayObject):MovieClip var cameraObj=AdobeAn.VirtualCamera.getCamera(exportRoot);
WebGL getCameraAsMovieClip
getCameraAsMovieClip(container:DisplayObject):MovieClip var cameraObj=flwebgl.VirtualCamera.getCameraAsMovieClip(this);

Maskování objektů za běhu (pro dokument AS3)

Objekty můžete maskovat za běhu pomocí následujícího kódu rozhraní API kamery:

import fl.VirtualCamera;
fl.VirtualCamera.getCamera(root).setCameraMask(torch);

Níže je zobrazen ukázkový snímek obrazovky z animace při použití oválné masky:

camera-mask

Vytváření animací pomocí interaktivní kamery a průvodce kódy akcí

Následující vývojový diagram znázorňuje podrobný postup vytvoření animace pomocí interaktivní kamery. Průvodce kódy akcí můžete použít v dokumentu HTML Canvas. 

using-runtime-updated-1

Níže si můžete prohlédnout ukázkové video zobrazující použití interaktivní kamery. Můžete sledovat, jak lze v různých intervalech měnit zaostření za běhu na padák, jet pack a městskou krajinu.

Video znázorňující použití kamery za běhu

Video znázorňující použití kamery za běhu
Ukázkové video znázorňující použití kamery za běhu

Oříznutí objektu na scéně

Pokud chcete oříznout obsah přesahující vymezenou plochu, klikněte na tlačítko Oříznout obsah mimo vymezenou plochu . Když kameru zkombinujete se zobrazením plochy, můžete obsah zobrazit v ohraničení kamery.

Tato práce podléhá licenci Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Na příspěvky ze služeb Twitter™ a Facebook se nevztahují podmínky licence Creative Commons.

Právní upozornění   |   Zásady ochrany osobních údajů online