Drivers Panel
منو : Sidebar region ‣ Drivers
میانبر » N
دوم
منو : Context menu ‣ Edit Driver
میانبر : Ctrl-D
این پنل در نوار کناری ویرایشگر درایورها یا هنگام افزودن درایور به ویژگی به صورت پاپاور قابل مشاهده است. این ویژگی مشخصه ای را نشان می دهد که در حال رانندگی است، به دنبال آن یک سری تنظیمات که نحوه عملکرد درایور را مشخص می کند
Type
توابع داخلی (میانگین، مجموع، حداقل و حداکثر) : ژگی هدایت شده دارای مقدار میانگین، مجموع، کمترین یا بالاترین (به ترتیب) مقادیر متغیرهای راننده ارجاع شده خواهد بود. اگر فقط یک متغیر درایور وجود داشته باشد، این توابع همان نتیجه را به همراه خواهند داشت.
سفارشی (Scripted Expression). : یک عبارت پایتون دلخواه که می تواند با نام به متغیرهای درایور اشاره کند
منو : Sidebar region ‣ Drivers
میانبر » N
دوم
منو : Context menu ‣ Edit Driver
میانبر : Ctrl-D
این پنل در نوار کناری ویرایشگر درایورها یا هنگام افزودن درایور به ویژگی به صورت پاپاور قابل مشاهده است. این ویژگی مشخصه ای را نشان می دهد که در حال رانندگی است، به دنبال آن یک سری تنظیمات که نحوه عملکرد درایور را مشخص می کند
Type
توابع داخلی (میانگین، مجموع، حداقل و حداکثر) : ژگی هدایت شده دارای مقدار میانگین، مجموع، کمترین یا بالاترین (به ترتیب) مقادیر متغیرهای راننده ارجاع شده خواهد بود. اگر فقط یک متغیر درایور وجود داشته باشد، این توابع همان نتیجه را به همراه خواهند داشت.
سفارشی (Scripted Expression). : یک عبارت پایتون دلخواه که می تواند با نام به متغیرهای درایور اشاره کند
UnityChan(Channel)
(Scripted Expression
Expressions
یک فیلد متنی که در آن می توانید یک عبارت پایتون دلخواه را وارد کنید که به متغیرهای درایور با نام آنها اشاره می کند.
این عبارت به مجموعهای از ثابتهای استاندارد و توابع ریاضی از math، bl_math و سایر ماژولهای ارائه شده در Driver Namespace دسترسی دارد. برای مثال اضافه کردن یک تابع سفارشی به فضای نام، به مثال فضای نام راننده مراجعه کنید
به دلایل عملکرد بهتر است تا حد امکان از زیر مجموعه Simple Expressions استفاده کنید.
Use Self
اگر این گزینه فعال باشد، متغیر self می تواند برای درایورها استفاده شود تا به داده های خود ارجاع دهند. برای اجسام و استخوان ها مفید است تا از ایجاد متغیر درایور که به سمت خود اشاره می کند اجتناب شود.
مثال: self.location.x اعمال شده بر روی خاصیت چرخش Y همان جسم باعث میشود که شی در هنگام حرکت غلت بخورد.
توجه داشته باشید که وابستگیهای ویژگیهایی که از طریق خود دسترسی دارند ممکن است به طور کامل ردیابی نشوند.
یک فیلد متنی که در آن می توانید یک عبارت پایتون دلخواه را وارد کنید که به متغیرهای درایور با نام آنها اشاره می کند.
این عبارت به مجموعهای از ثابتهای استاندارد و توابع ریاضی از math، bl_math و سایر ماژولهای ارائه شده در Driver Namespace دسترسی دارد. برای مثال اضافه کردن یک تابع سفارشی به فضای نام، به مثال فضای نام راننده مراجعه کنید
به دلایل عملکرد بهتر است تا حد امکان از زیر مجموعه Simple Expressions استفاده کنید.
Use Self
اگر این گزینه فعال باشد، متغیر self می تواند برای درایورها استفاده شود تا به داده های خود ارجاع دهند. برای اجسام و استخوان ها مفید است تا از ایجاد متغیر درایور که به سمت خود اشاره می کند اجتناب شود.
مثال: self.location.x اعمال شده بر روی خاصیت چرخش Y همان جسم باعث میشود که شی در هنگام حرکت غلت بخورد.
توجه داشته باشید که وابستگیهای ویژگیهایی که از طریق خود دسترسی دارند ممکن است به طور کامل ردیابی نشوند.
UnityChan(Channel)
Expressions یک فیلد متنی که در آن می توانید یک عبارت پایتون دلخواه را وارد کنید که به متغیرهای درایور با نام آنها اشاره می کند. این عبارت به مجموعهای از ثابتهای استاندارد و توابع ریاضی از math، bl_math و سایر ماژولهای ارائه شده در Driver Namespace دسترسی…
عبارات ساده
Blender می تواند زیرمجموعه مفیدی از عبارات درایور پایتون را مستقیماً ارزیابی کند که به طور قابل توجهی عملکرد را به خصوص در سیستم های چند هسته ای بهبود می بخشد. برای استفاده از این، عبارت راننده فقط باید از ویژگی های زیر استفاده کند:
نام های متغیر : فقط از کاراکترهای ASCII استفاده کنید.
تحت اللفظی : ممیز شناور و عدد صحیح اعشاری.
جهانی ها : frame
ثابت ها : pi, True, False
اپراتورها : +, -, *, /, ==, !=, <, <=, >, >=, and, or, not .اپراتور شرطی/ سه تایی اگر
توابع استاندارد : min, max, radians, degrees, abs, fabs, floor, ceil, trunc, round, int, sin, cos, tan, asin, acos, atan, atan2, exp, log, sqrt, pow, fmod
توابع ارائه شده از بلندر : lerp, clamp, smoothstep
عبارات ساده حتی زمانی که اجرای اسکریپت پایتون غیرفعال است ارزیابی می شوند.
هنگامی که عبارتی خارج از این زیرمجموعه استفاده می شود، Blender یک هشدار "Slow Python" را نمایش می دهد. با این حال، تا زمانی که اکثر درایورها از عبارات ساده استفاده می کنند، استفاده از یک عبارت پیچیده در تعداد کمی از آن ها مشکلی ندارد.
Blender می تواند زیرمجموعه مفیدی از عبارات درایور پایتون را مستقیماً ارزیابی کند که به طور قابل توجهی عملکرد را به خصوص در سیستم های چند هسته ای بهبود می بخشد. برای استفاده از این، عبارت راننده فقط باید از ویژگی های زیر استفاده کند:
نام های متغیر : فقط از کاراکترهای ASCII استفاده کنید.
تحت اللفظی : ممیز شناور و عدد صحیح اعشاری.
جهانی ها : frame
ثابت ها : pi, True, False
اپراتورها : +, -, *, /, ==, !=, <, <=, >, >=, and, or, not .اپراتور شرطی/ سه تایی اگر
توابع استاندارد : min, max, radians, degrees, abs, fabs, floor, ceil, trunc, round, int, sin, cos, tan, asin, acos, atan, atan2, exp, log, sqrt, pow, fmod
توابع ارائه شده از بلندر : lerp, clamp, smoothstep
عبارات ساده حتی زمانی که اجرای اسکریپت پایتون غیرفعال است ارزیابی می شوند.
هنگامی که عبارتی خارج از این زیرمجموعه استفاده می شود، Blender یک هشدار "Slow Python" را نمایش می دهد. با این حال، تا زمانی که اکثر درایورها از عبارات ساده استفاده می کنند، استفاده از یک عبارت پیچیده در تعداد کمی از آن ها مشکلی ندارد.
UnityChan(Channel)
Drivers Panel منو : Sidebar region ‣ Drivers میانبر » N دوم منو : Context menu ‣ Edit Driver میانبر : Ctrl-D این پنل در نوار کناری ویرایشگر درایورها یا هنگام افزودن درایور به ویژگی به صورت پاپاور قابل مشاهده است. این ویژگی مشخصه ای را نشان می دهد که…
Driver Value : نتیجه فعلی راه اندازی درایور. برای اهداف اشکال زدایی مفید است
Variables : نیاز به توضیح بیشتر
Update Dependencies : بهروزرسانی وابستگیهای Driver Value را اجباری میکند.
Show in Drivers Editor : ویرایشگر Drivers کاملاً برجسته را باز می کند. این دکمه فقط در نسخه پاپاور پنل Drivers ظاهر می شود.
Variables : نیاز به توضیح بیشتر
Update Dependencies : بهروزرسانی وابستگیهای Driver Value را اجباری میکند.
Show in Drivers Editor : ویرایشگر Drivers کاملاً برجسته را باز می کند. این دکمه فقط در نسخه پاپاور پنل Drivers ظاهر می شود.
UnityChan(Channel)
Variables
متغیرهای درایور
متغیرها ارجاعاتی به ویژگی ها، کانال های تبدیل یا نتیجه مقایسه بین تبدیل دو شی هستند.
برای اینکه وابستگی ها به درستی ردیابی شوند، درایورها باید از طریق متغیرهای درایور، به جای ارجاع مستقیم در عبارت Python، به داده های شی دسترسی داشته باشند.
Add Input Variable : یک متغیر Driver جدید اضافه می کند.
Copy/Paste Variables : لیست متغیرهای فعلی را کپی می کند تا بتوان آن را در لیست متغیرهای راننده دیگری جایگذاری کرد
Name : نام برای استفاده در عبارات اسکریپت. نام باید با یک حرف شروع شود و فقط شامل حروف، اعداد یا زیرخط باشد.
Variable Type : نوع متغیر مورد استفاده
متغیرها ارجاعاتی به ویژگی ها، کانال های تبدیل یا نتیجه مقایسه بین تبدیل دو شی هستند.
برای اینکه وابستگی ها به درستی ردیابی شوند، درایورها باید از طریق متغیرهای درایور، به جای ارجاع مستقیم در عبارت Python، به داده های شی دسترسی داشته باشند.
Add Input Variable : یک متغیر Driver جدید اضافه می کند.
Copy/Paste Variables : لیست متغیرهای فعلی را کپی می کند تا بتوان آن را در لیست متغیرهای راننده دیگری جایگذاری کرد
Name : نام برای استفاده در عبارات اسکریپت. نام باید با یک حرف شروع شود و فقط شامل حروف، اعداد یا زیرخط باشد.
Variable Type : نوع متغیر مورد استفاده
Single Property : مقدار یک ویژگی RNA را که توسط یک مرجع بلوک داده و یک رشته مسیر مشخص شده است، بازیابی می کند.
در مورد ویژگی های تبدیل، این مقدار دقیق ویژگی UI را برمی گرداند، در حالی که Transform Channel در صورت نیاز، والد و/یا محدودیت ها را در نظر می گیرد.
ID Type : نوع بلوک ID. به عنوان مثال: کلید، تصویر، شی، ماده.
ID : شناسه از نوع ID-block. به عنوان مثال: "Material.001"
RNA Path : نام RNA ویژگی، بر اساس زیرمجموعه ای از نحو دسترسی ویژگی پایتون. به عنوان مثال: location.x یا location[0] برای مقدار کانال انیمیشن مکان X (قبل از والدین یا محدودیتها)، یا ["prop_name"] برای یک ویژگی سفارشی.
Fallback : در صورت فعال بودن، به جای ایجاد خطا در ارزیابی درایور، امکان تعیین یک مقدار بازگشتی را برای استفاده به عنوان مقدار متغیر در صورتی که مسیر RNA قابل حل نباشد، می دهد.
در مورد ویژگی های تبدیل، این مقدار دقیق ویژگی UI را برمی گرداند، در حالی که Transform Channel در صورت نیاز، والد و/یا محدودیت ها را در نظر می گیرد.
ID Type : نوع بلوک ID. به عنوان مثال: کلید، تصویر، شی، ماده.
ID : شناسه از نوع ID-block. به عنوان مثال: "Material.001"
RNA Path : نام RNA ویژگی، بر اساس زیرمجموعه ای از نحو دسترسی ویژگی پایتون. به عنوان مثال: location.x یا location[0] برای مقدار کانال انیمیشن مکان X (قبل از والدین یا محدودیتها)، یا ["prop_name"] برای یک ویژگی سفارشی.
Fallback : در صورت فعال بودن، به جای ایجاد خطا در ارزیابی درایور، امکان تعیین یک مقدار بازگشتی را برای استفاده به عنوان مقدار متغیر در صورتی که مسیر RNA قابل حل نباشد، می دهد.
Transform Channel
مقدار یک کانال Transform را از یک جسم یا استخوان بازیابی می کند.
ID : شناسه شی به عنوان مثال: مکعب، آرماتور، دوربین.
Bone : برای آرماتورها، نام استخوان آرماتور. به عنوان مثال: "Bone"، "Bone.002"، "Arm.r".
Type : به عنوان مثال، X Location، X Rotation، X Scale.
Mode (Rotation) : برای کانالهای چرخش، نوع دادههای چرخشی مورد استفاده، از جمله دستورات مختلف اویلر صریح را مشخص میکند. استفاده از دستور اویلر هدف به طور پیش فرض. حالتهای کانال چرخش را ببینید.
Space : فضای جهانی، فضای تبدیل، فضای محلی.
مقدار یک کانال Transform را از یک جسم یا استخوان بازیابی می کند.
ID : شناسه شی به عنوان مثال: مکعب، آرماتور، دوربین.
Bone : برای آرماتورها، نام استخوان آرماتور. به عنوان مثال: "Bone"، "Bone.002"، "Arm.r".
Type : به عنوان مثال، X Location، X Rotation، X Scale.
Mode (Rotation) : برای کانالهای چرخش، نوع دادههای چرخشی مورد استفاده، از جمله دستورات مختلف اویلر صریح را مشخص میکند. استفاده از دستور اویلر هدف به طور پیش فرض. حالتهای کانال چرخش را ببینید.
Space : فضای جهانی، فضای تبدیل، فضای محلی.
ویژگی زمینه
مقدار خاصیتی را ارائه می دهد که به طور ضمنی به یک صحنه یا یک لایه دید از سیستم انیمیشن ارزیابی فعلی اشاره دارد. این یک مرجع ضعیف است که منجر به پیوند صحنه یا لایه نمایشی که از درایور ارجاع داده شده است، هنگام پیوند داده های انیمیشن نمی شود.
مثال زمانی که چنین ویژگی هایی وارد بازی می شوند، اشاره به تغییر شکل دوربین فعال است. این امکان وجود دارد که یک درایور را در یک فایل کاراکتر تنظیم کنید، و زمانی که کاراکتر به یک مجموعه مرتبط است، راننده را مجبور به استفاده از دوربین تنظیم کنید.
Context : Active Scene, Active View Layer.
RNA Path : نام RNA ویژگی، بر اساس زیرمجموعه ای از نحو دسترسی ویژگی پایتون. به عنوان مثال: camera.location.x یا camera.location[0] برای مقدار کانال انیمیشن مکان دوربین X (قبل از والدین یا محدودیت ها)، یا ["prop_name"] برای یک ویژگی سفارشی
Fallback : اگر فعال باشد، به جای ایجاد خطا در ارزیابی درایور، امکان تعیین یک مقدار بازگشتی را برای استفاده به عنوان مقدار متغیر در صورتی که مسیر RNA قابل حل نباشد، می دهد.
مقدار خاصیتی را ارائه می دهد که به طور ضمنی به یک صحنه یا یک لایه دید از سیستم انیمیشن ارزیابی فعلی اشاره دارد. این یک مرجع ضعیف است که منجر به پیوند صحنه یا لایه نمایشی که از درایور ارجاع داده شده است، هنگام پیوند داده های انیمیشن نمی شود.
مثال زمانی که چنین ویژگی هایی وارد بازی می شوند، اشاره به تغییر شکل دوربین فعال است. این امکان وجود دارد که یک درایور را در یک فایل کاراکتر تنظیم کنید، و زمانی که کاراکتر به یک مجموعه مرتبط است، راننده را مجبور به استفاده از دوربین تنظیم کنید.
Context : Active Scene, Active View Layer.
RNA Path : نام RNA ویژگی، بر اساس زیرمجموعه ای از نحو دسترسی ویژگی پایتون. به عنوان مثال: camera.location.x یا camera.location[0] برای مقدار کانال انیمیشن مکان دوربین X (قبل از والدین یا محدودیت ها)، یا ["prop_name"] برای یک ویژگی سفارشی
Fallback : اگر فعال باشد، به جای ایجاد خطا در ارزیابی درایور، امکان تعیین یک مقدار بازگشتی را برای استفاده به عنوان مقدار متغیر در صورتی که مسیر RNA قابل حل نباشد، می دهد.
اسکریپت بیان - مدار یک نقطه
با یک عبارت Scripted سفارشی، موقعیت یک شی را به دور یک نقطه بچرخانید. موقع تمیز کردن جدول زمانی، موقعیت شی تغییر خواهد کرد. با استفاده از مثلثات می توان حرکت دایره ای را به صورت دو بعدی با استفاده از توابع سینوسی و کسینوس تعریف کرد.در این مثال، فریم فعلی به عنوان متغیری که حرکت را القا می کند استفاده می شود. frame یک عبارت ساده است که با bpy.context.scene.frame_current مطابقت دارد.
یک درایور به ویژگی X Location اضافه کنید.
نوع درایور را روی Scripted Expression تنظیم کنید.
عبارت 0 + (sin(frame / 8) * 4) را اضافه کنید، جایی که:
frame/8 : فریم فعلی انیمیشن است که بر 8 تقسیم می شود تا سرعت مدار کاهش یابد
(sin( )*4) : حاصل sin(frame/8) را در 4 برای دایره بزرگتر ضرب می کند.
0 + : برای کنترل افست به نقطه مرکز مدار استفاده می شود.
یک درایور به ویژگی Y Location با عبارت 0 + اضافه کنید (cos(frame / 8) * 4)
جدول زمانی را پاک کنید تا اثر را ببینید. برای کنترل اندازه و مرکز مدار، متغیرها را آزمایش کنید
با یک عبارت Scripted سفارشی، موقعیت یک شی را به دور یک نقطه بچرخانید. موقع تمیز کردن جدول زمانی، موقعیت شی تغییر خواهد کرد. با استفاده از مثلثات می توان حرکت دایره ای را به صورت دو بعدی با استفاده از توابع سینوسی و کسینوس تعریف کرد.در این مثال، فریم فعلی به عنوان متغیری که حرکت را القا می کند استفاده می شود. frame یک عبارت ساده است که با bpy.context.scene.frame_current مطابقت دارد.
یک درایور به ویژگی X Location اضافه کنید.
نوع درایور را روی Scripted Expression تنظیم کنید.
عبارت 0 + (sin(frame / 8) * 4) را اضافه کنید، جایی که:
frame/8 : فریم فعلی انیمیشن است که بر 8 تقسیم می شود تا سرعت مدار کاهش یابد
(sin( )*4) : حاصل sin(frame/8) را در 4 برای دایره بزرگتر ضرب می کند.
0 + : برای کنترل افست به نقطه مرکز مدار استفاده می شود.
یک درایور به ویژگی Y Location با عبارت 0 + اضافه کنید (cos(frame / 8) * 4)
جدول زمانی را پاک کنید تا اثر را ببینید. برای کنترل اندازه و مرکز مدار، متغیرها را آزمایش کنید
تابع سفارشی - مقدار مربع
یک تابع سفارشی ایجاد کنید تا مربع یک مقدار (یعنی value2) را بدست آورید. افزودن تابع به فضای نام درایور امکان استفاده از عبارات درایور را فراهم می کند. فضای نام درایور فهرستی از توابع داخلی برای استفاده در عبارات درایور و همچنین ثابت هایی مانند π و e دارد. این موارد را می توان از طریق کنسول پایتون بررسی کرد:
bpy.app.driver_namespace[' <tab>
acos']
acosh']
asin']
asinh']
atan']
...
برای افزودن یک تابع جدید به فضای نام درایور، خود تابع باید پیاده سازی شود و سپس به bpy.app.driver_namespace اضافه شود.
یک تابع سفارشی ایجاد کنید تا مربع یک مقدار (یعنی value2) را بدست آورید. افزودن تابع به فضای نام درایور امکان استفاده از عبارات درایور را فراهم می کند. فضای نام درایور فهرستی از توابع داخلی برای استفاده در عبارات درایور و همچنین ثابت هایی مانند π و e دارد. این موارد را می توان از طریق کنسول پایتون بررسی کرد:
bpy.app.driver_namespace[' <tab>
acos']
acosh']
asin']
asinh']
atan']
...
برای افزودن یک تابع جدید به فضای نام درایور، خود تابع باید پیاده سازی شود و سپس به bpy.app.driver_namespace اضافه شود.
بخش کد نویسی
موارد زیر را به ویرایشگر متن داخل Blender اضافه کنید و Run Script را فشار دهید
یک درایور با یک عبارت Scripted مانند مربع (فریم) اضافه کنید.
نمونه های تابع سفارشی بیشتری در قالب های ویرایشگر متن Blender ‣ Python ‣ درایور توابع موجود است. از آنجایی که Simple Expressions نمی تواند به توابع سفارشی دسترسی داشته باشد، استفاده از آنها فقط برای محاسبات پیچیده منطقی است.
موارد زیر را به ویرایشگر متن داخل Blender اضافه کنید و Run Script را فشار دهید
import bpy
def square(val):
"""Returns the square of the given value"""
return val * val
# Add function to driver_namespace.
bpy.app.driver_namespace['square'] = square
یک درایور با یک عبارت Scripted مانند مربع (فریم) اضافه کنید.
نمونه های تابع سفارشی بیشتری در قالب های ویرایشگر متن Blender ‣ Python ‣ درایور توابع موجود است. از آنجایی که Simple Expressions نمی تواند به توابع سفارشی دسترسی داشته باشد، استفاده از آنها فقط برای محاسبات پیچیده منطقی است.
مشاهده جستجوی ویژگی لایه
Node Attribute Material در حالت View Layer به طور خودکار ویژگی ویژگی را در چندین مکان جستجو می کند. این، برای مثال، میتواند به تنظیم مقدار مشخصی از ویژگی سفارشی در سطح صحنه یا جهان اجازه دهد و سپس آن را بهطور متفاوت برای یک لایه مشاهده لغو کند.
ویژگیهای زمینه درایورها این رفتار را اجرا نمیکنند، بنابراین در صورت لزوم باید به صورت دستی از طریق مقادیر بازگشتی و یک عبارت شرطی شبیهسازی شود (شرایط عبارتاند از Simple Expression).
برای یک ویژگی به نام attr، گره شش مسیر RNA زیر را به ترتیب امتحان می کند:
["attr"] in the active View Layer (custom property).
attr in the active View Layer (built-in property).
["attr"] in the active Scene.
attr in the active Scene.
world["attr"] in the active Scene.
world.attr in the active Scene.
بسته به ویژگی خاص، ممکن است فقط زیر مجموعه ای از این مکان ها را بررسی کنید. به عنوان مثال، تصویر سمت راست نحوه دسترسی به یک ویژگی را نشان می دهد که مشخص است قطعاً یک ویژگی سفارشی با مقدار رنگ است.
Node Attribute Material در حالت View Layer به طور خودکار ویژگی ویژگی را در چندین مکان جستجو می کند. این، برای مثال، میتواند به تنظیم مقدار مشخصی از ویژگی سفارشی در سطح صحنه یا جهان اجازه دهد و سپس آن را بهطور متفاوت برای یک لایه مشاهده لغو کند.
ویژگیهای زمینه درایورها این رفتار را اجرا نمیکنند، بنابراین در صورت لزوم باید به صورت دستی از طریق مقادیر بازگشتی و یک عبارت شرطی شبیهسازی شود (شرایط عبارتاند از Simple Expression).
برای یک ویژگی به نام attr، گره شش مسیر RNA زیر را به ترتیب امتحان می کند:
["attr"] in the active View Layer (custom property).
attr in the active View Layer (built-in property).
["attr"] in the active Scene.
attr in the active Scene.
world["attr"] in the active Scene.
world.attr in the active Scene.
بسته به ویژگی خاص، ممکن است فقط زیر مجموعه ای از این مکان ها را بررسی کنید. به عنوان مثال، تصویر سمت راست نحوه دسترسی به یک ویژگی را نشان می دهد که مشخص است قطعاً یک ویژگی سفارشی با مقدار رنگ است.
شکل درایورهای کلیدی
بهبود تغییر شکل مش
مشکلات تقاطع را که هنگام استفاده از آرماتورها و رنگ آمیزی وزن رخ می دهد، به ویژه در مفاصل برطرف کنید. از کلیدهای شکل نیز می توان برای اصلاح و اصلاح یک دکل استفاده کرد، به عنوان مثال برای پیشنهاد تشکیلات عضلانی. در این مثال، یک کلید شکل برای بهبود تغییر شکل در آرنج یک بازوی ابتدایی استفاده شده است
سمت چپ: تغییر شکل مش اسکلتی بدون اصلاح. راست: کلید شکل اصلاحی اعمال شد
بهبود تغییر شکل مش
مشکلات تقاطع را که هنگام استفاده از آرماتورها و رنگ آمیزی وزن رخ می دهد، به ویژه در مفاصل برطرف کنید. از کلیدهای شکل نیز می توان برای اصلاح و اصلاح یک دکل استفاده کرد، به عنوان مثال برای پیشنهاد تشکیلات عضلانی. در این مثال، یک کلید شکل برای بهبود تغییر شکل در آرنج یک بازوی ابتدایی استفاده شده است
سمت چپ: تغییر شکل مش اسکلتی بدون اصلاح. راست: کلید شکل اصلاحی اعمال شد
Media is too big
VIEW IN TELEGRAM
یک مثال کلی از کارکرد driver و shape key :
در این مثال shape key توسط driver مقادیر آن ها کنترل میشود یعنی با فرمول نویسی ساده در پنل درایور و استفاده از شکل دایره ها بعنوان مقدار وقتی که دایره در موقعیت داخلی x خود حرکت کند مقدار shape key هم تغییر خواهد کرد
در این مثال shape key توسط driver مقادیر آن ها کنترل میشود یعنی با فرمول نویسی ساده در پنل درایور و استفاده از شکل دایره ها بعنوان مقدار وقتی که دایره در موقعیت داخلی x خود حرکت کند مقدار shape key هم تغییر خواهد کرد