カテゴリー: AfterEffects

After Effects SDK サンプルプロジェクトをビルドする

目標

本記事の目標はAE SDKに付属のサンプルプロジェクトをビルドすることです。

環境

Windows10
Visual Studio 2015 Community
After Effects CC2019
After Effects 17.1.2 Win SDK

方法

AE SDKをダウンロード

Adobe Developer Console (https://console.adobe.io/servicesandapis)にアクセスし、Adobe User Accountでログインしてください。

After Effectsの”View downloads”をクリックし、After Effects Plug-in SDKをダウンロードして解凍してください。

1つのプラグインをビルドする

プロジェクトを選択する

AfterEffectsSDK\Examplesを開いて、ビルドしたいプロジェクトを選択してください。(例えば、AfterEffectsSDK\Examples\AEGP\Artieはプロジェクトの例です) プロジェクトの一覧はSample Project Descriptionsを参考にしてください。

ソリューションファイルを開く

Visual Studio 2015(v140)で ソリューションファイル(.sln)を開いてください。例えば、AfterEffectsSDK\Examples\AEGP\Artie\Win\Artie.slnはソリューションファイルの例です。Visual Studio 2015以降のバージョンを使用しても良いですが、v140から使用するバージョンへプロジェクトをアップデートする必要があります。

(さらに…)

After Effects Plugin 開発環境の構築

目標

After Effects プラグイン開発のための環境を構築する。サンプルプラグインをビルドし、実行する。

環境

Adobe CC2019 v16.0.0
Windows10 with environment for C++ compile
Microsoft Visual C++ 2017 ver15.8.4

方法

1 After Effects SDKs をダウンロード

Adobe Web siteにアクセスし、”Get the SDKs”ボタンをクリックしてSDKをダウンロードします。自分のAfter Effectsのバージョンにあった”After Effects Plug-in SDK”を選択します。

2 ビルドパスを環境変数に設定する

環境変数に”AE_PLUGIN_BUILD_DIR”を追加し、プラグインを出力するディレクトリを設定します。これが存在しないと、コンパイル時にエラー”fatal error LNK1104: cannot open file ‘***.aex”が発生します。

3 サンプルプラグインのビルド

“After+Effects+CC+16.0+Win+SDK.zip” を解凍し、解凍した”AfterEffectsSDK”ディレクトリを好きな場所に移します。

ソリューションファイル AfterEffectsSDK\Examples\BuildAll.slnを開くと、Visual Studioが起動します(Visual Studioがインストールできている場合)。

“SDK Noise”を右クリックしてビルドします。

from Visual Studio

もしも、エラー”C2220: warning treated as error – no ‘object’ file generated” が発生した場合は、以下のようにプロジェクトの設定を変更し、warningをerrorとして扱わないよう設定します。

from Visual Studio

4 プラグインをAfter Effectsのディレクトリに配置

ビルドされた”SDK_Noise.aex”ファイルを、”C:\Program Files\Adobe\Adobe After Effects CC 2019\Support Files” ディレクトリに配置します。

5 プラグインのエフェクトを追加する

After Effectsのプロジェクトを開いて、Effect>Sample Plug-ins>SDK_Noise からエフェクトを追加。

from Adobe AfterEffects

ノイズエフェクトが画面に追加されます。

カラーマネージャーとは

目標

色空間(color space)とカラーマネージャー(color manager)について理解する.

カラーマネージャーとは

カラーマネージャー(「カラーマネジメントシステム」または「マネージメントソリューション」とも呼ばれます)は、画像や動画の色空間を変更するためのアプリケーションです。

VFXの制作では、デジタルシネマカメラ、レンダリングCG、写真、マットペイントといったツールに応じて、さまざまな色空間が使用されます。ツール間で、色空間を統一または変換する必要があります。 色空間の変換は、VFX制作における重要なプロセスです。

色空間とは

色空間は、色が座標として表される空間です。

カラーモデル

235/5000カラーモデルは、いくつかのチャネル(RGBやCMYKなど)で色を記述する抽象的な数学モデルです。カラーモデルは色空間と同じではありませんが、Adobe RGBやsRGBなどの一部の表色系(Color System)では、色空間はカラーモデルに基づいて色を設定しています。

色空間の例

Adobe Photoshop Color Picker
Comparison of some RGB and CMYK colour gamut on a CIE 1931 xy chromaticity diagram, based on http://commons.wikimedia.org/wiki/File:CIE1931xy_blank.svg and data from Blatner and Fraser’s “Real World Photoshop CS”, p179: http://canopuscomputing.com.au/gallery2/d/8631-1/Gamuts_comparison-B_F.jpg . ( CC BY-SA 3.0 )

sRGB

sRGB(標準の赤(Red)、緑(Green)、青(Blue))は、主にモニター、プリンター、インターネットで使用するRGB色空間です。 この色空間で表現できる色域は、赤、緑、青の3つの原色で定義された図の三角形の内部の領域です。(図の広い領域は原色を表す範囲で、原色を二次元で表したこの図をxy色度図と言う)

CIE 1931 xy chromaticity diagram showing the gamut of the sRGB color space and location of the primaries.( CC BY-SA 3.0)
* This image is colored in sRGB space, so the colors outside of the triangle are interpolated.

Adobe RGB

Adobe RGB はアドビシステムズによって提案された色空間です。sRGBより広範囲を(特に緑を幅広く)再現でき、CMYKプリンターでプリント可能な色のほとんどをカバーすることができます。この色の範囲は、上記の原色の約50%を含んでいることになります。

The CIE 1931 xy chromaticity diagram showing the primaries of the Adobe RGB (1998) color space. The CIE Standard Illuminant D65 white point is shown in the center.( CC BY-SA 3.0)

NTSC (BT.601)

NTSC色空間は、テレビ向けに設計されたもので、sRGBよりはるかに広い範囲の色をカバーします。NTSCは最新のディスプレイでは使用されていませんが、一般に色域の比較や指定などをする際の基準として使用されます。

Rec.2020

Rec.2020(BT.2020 またはITU-R Reccomendation BT.2020)は、スタンダードダイナミックレンジ(SDR)と広色域(WCG)を持つ超高精細テレビ(4Kや8Kに対応したテレビ)に関する色域規格です。この規格は、画像解像度、プログレッシブスキャンでのフレームレート、ビット震度、原色、RGB、YUV(輝度と、2つの色差による色空間)、クロマサブサンプリング、光-電気伝達関数(opto-electronic transfer function)などを定義しています。ただし、フルHD、及びハイダイナミックレンジ(HDR)はサポートされていません。

Rec.2100

Rec.2100はRec.2020の上位互換です。Rec.2100(BT.2100ITU またはITU-R Recommendation BT.2100)は、フルHD(2K)、4Kおよび8K解像度を処理するデバイスの仕様を定めた国際標準規格です。これは、国際電気通信連合の無線通信部門(ITU-R)によって設定されました。

CMYK(or just CMY)

CMYKは、印刷プロセスで使用される減法混色を使用します。
CMYKは、シアン(Cyan)、マゼンタ(Magenta)、イエロー(Yellow)、ブラック(Black)のインクカラーに対応しています。

HSV 

HSV(Hue, Saturation, Value) はコンピュータ上でのペイントやカラーサンプルに使用される色空間です。色相(Hue)、彩度(Saturation)、明度(Value)で色を指定する方法で、加法混色(RGB)または減法混色(CMY)よりも直感的であるため、ペイントアーティストが好んで使用することがあります。表現できる色範囲はRGBと同じであり、HSVはRGB色空間の変換です。HSVは、HSB(Hue, Saturation, Brightness)と表されることもあります。

HSL

HSLは、HSV(HSB)に非常によく似ており、明度(Valur / Brightness)が輝度(lightness / luminance)に置き換わったものです。明度と輝度の違いは値の計算方法です。HSVは、純色の輝度が白の輝度と等しい六角形のピラミッドモデルを使用し、HSLは、純色の輝度が白の輝度の50%である双六角ピラミッドモデルを使用します(参考)。したがって、明度を最大値にした時の色は純色ですが、輝度を最大にした時の色は純色ではありません。
HSLはHSI(Hue, Saturation, Intensity)とも呼ばれます。

LMS

LMS色空間は、通常の視力を持つ人間の視覚の3種類の錐体細胞に基づいた色空間です。この錐体細胞には、異なる波長の光を感知するS錐体(Short)、M錐体(Middle)、L錐体(Long)の3つの種類があり、短波長(Short Lightwave)、中波長(Middle Lightwave)、長波長(Long Lightwave)に感度のピークを持つようになっています。
3種類の錐体細胞(L,M,S)の刺激に対する反応に対応する3つのパラメータLMSは、人間の視覚を再現しています。したがって、LMS色空間にはすべての可視光を含めることができます。
しかし、LとMとSのパラメーターは人と環境によって異なるため、LMSは色の客観的な表現ではありません。

CIE 1931 color spaces

CIE (Commission internationale de l’éclairage, the International Commission on Illumination,国際照明委員会)とは、光と色に関する国際標準を作成する組織です。CIE 1931色空間とは、可視光の電磁スペクトルにおける波長の分布と、生理学的に近くされる色の関係を最初に定義した色空間です。

CIE XYZは、X、Y、Zという3つのチャンネルによる色空間です。これらX、Y、Zの原色は、人間には見えない色となっています。このような可視光外の範囲に3つのチャンネルを設定している理由は、R(700nm)、G(546.1nm)、B(435.8nm)の3つの波長を原色とした場合に、混ぜ合わせるだけでは、可視光の一部を再現できないためです(青色周辺の色を定義するのに、負の値を設定する必要がでてきます)。そのため、混ぜ合わせてすべての可視光を表現できるよう、理論上の値であるXYZが酔用意されています。そのため、CIE XYZにはすべての可視色を正の象限に含めることができます。
また、CIE XYZ色空間は、Y成分が輝度に対応するように設計されています。

なぜカラーマネジメントが必要か?

©2020 Nako

エクスポートしたビデオを別のメディアに転送する際に、ディスプレイや使用する色空間の違いによって見える色が変わってしまします。そのため、個別に色域をリマッピングしたり、ガンマ補正や白色の色度(白色点)の設定などが必要となり、これらを行うのがカラーマネージメントです。

ACESとは

ACES(Academy Color Encoding System エーセス)は、映画芸術科学アカデミーの後援の下で作成された、カラー画像符号化システムです。
このシステムは、CIE xyY(上記の図のCIE xyに輝度Yを追加したもの)で定義されている可視スペクトル軌跡を含む独自の原色をもっています。

Adobe AfterEffects、Maya、Nukeなどの動画編集ソフトでACESを使用する場合は、カラーマネージャーが必要です。カラーマネージャーは通常、プラグイン、または組み込み関数として提供されています。

カラーマネージャーの例

OpenColorIO

“OpenColorIO (OCIO) is a complete color management solution geared towards motion picture production with an emphasis on visual effects and computer animation. “

“OpenColorIO(OCIO)は、視覚効果とコンピューターアニメーションに重点を置いた動画制作向けの完全なカラー管理ソリューションです。”(Google 翻訳)

OpenColorIO official web site( https://opencolorio.org/ )
Google Translation

OCIOはACESと互換性があり、LUT( LookUp Table)に依存せず、多くの一般的な形式をサポートしています。

SynColor

SynColorはAutodesk Color Managementコンポーネントです。

参照:AUTODESK KNOWLEDGE NETWORK SynColor 設定ファイル

Adobe Color Management Module(CMM)

CMMは、PhotoshopなどのAdobeソフトウェアのためのカラーマネージャーです。