آموزش ها, مقالات آموزشی 13 دقیقه 2120

6 اکسپرشن (expression) ضروری برای کدنویسی خلاق در افترافکت

چکیدهباز کردن قابلیت اکسپرشن (expression) در ادوبی افترافکت اکسپرشن ها (expressions) سلاح مخفی طراحان موشن گرافی هستند. آنها می توانند کارهای تکراری را به صورت خودکار انجام دهند، ایستگاه های تغییر حالت بسازند و قابلیت های شما را به مراتب بیشتر از آنچه که تنها با کی فریم ها (keyframes) امکان پذیر است، گسترش دهند. […]

باز کردن قابلیت اکسپرشن (expression) در ادوبی افترافکت

اکسپرشن ها (expressions) سلاح مخفی طراحان موشن گرافی هستند. آنها می توانند کارهای تکراری را به صورت خودکار انجام دهند، ایستگاه های تغییر حالت بسازند و قابلیت های شما را به مراتب بیشتر از آنچه که تنها با کی فریم ها (keyframes) امکان پذیر است، گسترش دهند.

در این مقاله که توسط تیم بیت گرف تهیه شده قرار است به شما نشان داده شود که چه زمانی، چرا و چگونه باید از اکسپرشن ها (expressions) در کارهایتان استفاده کنید، پس با ما همراه باشید.

تا حالا از اکسپرشن ها (expressions) استفاده نکرده اید؟! مشکلی نیست. می توانید این مقاله را بخوانید و بعد از این در کارهایتان استفاده کنید.

در این مقاله، ما اکسپرشن ها (expressions) و دلایل اینکه چرا یادگیری آنها مهم است را توضیح می دهیم. فایل پروژه اکسپرشن ها (expressions) را به اشتراک می گذاریم تا بتوانید تمرین کنید. و گام به گام شما را از طریق شش اکسپرشن (expression) ضروری که ما پس از بررسی های بسیار، آنها را گردآوری کرده ایم، راهنمایی می کنیم.

اکسپرشن ها (expressions) قطعاتی از کد هستند که از زبان Extendscript یا Javascript برای تغییر ویژگی های لایه افترافکت استفاده می کنند.

هنگامی که یک اکسپرشن (expression) را بر روی یک ویژگی (property) می نویسید، می توانید روابط بین آن ویژگی و لایه های دیگر، زمان مشخص شده و کنترلرهای اکسپرشن (expression) موجود در پنجره Effects & Presets را ایجاد کنید.

زیبایی اکسپرشن ها (expressions) در این است که برای شروع استفاده از آنها نیازی به مهارت در کد نویسی ندارید. در بیشتر مواقع می توانید با استفاده از یک کلمه، تغییرات اساسی ایجاد کنید.

بعلاوه، افترافکت قابلیت pick-whip را دارد که به شما امکان می دهد به طور خودکار کد برای تعریف روابط تولید کنید.

شروع کار با اکسپرشن ها (expressions) آسان است، کارهای ساده را خودکار می کند و با حداقل تلاش بازدهی فوری و بالایی را ارائه می دهد.

هر اکسپرشنی (expression) را که می شناسید یک ابزار صرفه جویی در وقت و ساده کننده کار است. هرچه تعداد اکسپرشن های (expressions) موجود در کیت ابزار شما بیشتر باشد، برای پروژه های افترافکت و به ویژه آنهایی که مهلت آنها محدود است مناسب تر خواهید بود.

نکته مهم: وقتی پروژه موشن گرافیست های دیگر را باز می کنیم، روی هر لایه کلیک می کنیم و E را دو بار فشار می دهیم تا اکسپرشن (expression) مورد نظر کد نویس را در آن لایه اگر نوشته باشد ببینیم. این به ما امکان می دهد منطق طراح را درک کرده و پروژه آنها را مهندسی معکوس کنیم.

6 اکسپرشن (expression) ضروری افترافکت
6 اکسپرشن (expression) ضروری افترافکت
قابلیت pick-whip افترافکت
قابلیت pick-whip افترافکت

6 اکسپرشن (expression) ضروری در افترافکت که باید بلد باشید:

  • اکسپرشن چرخش (Rotation)

  • اکسپرشن تکان دادن (Wiggle)

  • اکسپرشن تصادفی (Random)

  • اکسپرشن زمان (Time)

  • اکسپرشن لنگرگاه یا به اصطلاح انکر پوینت (Anchor Point)

  • اکسپرشن پرش (Bounce)


1 – اکسپرشن چرخش (Rotation)

با استفاده از اکسپرشن چرخش، می توانیم به یک لایه دستور دهیم که به تنهایی بچرخد و همچنین سرعت چرخش آن را تعیین کنیم.

برای استفاده از اکسپرشن چرخش:

  • لایه ای را که می خواهید بچرخد انتخاب کرده و R را روی صفحه کلید خود فشار دهید.
  • ALT را نگه دارید و روی نماد کرونومتر در سمت راست کلمه “rotation” کلیک کنید.
  • درج کد تایم *300 ؛ در فضایی که در پایین سمت راست لایه شما ظاهر شده است.
  • روی لایه کلیک کنید.

اکنون لایه باید به سرعت بچرخد (اگر لایه در حال چرخش نیست و خطایی دریافت کرده اید ، مطمئن شوید که “t” در time با حرف بزرگ نباشد).

برای تنظیم سرعت، فقط کافی است بعد از time* عدد را تغییر دهید.

اکسپرشن چرخش (Rotation)
اکسپرشن چرخش (Rotation)
بررسی اکسپرشن چرخش (Rotation) در افترافکت
بررسی اکسپرشن چرخش (Rotation) در افترافکت
اکسپرشن (Rotation) در ادوبی افترافکت
اکسپرشن (Rotation) در ادوبی افترافکت


2 – اکسپرشن تکان دادن (Wiggle)

اکسپرشن تکان دادن (WIGGLE) برای هدایت حرکت تصادفی بر اساس محدودیت های تعریف شده توسط کاربر استفاده می شود. پیچیدگی محدودیت ها، دشواری کدنویسی اکسپرشن را تعیین می کند.

برای نوشتن ساده ترین کد اکسپرشن تکان دادن (WIGGLE)، فقط باید دو پارامتر را تعریف کنید:

  • فرکانس (فرکانس)، برای تعریف اینکه چند بار می خواهید مقدار (عدد) شما در ثانیه حرکت کند.
  • دامنه (آمپر)، برای تعیین میزان تغییر مقدار شما در بالا یا پایین مقدار شروع.

فرکانس کنترل می کند که در هر ثانیه چند بار قرار است جسم تکان بخورد و دامنه کنترل می کند که جسم (لایه) از موقعیت اولیه خود چقدر دور می شود. کد نوشته شده، بدون مقادیر، عبارت است از: wiggle(freq,amp)

برای آزمایش، عدد 50 را برای فرکانس و عدد 30 را برای دامنه بدهید تا کد ایجاد شود: wiggle(50,30);؛

اکسپرشن تکان دادن (Wiggle)
اکسپرشن تکان دادن (Wiggle)
(Wiggle) افترافکت
(Wiggle) افترافکت
(Wiggle) در افترافکت
(Wiggle) در افترافکت

3 – اکسپرشن تصادفی (Random)

اکسپرشن تصادفی در افترافکت برای ایجاد مقادیر تصادفی برای یک ویژگی خاص، مورد استفاده قرار می گیرد.

با افزودن اکسپرشن تصادفی به یک ویژگی لایه، به افترافکت دستور می دهید که یک عدد تصادفی بین 0 و مقدار تعریف شده در اکسپرشن تصادفی را انتخاب کند.

ساده ترین شکل اکسپرشن تصادفی این گونه نوشته می شود: random();

به عنوان مثال، اگر می خواهید یک اکسپرشن تصادفی بین 0 تا 50 را در یک لایه مقیاس (scale layer) اعمال کنید، لایه را انتخاب کرده و سپس کد را به صورت random(50); تایپ کنید.

اما این همه ماجرا نیست. در واقع انواع مختلفی اکسپرشن تصادفی در افتر افکت وجود دارد، از جمله:

  • random(maxValOrArray); (maxValOrArray = بیشترین مقدار یا آرایه)
  • random(minValOrArray, maxValOrArray);
  • gaussRandom(minValOrArray, maxValOrArray);
  • seedRandom(seed, timeless = false);

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

اکسپرشن تصادفی (Random)
اکسپرشن تصادفی (Random)
Random Scale
Random Scale
کد (Random) در افترافکت
کد (Random) در افترافکت


4 – اکسپرشن زمان (TIME)

اکسپرشن زمان (TIME) در افترافکت زمان فعلی یک کامپوزیشن (composition) را به ثانیه بر می گرداند و نشان می دهد. مقادیر ایجاد شده توسط این اکسپرشن می تواند برای ایجاد حرکت با ارتباط با یک مقدار ویژگی (property value) مورد استفاده قرار گیرد.

اگر اکسپرشن زمان (TIME) را دو برابر کنید، کد آن می شود: time*2; و برای مثال، هشت ثانیه در یک کامپوزیشن (composition)، در عرض چهار ثانیه می گذرد:

کد زمان (TIME)
کد زمان (TIME)
کد زمان (TIME) در افترافکت
کد زمان (TIME) در افترافکت
Time Delay
Time Delay

5 – اکسپرشن لنگرگاه یا به اصطلاح انکر پوینت (Anchor Point)

لنگرگاه یا به اصطلاح انکر پوینت (Anchor Point) در افترافکت نقطه ای است که همه تغییرات از آن منشا می گیرد، نقطه ای که لایه شما در آن مقیاسش تغییر می کند و حول آن نقطه می چرخد.

با استفاده از اکسپرشن لنگرگاه یا به اصطلاح انکر پوینت (Anchor Point)، می توانید انکرپوینت خود را روی موارد زیر قفل کنید:

  • بالا سمت چپ
  • بالا سمت راست
  • پایین سمت چپ
  • پایین سمت راست
  • مرکز
  • تنظیم محور X یا Y با یک اسلایدر (Slider Controller)

استفاده از اکسپرشن برای کنترل انکرپوینت به ویژه هنگام ساخت قالب های عنوان (title templates and lower thirds) در ایجاد فایل های MOGRT مفید است.

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

a = thisComp.layer(“Text1”).sourceRectAtTime();
height = a.height;
width = a.width;
top = a.top;
left = a.left;

x = left + width/2; y = top + height/2; [x,y];

اکسپرشن لنگرگاه یا به اصطلاح انکر پوینت (Anchor Point)
اکسپرشن لنگرگاه یا به اصطلاح انکر پوینت (Anchor Point)
کد انکر پوینت (Anchor Point)
کد انکر پوینت (Anchor Point)


6 – اکسپرشن پرش (BOUNCE)

در حالی که اکسپرشن پرش (BOUNCE) بسیار پیچیده تر است، برای ایجاد حالت پرش (BOUNCE) فقط به دو کی فریم (keyframes) نیاز است.

افتر افکت سرعت حرکت لایه شما را پردازش می کند تا نحوه عملکرد پرش (BOUNCE) را تعیین کند.

در اینجا اکسپرشن پرش (BOUNCE) را به منظور کپی و جایگذاری کردن در افترافکت قرار داده ایم:

e = .7; //elasticity
g = 5000; //gravity
nMax = 9; //number of bounces allowed
n = 0;

if (numKeys > 0){
n = nearestKey(time).index;
if (key(n).time > time) n–;
}
if (n > 0){
t = time – key(n).time;
v = -velocityAtTime(key(n).time – .001)*e;
vl = length(v);
if (value instanceof Array){
  vu = (vl > 0) ? normalize(v) : [0,0,0];
}else{
  vu = (v < 0) ? -1 : 1;
}
tCur = 0;
segDur = 2*vl/g;
tNext = segDur;
nb = 1; // number of bounces
while (tNext < t && nb <= nMax){
  vl *= e;
  segDur *= e;
  tCur = tNext;
  tNext += segDur;
  nb++
}
if(nb <= nMax){
  delta = t – tCur;
  value +  vu*delta*(vl – g*delta/2);
}else{
  value
}
}else

value

پس از کپی و جایگذاری در افترافکت، باید سه قسمت را شخصی سازی کنید:

متغیر e، که کشش و به اصطلاح الاستیسیته برگشت (elasticity of the bounce) را کنترل می کند.

متغیر g، که گرانش روی جسم شما را کنترل می کند.

متغیر nMax، که حداکثر تعداد پرش را تنظیم می کند.

اگر این متغیرها را به صورت زیر تنظیم کنید.

شما پرش (bounce) زیر را با کشش بالا و گرانش کم ایجاد خواهید کرد:

اکسپرشن پرش (BOUNCE)
اکسپرشن پرش (BOUNCE) در افترافکت
کد پرش (BOUNCE) در افترافکت
کد پرش (BOUNCE) در افترافکت
نتیجه کد پرش (BOUNCE) در افترافکت
نتیجه کد پرش (BOUNCE) در افترافکت

راستی میتوانید آخرین مطالب ما را از طریق تلگرام و اینستاگرام نیز دنبال کنید. برای عضویت در کانال تلگرام و اینستاگرام بیت گرف روی دکمه زیر کلیک کنید. همچنین فیلم ها با کیفیت های مختلف در یوتیوب هم قرار دارد.

TELEGRAM INSTAGRAM youtube

امتیاز: 0 از ۵ - تعداد رای: 0
اشتراک گذاری این صفحه
پست های مشابه آموزش های مرتبط با مقاله یا آموزشی که در حال مطالعه آن هستید!
گفتگو و سوالات شما در این قسمت میتوانید نظر یا سوال خود را در مورد مقاله یا آموزش مطرح کنید.
دیدگاهتان را بنویسید برای ارسال دیدگاه لازم است در سایت وارد شده یا ثبت نام کنید ...
2 دیدگاه به گفتگوی ما بپیوندید و نظرتان را با ما به اشتراک بگذارید ...
ژینا واحدی 1403/01/27

سلام وقت بخیر
من هر کدی که کپی میکنم این ارور رو به من میده ممنون میشم راهنمایی کنید
layer named ‘…’ is missing or does not exist. It may have been renamed, moved, or deleted, or the name may have been mistyped.

    تیم پشتیبانی بیت گرف 1403/01/28

    سلام وقت بخیر
    لطفا با تیم پشتیبانی ما در تلگرام در ارتباط باشید تا مشکل را حل کنیم.

مطالعه با تمرکز بیشتر
پست های پربازدید هفته 6 پست پربازدید در دسترس شماست!
دانلود و نصب اسکریپت motion...

دانلود و نصب اسکریپت motion...

احسان ملائی
دانلود اسکریپت Motion Bro v4.0.4...

دانلود اسکریپت Motion Bro v4.0.4...

مهدی فریدونی
آموزش هوش مصنوعی استیبل دیفیوژن...

آموزش هوش مصنوعی استیبل دیفیوژن...

مهسا سلطانی
دانلود Adobe Firefly | هوش...

دانلود Adobe Firefly | هوش...

مهدی فریدونی
میدجورنی رایگان و نحوه استفاده...

میدجورنی رایگان و نحوه استفاده...

مهسا سلطانی
جداسازی صدای خواننده از موزیک...

جداسازی صدای خواننده از موزیک...

مهدی فریدونی
دوره روتوش
دوره جامع گرافیک و ویدیو
×