bg single
خانه آموزش ها آموزش کد نویسی در افترافکت
product-introduction-image

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

comment image 0 دیدگاه
comment image 1 اسفند 1400

نویسنده : پشتیبان

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

دود به همه علاقه مندان به آمورش افترافکت به مدرسه گرافیک پلاس خوش آمدید . برای اینکه همراه با آخرین آموزش کد نویسی در افترافکت درباره جریان کاری توسعه اسکریپت پیش برویم، ابتدا به مفاهیم پایه و تمرین‌های خوب لازم برای شروع نوشتن اسکریپت افترافکت میپردازیم. ما به انجام کارهای معمول در افترافکت مثل ایجاد پروژه، ایجاد کامپوزیشن، ایجاد لایه، ایجاد اشکال، اضافه کردن افکت، تغییر مقادیر و عبارات expression، استفاده از نوشته و فونت، اضافه کردن کی فریم، استفاده از کارکردها و بسیاری موارد دیگر میپردازیم.

نوشتن اولین اسکریپت

همانطور که در بسته نصب After Effects Sublime Text و آموزش استفاده از آن اشاره شده، اسکریپت‌ها از زبان Adobe ExtendScript استفاده میکنند، ExtendScript فرم توسعه‌داده شده‌ای از جاوا اسکریپت (JavaScript) است و در تعدادی از برنامه‌های Adobe مثل فتوشاپ، ایلوستریتور، و ایندیزاین از آن استفاده میشود. ExtendScript روش خوب و پربازدهی برای این است که به هر آنچه که میخواهید در افترافکت دست پیدا کنید.
اسکریپت‌ها از زبان Adobe ExtendScript استفاده میکنند، که فرم توسعه‌داده شده‌ای از جاوا اسکریپت (JavaScript) است و در تعدادی از برنامه‌های Adobe مثل فتوشاپ، ایلوستریتور، و ایندیزاین از آن استفاده میشود.
در این آموزش به مفاهیم اولیه و تمرین‌های خوب ضروری برای شروع نوشتن اسکریپت افترافکت میپردازیم.

ایجاد اولین کامپوزیشن

ما با استفاده از متد

از آبجکت

و قرار دادن آنها بین دو براکت شروع میکنیم.

آبجکت

ریشه ی (root) همه چیز است، همانطور که در شکل زیر دیده میشود:

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

حالا کامپوزیشن خودمان را با استفاده از آبجکت‌های زیردسته‌ی آبجکت

ایجاد میکنیم، که یکی آبجکت زیردسته‌ی

است و شامل پروژه ای است که در خط اول ایجاد کردیم و همینطور آبجکت زیردسته‌ی

که به شما دسترسی به پوشه‌ها و کامپوزیشن هایی میدهد که در پنجره ی Project در افترافکت میبینید.

مرتب کردن کد

کدنویسی تمیز و قابل نگهداری خیلی مهم است. ما نمیخواهیم عبارات expression کثیف و عجله ای بنویسیم. از آنجاییکه میخواهیم اسکریپت‌هایمان بسادگی قابل توسعه باشند، لازم است قراردادهای اهالی جاوااسکریپت را بپذیریم.

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

کلمه کلیدی

بدین معنی است که متغیر مقابل یک متغیر جدید است. به همین علت در خط 9 ، از کلمه کلیدی

دیگر استفاده نمیکنیم، چون میخواهیم از مقدار

استفاده کنیم (که کامپوزیشنی است که اخیرا ایجاد کردیم)

این هم از توضیحات خط به خط کاری که انجام دادیم:

  • خط 3: متغیر جدیدی ایجاد کن

    که برابر خواهد بود با

    اگر

    تعریف نشده باشد و در غیراینصورت برابر خواهد بود با

    .

  • خط 6: متغیرهای جدید ایجاد کن

    و

    که هر دو برابر با آرایه ای جدید از مقادیر خواهند بود.

  • خط 7: متغیر جدید ایجاد کن

    که مربوط به نامی است که به کامپوزیشن اختصاص میدهیم.

  • خط 8: متغیر جدید ایجاد کن

    که برابر خواهد بود با

    که خصوصیتی از آبجکت

    در صورتی که تعریف نشده باشد، برابر خواهد بود با متد

    از زیردسته‌ی

    از

    که آرایه ای از آرگومان‌ها را ارسال خواهد کرد.

    • نام کامپوزیشن
    • پهنای کامپوزیشن
    • ارتفاع کامپوزیشن
    • نسبت پیکسلی کامپوزیشن
    • زمان کامپوزیشن (بر حسب ثانیه)
    • فریم در ثانیه کامپوزیشن
  • خط 9: استفاده کن از متد

    و با متد

    تایم‌لاین برای این کامپوزیشن باز خواهد شد.

مروری سریع بر مفاهیم جاوا اسکریپت

  • متغیر (Variable): میتواند یک مقدار، یا آرایه‌ای از مقادیر یک آبجکت را ذخیره کند.
  • آرایه (Array): شامل چندین مقدار است. آرایه‌ها میتوانند به دو روش اظهار شوند.
  • تابع (Function): بخشی از کد که برای انجام عمل مشخصی طراحی شده است.
  • آبجکت (Object): آبجکت پیچیده تر است، اما برای الان لازم است که بدانید آبجکت، متدها و ویژگی‌ها دارد.
    • ویژگی (Property): مشابه یک متغیر است.
    • متد: مشابه فراخوانی یک تابع است.

افزودن Undo Groups

از آنجاییکه محاسبات زیادی در حین اجرای اسکریپت انجام میشود، لازم است مشخص کنید چه اتفاقی بیفتد وقتی که کلیدهای

یا

را بروی صفحه کلید میزنید. انجام این کار خیلی ساده است، فقط لازم است کد خود را بین متدهای

و

از آبجکت

قرار دهیم. این متد ، آرگومان نامی که در منوی

افترافکت نمایش داده میشود را برمیدارد.

ایجاد لایه پس‌زمینه (background)

برای ایجاد لایه پس‌زمینه، ما از زیردسته ‌ی

از فراخوانی

متد

استفاده میکنیم و این آرگومان‌ها را برای آن ارسال میکنیم:

  • رنگ لایه
  • آرایه‌ای از اعداد شناور (بین صفر و یک). برای بدست آوردن این مقدار، لازم است هر یک از مقادیر RGB را بر 255 تقسیم کنیم یا از این لینک در وبسایت jsFiddle که من ساختم استفاده کنید تا مقدار آنرا بدست بیاورید.http://jsfiddle.net/seblavoie/mezGe/43/embedded/result/
  • نام لایه
  • پهنای لایه
  • ارتفاع لایه
  • نسبت پیکسلی لایه

افزودن افکت شبکه (Grid Effect)

بهترین راه برای ایجاد تقاطع متمرکز، استفاده از افکت Grid Effect بروی لایه پس‌زمینه است. برای انجام این کار، ما از متغیر

استفاده میکنیم که ارجاع میدهد به

و از ویژگی

استفاده میکنیم.

در اینجا باید به چند مورد توجه داشته باشید. اول اینکه متد

بصورت زنجیروار است که بدین معنی است که میتوانید آن را چندین بار فراخوانی کنید تا به ویژگی‌های زیر دسته‌ای که میخواهید برسید.

  • شفافیت (opacity) لایه:

  • شفافیت (opacity) افکت Grid:

دوم اینکه، ما از متد

وقتی استفاده میکنیم که میخواهیم یک مقدار را تنظیم کنیم، نه وقتی که میخواهیم عبارت expression را تنظیم کنیم.

ایجاد لایه افکت Wipe

برای افزودن افکت wipe ، یک لایه جدید میسازیم و از افکت Radial Wipe استفاده میکنیم.

ما از متد

استفاده کردیم تا کی فریم‌ها را تنظیم کنیم و یک

تا لوپ loop انیمیشن را ایجاد کنیم. (متوجه کاری که انجام دادم هستید که…درسته؟)

اضافه کردن لایه نوشته (Text)

کار کردن با text، از آنجاییکه باید ویژگی‌های مقدار source text را مستقیما تغییر بدهید، کمی متفاوت است.

ما ویژگی‌های مقداری text را تغییر دادیم و از

استفاده کردیم تا آنرا مجددا به لایه text خود ارسال کنیم. همینطور از یک عبارت expression ساده استفاده کردیم تا شمارش معکوس countdown ایجاد کنیم.

یک تابع جاوا اسکریپت است که میتواند بخش اعشاری عدد را حذف کند.بعد از آن، نقطه anchor point را با استفاده از متد

در مرکز قرار میدهیم.

افزودن بیضی‌ها

برای اضافه کردن بیضی‌ها، ما از متد

استفاده میکنیم و به آن گروه وکتور و گروه شکل اختصاص بدهیم. همینطور یک تابع ایجاد میکنیم تا از کد تکراری اجتناب کنیم.

خط 5 خیلی مهم است، از آنجاییکه نمیتوانید ویژگی

را چه در مستندات documentation یا در محیط کاربری افترافکت پیدا کنید. سپاس از Dan Ebbert برای این راهنما:http://forums.creativecow.net/thread/227/22280

ما از یک تابع سفارشی کوچک بجای تکثیر تابع ایجاد بیضی استفاده کردیم. شما میتوانید از نوشتن چندین تابع استفاده کنید.

یک قانون سرانگشتی ساده: در صورتی که خطوط کد را کپی پیست میکنید، استفاده از یک تابع را در نظر بگیرید.

در ادامه ما فقط ویژگی‌های شکل را تغییر دادیم.

ممکن است با این خط

برخورد کرده باشید که کمی متفاوت با آنچه هست که تا حالا نوشته بودیم. جاوا اسکریپت از زنجیره‌ای کردن خطوط کد پشتیبانی میکند. در این حالت نتیجه ی مشابهی بدست می آید و راه بد و خوب وجود نداره. این فقط یک استایل کدنویسی شخصی هست که ممکن است بخواهید از آن استفاده کنید یا استفاده نکنید.

با تشکر از مطالعه آموزش کد نویسی در افترافکت از مدرسه گرافیک پلاس

راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام مدرسه گرافیک پلاس عضو شوید.

این مقاله چقدر براتون مفید بود؟

از ۱ تا ۵ امتیاز بدید.

میانگین رتبه 4 / 5. تعداد رای: 5

برای ارسال نظر باید ثبت نام / ورود به حساب کاربری کنید.
آخرین دیدگاه های شما
هنوز کسی نظری نداده ! تو اولین نفر باش

هر هفته بهترین مقالات و تخفیف های ویژه را ایمیل می کنیم. برای دریافت، به کلوپ ۲۰۰۰۰ نفری ما بپیوندید.



جشواره فروش ویژه مدت محدود (تخفیف 80%)

0 روز 0 ساعت 0 دقیقه 0 ثانبه!