Application Error در تریدی مکس چیست و چرا رخ می دهد؟
تا بحال برای شما پیش اومده که در حال کار روی فایل مدلی در تریدی اس مکس بوده باشید و خطای اپلیکیشن ارور بگیرید؟
یا که به محض باز کردن مدل تریدی این خطا داده بشه؟
یا بدتر از اون وقتی که یک مدل رو وارد فضای صحنه خودتون کنید این ارور رو ببینید؟
خطای Application Error در تریدی مکس به این شکل هست:
کلا بعیده که یک تریدی آرتیست در عمر کاری خودش این خطا رو ندیده باشه
پس اگر زیاد با این خطا سر و کار دارید، این مطلب برای شما نوشته شده…
پیام این خطا چیه و چه کاری میکنه؟
وقتی در تریدی مکس خطای Application Error داده میشه، نرم افزار اعلام میکنه که دیگه امکان کار روی فایل شما رو نداره.
با این پیغام به کاربر میگه میتونم یک نسخه از فایل رو قبل از خطا سیو کنم.
اگر روی اوکی کلیک کنید، این نسخه با نام فایل و پسوند recover_ در فولدر autoback پروژه شما ذخیره میشه.
پس اگر فایل از ابتدا این ارور رو داشته باشه، با سیو شدن هم دوباره این ارور رو میده.
خصومت شخصی نرم افزار یا پارادوکس اجرایی، چرایی این خطا و روش های پیشگیری:
اگر در مورد این خطا گوگل کنید، راه حل های بسیاری بهتون داده میشه که شاید بعضی از اونها برای سلامت نرم افزار یا سخت افزار شما خطرناک باشند.
بهترین کار اینه که بدونیم علت این خطا چیه و از اون جلوگیری کنیم.
و از فایل هایی که این خطا رو دارن استفاده نکنیم.
عوامل اصلی Application Error در تریدی مکس به این شرح هستند:
- پارادوکس اجرایی
- اسکریپت کاستوم
- پلاگین متریال سازی
در ادامه، این موارد شرح داده خواهند شد…
علت خطای نرم افزاری چیست؟
هر نرم افزار و برنامه ای با یک یا چند زبان برنامه نویسی نوشته شده تا دستورهای مدنظر کاربر رو به اجرا دربیاره…
هر زبان برنامه نویسی هم اصول و معیارهای خودش رو داره.
پس طبیعی ست که ایجاد تناقض در دستورات داده شده به نرم افزار موجب خطا میشه!
مثال واقعی:
فرض کنید شما یک منشی دارید:
به منشی تون میگید مدیر فنی شرکت رو اخراج کنه!
چند دقیقه بعد ازش میخواهید تا به همون مدیر فنی تسکی رو اعمال کنه!!!
در این حالت شما برای منشی تون یک تناقض ایجاد کردید.
چون شما نمی تونید به کسی که اخراجش کردید تسکی رو محول کنید، می تونید؟
در نرم افزار هم رایج ترین دلیل گرفتن خطا همینه.
گاهی کاربر (بدون اینکه حتی خودش متوجه بشه) یک تناقض در استفاده ایجاد می کنه که خطا داده میشه.
نمیگم تنها علت اپلیکیشن ارور اینه، اما رایج ترین دلیل هست و بهترین راه جلوگیری از اون بالا بردن دانش نرم افزاری.
نمونه پارادوکس Application Error در تریدی مکس:
بیایید ساده ترین خطای اجرایی که یک کاربر مبتدی ممکنه در استفاده از تریدی اس مکس بگیره رو بررسی کنیم:
کاربر ما 1 آبجکت در صحنه میسازه، سپس از اون آبجکت 10 کلون به صورت اینستنس (Instance) ایجاد می کنه.
Instance: یک کپی که هر تغییری روی اون داده بشه دیگر اینستنس ها هم همون تغییر رو دریافت می کنند.
حالا قصد داره یک مودیفایر به آبجکت خودش بده، تمام آبجکت های اینستنس شده رو انتخاب میکنه و مودیفایر رو اعمال می کنه…
بوووووم!!!!! خطای نرم افزاری با موفقیت ایجاد شد :)
چه اتفاقی افتاد؟
اینجا نرم افزار دستور داره وقتی روی یک آبجکت اینستنس، مودیفایر قرار گرفت، اون رو روی 10 تای دیگه هم اعمال کنه.
حالا 10 تا اینستنس دیگه هم، همین دستور رو می گیرن و به نرم افزار میدن و اینجوری میشه که سیکل دستورات توی یک لوپ بزرگ قرار می گیره و این خطا داده میشه.
خطای مربوط به اسکریپت:
خطای اسکریپت زمانی هست که شما فایلی رو باز می کنید و اون از ابتدا این خطا رو میده.
اینجور موارد برمیگرده به اسکریپتی که توی اون فایل بوده.
یعنی زمانی که فایل رو تهیه کردن یک اسکریپت کاستوم روی تریدی اس مکس نوشته شده.
و در زمان سیو این اسکریپت روی فایل مونده.
شما وقتی اون فایل رو در سیستم خودتون باز میکنید، چون اسکریپت موردنظر در نرم افزار شما وجود نداره این خطا داده میشه.
خطای مربوط به پلاگین های “متریال سازی”:
برای مثال شرکت Siger Studio روی کتابخانه های متریالی که میده، فایل دلخواه فرزنل میسازه،
و این فایل ها هنگام نصب کتابخانه، در قسمت پلاگین های تریدی اس مکس ذخیره میشن.
اگر صحنه یا مدلی با این متریال ها ساخته و سیو بشن و با نرم افزار دیگری که این فرزنل های کاستوم رو ندارن، باز بشن، ارور داده خواهد شد.
البته گاهی کاربرهای بسیار حرفه ای هم این خطا رو دریافت می کنند که اغلب به خاطر رم سیستم و موارد مشابه هست.
موارد کمی هم هست که شما فایلی رو باز می کنید و بدون وجود موارد گفته شده، این ارور داده میشه، که احتمالا به تغییرات نرم افزار در ورژن های گوناگون برمیگرده.
نتیجه گیری:
- بهترین راه اینه که اگر در هنگام کار این خطا رو گرفتیم ببینیم چه مسیری رو رفتیم که این خطا داده شده.
- عملکرد خودمون رو همیشه مانیتور کنیم.
- از همه مهمتر اینکه زمان سیو خودکار نرم افزار رو تا جایی که می تونیم کم کنیم.
درسته بعضی مواقع که فایل سنگین میشه، زمان سیو خودکار چند ثانیه ای بیشتر طول می کشه، ولی این کاملا ارزشش رو داره.
نکته مهم:
- از فایل هایی که این خطا رو دارند، دوری کنیم.
- بعضی مدل های رایگان چون اصولی ساخته نشده اند، بعد از مدتی عامل این خطا میشن.
پس یادمون باشه یه مدل هر چقدر هم که خوب بود، اگر شک کردیم تعداد پولیگون غیر استاندارد داره، اون رو استفاده نکنیم.
یا با احتیاط، نظیر روش هایی چون بکار بردن xref در فایل از اونها استفاده کنیم.
همیشه برام سوال بود چرا این اتفاق رو اعصاب میوفته. خیلی جالب بود مرسی
از راهنمای شما بسیار سپاس گذارم . خیلی برای من سازنده بود .
سلامت باشید افشین عزیز