جی اف ایکس دانلود
مرجع دانلود پروژه افتر افکت و پریمیر
سورس های لایه باز، psd و آموزش های پیشرفته فتوشاپ، افتر افکت
gfxpanel.ir
» » » آموزش اسکریپت نویسی در افتر افکت

آموزش اسکریپت نویسی در افتر افکت

در تاریخ :
نظرات : 0
بازدیدها : 146
  • 0
اسکریپت نویسی در افتر افکت

آموزش اسکریپت نویسی در افتر افکت

مقدمه ای برای نوشتن اسکریپت در افترافکت


اسکریپت یک سری دستورات است که به برنامه یک سری عملیات برای انجام را می دهد. می‌توانید از اسکریپت در بیشتر برنامه‌های adobe برای خودکار کردن کارهای تکراری استفاده کنید , محاسبات پیچیده را انجام دهید , و حتی استفاده از برخی عملکردها که مستقیماً از طریق رابط کاربری گرافیکی در معرض استفاده قرار ندارند استفاده کنید. به عنوان مثال ، می توانید دستوراتی در افتر افکت بدهید از جمله : برای مرتب سازی مجدد لایه ها در یک کامپوزیشن ، پیدا کردن و جایگزین کردن منبع متن در لایه های متن ، هدایت کنید و یا هنگامی که رندر گرفتن به پایان رسید یک ایمیل ارسال کند.
اگرچه هر دو زبان After Effects expressions و After Effects ExtendScript scripting مبتنی بر جاوا اسکریپت هستند ، اما ویژگی های expression ها و ویژگی expression های افترافکت جداگانه و مجزا هستند. عبارات نمی توانند از اسکریپت ها به اطلاعات دسترسی پیدا کنند (مانند متغیرها و توابع). در حالی که اسکریپت به یک برنامه دستوراتی را برای انجام کاری ارسال می کند ، یک عبارت به تعریف property یا ویژگی می پردازد. با این حال ، از آنجا که زبان After Effects expression و ExtendScript هر دو مبتنی بر jаvascript هستند ، آشنایی با هر یک در درک زبان دیگری بسیار مفید است.
قلب یک اپلیکیشن مبتنی بر اسکریپت ، object model یا مدل شی گرائی است . هنگامی که از افتر افکت استفاده می کنید ، پروژه ها و کامپوزیت را ایجاد می کنید و از مواردی که در صف خروجی هستند را به همراه تمام عناصر موجود در آنها رندر خواهید گرفت: از جمله فوتیج ها ، تصاویر ، لایه ها ، ماسک ها ، افکت ها و property ها. هر یک از این موارد ، از لحاظ اسکریپت نویسی ، یک شیء است. این راهنما ، ExtendScript objects را که برای پروژه های After Effects مشخص شده اند، تعریف کرده است.

مدل شیء گرایی افتر افکت از یک پروژه ، آیتم ها ، کامپوزیت ها ، لایه ها و آیتم های صف رندر تشکیل شده است. هر شیء ویژگی های خاص خود را دارد و همچنین در یک پروژه افتر افکت هویت خاص خود را دارد (گرچه همه آنها به اسکریپت دسترسی ندارند). برای ایجاد اسکریپت باید با مدل شیء گرائی افتر افکت آشنا باشید. داشتن دانش کاملی از خود اپلیکیشن و رابط کاربری گرافیکی آن برای درک نحوه استفاده از برنامه نویسی در افتر افکت ضروری است.

آشنایی با زبان ExtendScript


اسکریپت های افتر افکت از زبان Adobe ExtendScript استفاده می کنند ، که شکل گسترده ای از جاوا اسکریپت است و توسط چندین برنامه Adobe از جمله فتوشاپ ، Illustrator و InDesign استفاده می شود. ExtendScript زبان جاوا اسکریپت را مطابق با مشخصات ECMA-262 پیاده سازی می کند. ExtendScript همچنین مشخصات E4X ECMA-357 را پیاده سازی می کند ، که دسترسی به داده ها را با فرمت XML تعریف می کند.

ExtendScript یک شیء جهانی جهت دیباگ، با علامت ($) و یک ابزار گزارش دهی برای عناصر ExtendScript را تعریف می کند.

File and Folder Objects:

از آنجا که ترکیب نام مسیر در سیستم عامل های مختلف بسیار متفاوت است ، Adobe ExtendScript اشیاء فایل و فولدر را تعریف می کند تا دسترسی مستقل پلتفرم را به فایل های سیستمی اصلی ارائه دهد.

ماژول رابط کاربری ScriptUI:

ماژول ExtendScript ScriptUI امکان ایجاد و تعامل با عناصر رابط کاربر را فراهم می کند. ScriptUI یک مدل شیء گرایی را برای ویندوز و عناصر کنترل UI فراهم می کند که می توانید جهت ایجاد رابط کاربری برای اسکریپت های خود استفاده کنید.
ابزارها و برنامه های کاربردی: علاوه بر این موارد ، ExtendScript ابزارها و ویژگی هایی مانند localization utility را برای ارائه مقادیر رشته ای رابط کاربری به زبان های مختلف و توابع جهانی برای نمایش پیام های کوتاه در dialog boxes (هشدار ، تأیید ) فراهم می کند.

ارتباط خارجی:

ExtendScript یک شیء سوکت را فراهم می کند که به شما امکان می دهد از طریق اسکریپت های افتر افکت خود با سیستم های از راه دور ارتباط برقرار کنید.
ارتباط درون برنامه ای یا Interapplication Communication : یک محیط برنامه‌نویسی معمول برای همه نرم‌افزارهای adobe فراهم می‌کند و امکان برقراری ارتباط با اسکریپت را فراهم می‌کند .

مجموعه ابزار ( ExtendScript (ESTK


افتر افکت شامل یک ویرایشگر اسکریپت و debugger، ( ExtendScript (ESTK است که یک رابط کاربری مناسب برای ایجاد و آزمایش اسکریپت های شخصی شما فراهم می کند.
برای شروع ESTK ، مسیر File> Scriptts> Open Script Editor را انتخاب کنید.
اگر تصمیم به استفاده از ویرایشگر متن دیگری برای ایجاد ، ویرایش و ذخیره اسکریپت ها دارید ، حتما برنامه ای را انتخاب کنید که به طور خودکار اطلاعات هدر را هنگام ذخیره فایل ها اضافه نمی کند و با رمزگذاری یونیکد (UTF-8) ذخیره می کند. در بسیاری از ویرایشگرهای متن ، با رمزگذاری UTF-8 می توانید تنظیمات اولویت خود را برای ذخیره را تعیین کنید. بعضی از برنامه ها (مانند Microsoft Word) به طور پیش فرض اطلاعات هدر را به پرونده هایی اضافه می کنند که می توانند باعث ایجاد خطای " line 0 " در اسکریپت ها شوند و باعث خرابی آنها خواهد شد.
برای کسب اطلاعات دقیق در مورد ابزار ExtendScript ، به راهنمای ابزارهای jаvascript مراجعه کنید.

پسوند های نام فایل .jsx و .jsxbin


فایلهای اسکریپت ExtendScript با پسوند نام فایل .jsx متمایز می شوند. اسکریپت های افتر افکت باید شامل پسوند پرونده .jsx باشند تا به درستی توسط برنامه تشخیص داده شوند. هر پرونده متنی رمزگذاری شده UTF-8 با پسوند .jsx به عنوان یک فایل ExtendScript شناخته می شود.
برای اکسپورت کردن یک نسخه باینری از پرونده ExtendScript که دارای پسوند .jsxbin است ، می توانید از ابزار ExtendScript استفاده کنید. چنین پرونده باینری ممکن است با همه ویژگی های integration اسکریپت نویسی درافتر افکت قابل استفاده نباشد.

فعال کردن ویژگی های اسکریپت


پیش فرض این است که اسکریپت ها مجاز به نوشتن پرونده ها یا ارسال یا دریافت ارتباط از طریق شبکه نباشند. برای اینکه اسکریپت ها بتوانند فایل ها را بنویسند و از طریق شبکه ارتباط برقرار کنند مسیر، choose Edit > Preferences > General (Windows) یا (Mac OS)After Effects > Preferences > General را انتخاب کنید و گزینه Allow Scriptts to Writ Files and Access Network را انتخاب کنید.
هر اسکریپت افتر افکت که حاوی خطایی است که مانع از تکمیل آن می شود ، یک پیام خطا از برنامه ایجاد می کند. این پیام خطا شامل اطلاعاتی در مورد ماهیت خطا و خط اسکریپتی است که روی آن رخ داده است. ابزار خطایابی، ExtendScript Toolkit (ESTK) debugger می تواند به طور خودکار هنگام برنامه با خطای اسکریپت باز شود. این ویژگی به طور پیش فرض غیرفعال است. برای فعال کردن این ویژگی ، گزینه Preferences> General را انتخاب کنید و Enable jаvascript Debugger را انتخاب کنید.

لود شدن و اجرای اسکریپت ها


اسکریپت ها را مستقیماً از منوی File > Scripts اجرا کنید
هنگامی که افتر افکت شروع شروع به کار می کند ، پوشه Scriptts را برای بارگذاری اسکریپت ها جستجو می کند. اسکریپت های بارگذاری شده از فهرست File> Scriptts در دسترس هستند.
برای اجرای یک اسکریپت لود شده ، File > Scripts > [script name] را انتخاب کنید.
اگر یک اسکریپت را در حالی که افتر افکت در حال اجرا است ،ویرایش کنید ، باید تغییرات خود را ذخیره کنید. اگر اسکریپت را در پوشه اسکریپت ها قرار دهید در حالی که افتر افکت در حال اجراست ، باید افتر افکت را مجدداً راه اندازی کنید تا اسکریپت در منوی اسکریپت ها ظاهر شود ، اگرچه می توانید بلافاصله با استفاده از دستور Run Script File اسکریپت جدید را اجرا کنید.
اسکریپت ها را با استفاده از File> Scriptts> Run Script File اجرا کنید
برای اجرای اسکریپتی که بارگیری نشده است ، File > Scripts > Run Script File را انتخاب کنید ، اسکریپت را پیدا کرده و انتخاب کنید و بر روی Open کلیک کنید.
اجرای اسکریپت ها از خط فرمان یا command line ، پرونده batch یا اسکریپت AppleScript
اگر شما با نحوه اجرای یک اسکریپت از سطر فرمان در ویندوز یا از طریق AppleScript آشنا هستید ، می‌توانید یک اسکریپت را به طور مستقیم به برنامه open After Effects ارسال کنید، به طوری که برنامه به طور خودکار اسکریپت را اجرا کند.
مثال (برای ویندوز):

afterfx -r c:\script_path\example_script.jsx


می توانید از این تکنیک خط فرمان - به همراه نرم افزاری که دارای صفحه کلید قابل تنظیم است - استفاده کنید تا اسکریپت را به میانبر صفحه کلید وصل کنید.
در زیر نمونه هایی از دستورات خط فرمان در ویندوز است که اسکریپت افترافکت را بدون استفاده از رابط کاربری افتر افکت برای اجرای اسکریپت به برنامه ارسال می کنند.
در مثال اول ، اسکریپت افتر افکت خود را مستقیماً بر روی خط فرمان کپی و جایگذاری کرده و سپس آن را اجرا کنید. متن اسکریپت در علامت‌های نقل‌قول زیر به صورت زیر است :

afterfx.exe -s "alert("You just sent an alert to After Effects")"


از طرف دیگر می توانید محل اجرای فایل JSX را برای اجرا مشخص کنید. مثلا:

afterfx.exe -r c:\myDocuments\Scripts\yourAEScriptHere.jsx afterfx.exe -r "c:\myDocuments\Scripts\Script Name with Spaces.jsx"


نحوه نوشتن اسکریپت افتر افکت در (AppleScript (Mac OS


در زیر سه نمونه از اسکریپت های AppleScript وجود دارد که یک پرونده JSX موجود با اسکریپت افتر افکت را بدون استفاده از رابط کاربری After Effects برای اجرای اسکریپت به برنامه ارسال می کند.
در مثال اول ، اسکریپت افتر افکت خود را مستقیماً در Script Editor کپی کرده و سپس آن را اجرا کنید. متن اسکریپت در زیر علامت های نقل قول به دنبال دستور DoScript ظاهر می شود


tell application "Adobe After Effects CS6"
    DoScript "alert(\"You just sent an alert to After Effects\")"
end tell


از طرف دیگر ، می توانید dialog box را برای تعیین اینکه می خواهد کجا فایل JSX را به مرحله اجرا درآورد نمایش دهید، به مثال زیر توجه کنید:


set theFile to choose file
tell application "Adobe After Effects CS6"
    DoScript theFile
end tell


در نهایت ، این اسکریپت شاید زمانی مفید باشد که مستقیماً در حال ویرایش اسکریپت JSX باشید و می خواهید آن را برای آزمایش یا اجرا به افتر افکت ارسال کنید. برای استفاده موثر از آن ، باید برنامه ای را که حاوی پرونده JSX باز است وارد کنید (در این مثال آن TextEdit است). اگر نام مناسب برنامه را نمی دانید ، بهترین حدس خود را برای جایگزین کردن "TextEdit" تایپ کنید و AppleScript از شما می خواهد که آن را پیدا کنید.
به سادگی متن اسکریپتی را که می خواهید اجرا کنید برجسته کنید و سپس AppleScript زیر را فعال کنید:

This script sends the current selection to After Effects as a script.
*)
tell application "TextEdit"
    set the_script to text of front document
end tell
tell application "Adobe After Effects CS6" activate
    DoScript the_script
end tell


در داخل پوشه اسکریپت ها دو پوشه به نام های Startup و Shutdown وجود دارد. افتر افکت اسکریپت ها را در این فولدر ها به ترتیب حروف الفبا در شروع و پایان به طور خودکار اجرا می کند.
در پوشه Startup می توانید اسکریپت هایی را که می خواهید هنگام اجرای برنامه اجرا کنید ، قرار دهید. آنها پس از مقدار دهی اولیه برنامه و بارگیری همه افزونه ها اجرا می شوند. اسکریپت یک محیط جهانی را به اشتراک می گذارد ، بنابراین هر اسکریپتی که در هنگام راه اندازی اجرا می شود می تواند متغیرها و توابعی را برای همه اسکریپت ها تعریف کند.

اجرای اسکریپت ها از منوی Window


اسکریپت ها در پوشه ScriptUI Panels از پایین منوی Window در دسترس هستند. اگر یک اسکریپت به منظور فراهم کردن واسط کاربر در یک پنل dockable نوشته شده‌است ، اسکریپت باید در پوشه ScriptUI قرار داده شود . پنل های ScriptUI تقریباً مانند پنل های پیش فرض در رابط کاربری افتر افکت کار می کنند.
به جای ایجاد Window objectو افزودن کنترل به آن ، یک اسکریپت ScriptUI Panels از این شی استفاده می‌کند که پنل را نشان دهد. به عنوان مثال ، کد زیر یک دکمه به پنل اضافه می کند:

var myPanel = this;
myPanel.add("button", [10, 10, 100, 30], "Tool #1");


اگر اسکریپت رابط کاربری خود را در یک تابع ایجاد کند , نمی‌توانید از آن استفاده کنید چون به خود تابع ارجاع خواهد شد , نه پنل. در این حالت ، شما باید این شیء را به عنوان یک آرگومان به تابع خود منتقل کنید. مثلا:

function createUI(thisObj) {
    var myPanel = thisObj;
    myPanel.add("button", [10, 10, 100, 30], "Tool #1");
    return myPanel;
}
var myToolsPanel = createUI(this);


برای اجرای اسکریپتی که به این موضوع اشاره دارد ، نمی توانید از منوی File> Scriptts> Run Script File استفاده کنید. برای اینکه اسکریپت شما با یک شیء Window (از منوی File> Scriptts) کار کند ، بررسی کنید که آیا این یک شیء Panel است یا خیر. برای مثال:

function createUI(thisObj) {
    var myPanel = (thisObj instanceof Panel) ? thisObj : new Window("palette", "My Tools",
    [100, 100, 300, 300]);
    myPanel.add("button", [10, 10, 100, 30], "Tool #1");
    return myPanel;
}
var myToolsPanel = createUI(this);


توقف یک اسکریپت در حال اجرا


با فشردن کلید Esc یا Cmd+period (در سیستم عامل Mac) یک اسکریپت می تواند متوقف شود.
اگر نیاز به اسکریپت و پلاگین های افتر افکت دارید یا به دنبال پروژه های افتر افکت هستید می توانید با کلیک بر روی کلمات مورد نظر به بخش مورد نظر بروید.

امتیاز :ستارهستارهستارهستارهستاره   ( 5/5 )

دسته بندی :  آموزشی / آموزش افتر افکت

نظر دهید

نام شما :
ایمیل شما :
نظر شما :
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
کد امنیتی :
عکس خوانده نمی شود
کد را وارد کنید :