سلام برای فعالیت در این زمینه ها نرم افزار های افترافکت و تری دی مکس کاملا...
معرفی Houdini Engine
نگاهی به تکنولوژی Houdini Engine

باسلام خدمت شما دوستان عزیز. امروز قصد داریم تا به معرفی قابلیت Houdini Engine بپردازیم. در مطلب (شبیه سازی به سبک هودینی) توسط ناصر اسلامی، عملکرد و ویژگی های نرم افزار Houdini معرفی شد. حال ارتباطی بین هودینی و سایر نرم افزارها بوجود آمده است که توسط Houdini Engine این ارتباط میسر می شود.
Houdini Engine چیست ؟
Houdini Engine اجازه می دهد تا فناوری و تکنولوژی های نرم افزار هودینی بصورت یکجا و یکپارچه در هر برنامه ای مورد استفاده قرار گیرد. این یک API است که اجازه می دهد فایل های Digital Asset بصورت مستقیم در داخل برنامه میزبان مورد استفاده قرار گیرد. با انجام این کار، Houdini Engine به هنرمندان و کاربران اجازه می دهد تا اهرم قدرت نرم افزار هودینی بطور مستقیم داخل هر محیط بکار گرفته شود. از نظر فنی، Houdini Engine برای سازگاری Binary (باینری) طراحی شده است، بطوری که قادر است در یک برنامه میزبان حتی اگر کامپایلر و یا نسخه ها انتخاب شود، مطابقت نداشته باشد. مثلا Houdini Engine می تواند مدیریت در هر دو محیط را ادغام نماید (مانند .Net) همچنین بعنوان C++ برنامه های کاربردی بومی. در نهایت Houdini Engine برای یادگیری آسان است، این یک API سبک است که به راحتی می توان توسط هر کسی با یک Background معقول در برنامه نویسی سه بعدی، برداشت.
معماری کلی Houdini Engine
Houdini Engine یک (ABI (Application Binary Interface یا همان برنامه رابط کاربری، بکار گرفته است، در اصل مجموعه ای از توابع C است. این رابط کاربری با سازگاری باینری در ذهن انتخاب شد. این عمل براساس دسته شناسه عدد صحیح (Integer) نگاشته شده است و اشیاء دیگر آن را از طرف کاربر ایجاد کرده است. هنگامی که Engine در داخل یک برنامه میزبان نمونه است، یک Session کامل از هودینی آن را ایجاد کرده، با یک صحنه و شبکه های گره ای بطور مستقیم در برنامه میزبان کامل می شود.
انتزاع عمومی داخل Houdini Engine در حال حاضر 4 سطح را شامل می شود :
- Assets
- Objects
- Geos
- Parts
Asset چیست ؟
در بالاترین سطح ما Asset را داریم، Asset یک رابط کاربری است که شما می توانید پرس و جو (Query) و مجموعه ای در قالب پارامترها را داشته باشید. Asset شامل اتصالات ورودی/خروجی که توسط نوع داده ها طبقه بندی شده است. هر Asset یک یا چند شی دارد. Objectها که شامل Asset است یک تطابق یک به یک با گره های Object داخل هودینی دارد. برای کسانی که با هودینی ناآشنا هستند، شما می توانید از یک Object بعنوان یک متخصص دگرگون کردن که دارای خواص سفارشی است، در نظر بگیرید (بعنوان مثال نمایش دادن یک نور) علاوه بر خواص دگرگونی استاندارد T.R.S
اشیاء Houdini Engine شامل یک یا چند Geos هستند. برای کسانی که با هودینی آشنا هستند، Geos یک تطابق یک به یک SOP node داخل هودینی دارد. شکل زیر یک نمودار برای نشان دادن مفاهیم معماری Houdini Engine است.

خب تا اینجا یک تعریف کلی از Houdini Engine داشتیم و بعد از اون بطور کامل به بررسی معماری کلی این Engine و همچنین مفهوم Asset پرداختیم و در شکل بالا، بطور کامل شماتیک این معماری مشخص است. حال به نحوه کارکرد این Engine می پردازیم که به چه شکل می توانیم فایل هایی از نوع Asset تولید کنیم و در نرم افزارهای دیگر مدیریت نماییم.
در هودینی شبکه ای از node ها یا همان گره ها به راحتی می توانند در قالب فایل Digital Asset به اصطلاح Wrapped یا پیچیده شوند، سپس توسط هنرمندان به اشتراک گذاشته شود. ابتدا به نحوه و چگونگی ساخت فایل Digital Asset می پردازیم. در نرم افزار هودینی شروع به ساخت Object می کنیم و هر عملیاتی که مورد نظر است را بر روی Object اعمال می کنیم. این Object و پارامترهای آن می تواند در قالب یک فایل Digital Asset به نرم افزارهای دیگر از طریق Engine منتقل شود و همان مدیریت را به همراه تمامی پارامترها در آن نرم افزار داشته باشیم. در نهایت پس از ساخت Object و اعمال تغییرات بر روی آن توسط پنجره Create New Digital Asset شروع به ساخت یک فایل Asset می نماییم.

فایلهای Digital Asset با پسوند otl ذخیره می شوند تا Engine مرتبط در نرم افزار مورد نظر گشوده شود. همکاری نرم افزار هودینی با سایر نرم افزارهای سه بعدی از طریق همین فایل Digital Asset می تواند امکانپذیر باشد. یکی از ویژگی های شگفت انگیز فایلهای Digital Asset این است که در هنگام ذخیره سازی می توانیم پارامترهای موجود Object و همچنین پارامتر اصلاحگرهای اعمال شده را به فایل Digital Asset منتقل کنیم. کاربرد افزودن پارامترهای Object به فایل Asset آسان است که در نرم افزارهای دیگر اگر بخواهیم از این فایل Asset استفاده کنیم، می توانیم به پارامترهای این Object دسترسی داشته باشیم، یعنی همانند این است که در هودینی این دسترسی ها را داریم. این نکته را اضافه کنم که فایلهای Digital Asset در مرحله اول ساخته می شوند قادر به ویرایش و آپدیت کردن می باشد و به راحتی می توانیم پارامترهای جدیدی را به فایل اضافه نمائیم.

پلاگین های Houdini Engine
از ویژگی های بوجود آمدن Houdini Engine آن است که ارتباط بین هودینی و سایر نرم افزارها را با هم برقرار سازد. می توانیم در هودینی شبیه سازی هایی را بوجود آوریم و در قالب فایل Digital Asset همراه با تمامی پارامترهای کنترلی Object ذخیره کنیم. حال برای استفاده از این فایلهای Digital Asset نیازمند پلاگین هایی برای نرم افزارها هستیم که از این فایل پشتیبانی کند و بتواند آن را بارگذاری نماید. پلاگین های موجود Houdini Engine تا الان برای نرم افزارهای Maya و Unity از طرف شرکت SideFX منتشر شده است و برای نرم افزارهای 3ds Max، Cinema 4D، Unreal از واژه Coming Soon استفاده کرده است که احتمالا بعد از تابستان سال جاری منتشر شود.
در این قسمت به بررسی پلاگین Houdini Engine برای نرم افزار Maya می پردازیم. فایلهای Asset می توانند در نرم افزار Maya با کنترل پارامترهای موجود بارگذاری شوند. نتیجه آن، این است که می توانیم به دستکاری فایل در محیط مایا بپردازیم و بعنوان بخشی از یک صحنه مایا آن را Render کنیم. هر زمان یک پارامتر فایل Asset تغییر کند، Houdini Engine آن را Cook شبکه ای از گره ها و انتشار نتایج در مایا نامگذاری می کند. این عمل اجازه می دهد تا یکپارچه سازی عمیق بین فایلهای Asset هودینی و نرم افزار مایا بوجود آید.

در هنگام نصب Houdini Engine تیک گزینه مربوط به پلاگین نرم افزار Maya را بزنید تا نصب شود و پس از باز کردن نرم افزار Maya در قسمت Plug-in Manager می توانید Houdini Engine را فعال سازید و در ماژول Modeling، منویی تحت عنوان Houdini Engine بوجود می آید که می توانیم از آن منو و توسط گزینه Load Asset فایلهای ایجاد شده در هودینی را در Maya بارگذاری نماییم.

برای درک بهتر عمل ساخت فایل Digital Asset در نرم افزار هودینی و بارگذاری آن توسط پلاگین Houdini Engine در نرم افزار Maya، ویدیوی زیر را تماشا کنید.
مشخصات
مدت زمان : 8 دقیقه و 2 ثانیه
زبان : انگلیسی
کیفیت : 720p - HD
حجم : 23 مگابایت
فایلهای Digital Asset را می توانیم در صحنه به Object های دلخواه اعمال کنیم و پارامترهای آن را تغییر دهیم. همچنین می توانید فایلهای آماده Digital Asset را از سایت SideFX دانلود کنید.
خب تا اینجا به بررسی Houdini Engine پرداختیم و گفتیم که می توانیم ارتباط بین هودینی و سایر نرم افزارهای تحت پشتیبانی را از طریق فایلهای Digital Asset برقرار سازیم. نحوه ساخت این فایلها در ویدیو بالا وجود داره و بعد از اون می توانید از طریق پلاگین های این Engine به نرم افزار 3D همراه با پارامترها منتقل سازید. در پروژه های گروهی و در شبیه سازی های واقع گرایانه میتونه بسیار مفید واقع بشه. قصد داشتم فقط به معرفی پلاگین Houdini Engine برای نرم افزار Maya بپردازم ولی خب معرفی ابتدایی این Engine لازمه معرفی پلاگین هایش است.
از ناصر اسلامی عزیز بخاطر همکاریشون تشکر میکنم. منتظر نظرات، انتقادات و بحث و تبادل در رابطه با این Engine از سوی شما عزیزان خواهیم بود.
موفق و موید باشید
نظرات (28)
مصطفی رضایی
زحمت مقاله هودینی انجین رو هم شما کشیدید. فکر کنم از زمان اولین رونماییش حدود یکسالی شد. اگه درست یادم باشه Houdini Engine درست قبل از سیگراف 2013 رونمایی شده بود و اون موقع پلاگینهایی که همراهش معرفی کردن برای نرم افزارهای مایا و یونیتی بود.
حالا بعد از یکسال پلاگین Maya هودینی انجین ارائه شده و قراره سینما فوردی، یونیتی، تری دی مکس و آنریل انجین هم براش بیاد.
توضیحاتت درباره خود هودینی انجین که خیلی خوب بود و ماهایی که کاربر مایا نیستیم باید منتظر ارائه بقیه پلاگین هاش باشیم ...
بازم ممنون و امیدوارم که موفق باشی
پژمان رجبی
دیگه توفیقی بود که برای ما حاصل شد:)
پلاگینش واسه مکس به زوی خواهد آمد و قطعا میتونه زمینه همکاری خوبی بین هودینی ایجاد کنه
مرسی موفق باشید
سعید ابراهیمی
مقاله ی خوبی بود.
به نظرم تبادل بین نرم افزار های 3D هر چی بیشتر بشه بهتره و خیلی از محدودیتها اینطور حذف میشن.
پژمان رجبی
بله قطعا همینطوره و در اینده ای نزدیک خواهیم دید اکثر نرم افزار به سمت ارتباط بین همدیگه خواهند رفت
ناصر اسلامی
پژمان رجبی
این مقاله به دست شما نوشته میشد قطعا بار علمی بیشتری داشت چون شناختت به این نرم افزار از من خیلی بیشتره
بله مثال خیلی خوبی بود و میتونه در زمان صرفه جویی بشه
مرسی ناصر از حضورت
كامبيز محمودي
يك سوال كه البته مرتبط با اين مطلب نيست
آيا شما در مورد نرم افزار Voodoo اطلاعاتي داريد؟
نمي دونيد از كجا ميشه دانلودش كرد ؟
لطفا اين لينك رو ببينيد:
***
با تشكر
رضا
این نرم افزار اختصاصا متعلق به کمپانی rhytem & hues و فقط در دسترس این کمپانی هستش ،
و دنبال لینک دانلود این نرم افزار نباشید .
کامبیز محمودی
البته یه لینک هم در مطلب قبلیم گذاشته بودم که نمی دونم چرا لینک حذف شده!
به هر حال ممنون از توضیحاتتون
اون لینک دقیقا همین مطالب شما رو به صورت فیلم عنوان میکرد
برای همین هم من رو اینطور عاشق خودش کرد
ولی در جواب شما که فرمودید: "این نرم افزار اختصاصا متعلق به کمپانی rhytem & hues و فقط در دسترس این کمپانی هستش ، و دنبال لینک دانلود این نرم افزار نباشید ."
عرض میکنم :
آنچه یافت می نشود آنم آرزوست :)
پوریا
من با Unity کار میکنم و برام خیلی جالب بود که بدونم ابزار هودینی رو چطور در یک موتور بازی سازی میخوان استفاده کنن! یعنی به صورت RealTime میشه از این ابزار استفاده کرد؟ اصلا این ابزار برای یونیتی چی هستند؟
دیدم که نوشتید مجموعه ای از توابع C هست یعنی به صورت Dll عرضه میشه برای یونیتی؟
اگر میشه یکمی بیشتر در مورد کاربرد این نرم افزار قدرتمند در یونیتی توضیح بدید
باتشکر
ناصر اسلامی
موفق باشی
پوریا
کاملا فهمیدم چیشد اما این کار RealTime انجام میشه؟
اگر اینطور باشه واقعا عالی میشه و کاربرد های بسیاری داره
ناصر اسلامی
رسول شاکری.
پژمان رجبی
محسن امیدوار
ممنون پژمان جان .. مطلب جالبی بود ..
موفق باشی
پژمان رجبی
ممنون از حمایت و حضور همیشگیت
علیرضا
دستتون درد نکنه
پژمان رجبی
ایشاا این مقاله براتون مفید بوده و دست کاربر در ساخت Asset باز هستش
موفق باشید
علیرضا
پژمان رجبی
MH Behzadi
پژمان رجبی
omid
بی صبرانه منتظر مقاله ی بعدی درباره ی هودینی هستم
تشکر
پژمان رجبی
مرسی از حضورت
ایشااا این وظیفه میفته به گردن ناصر اسلامی عزیز که کاربران رو با این نرم افزار بیشتر آشنا کنه
موفق باشید
Brock
خیلی تکنولوژی جالبی بود
موفق باشید
پژمان رجبی
ممنون از حضورت
مهدی
من توی نرم افزار هودینی ابجکت میسازم ولی ابجکت دیده نمیشه ولی نوار زرد دورش دیده میشه
بصورت نامرئی حرکت میدم
هر کار هر جایی میرم درست نمیشه
راهکار چیه؟
ایا مشکل از رم یا گرافیکه؟؟؟