معرفی Houdini Engine

در تاریخ سه شنبه, 07 مرداد 1393 در بخش مقالات - معرفی ابزار توسط پژمان رجبی

نگاهی به تکنولوژی 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
 
خب تا اینجا یک تعریف کلی از Houdini Engine داشتیم و بعد از اون بطور کامل به بررسی معماری کلی این Engine و همچنین مفهوم Asset پرداختیم و در شکل بالا، بطور کامل شماتیک این معماری مشخص است. حال به نحوه کارکرد این Engine می پردازیم که به چه شکل می توانیم فایل هایی از نوع Asset تولید کنیم و در نرم افزارهای دیگر مدیریت نماییم.
 
در هودینی شبکه ای از node ها یا همان گره ها به راحتی می توانند در قالب فایل Digital Asset به اصطلاح Wrapped یا پیچیده شوند، سپس توسط هنرمندان به اشتراک گذاشته شود. ابتدا به نحوه و چگونگی ساخت فایل Digital Asset می پردازیم. در نرم افزار هودینی شروع به ساخت Object می کنیم و هر عملیاتی که مورد نظر است را بر روی Object اعمال می کنیم. این Object و پارامترهای آن می تواند در قالب یک فایل Digital Asset به نرم افزارهای دیگر از طریق Engine منتقل شود و همان مدیریت را به همراه تمامی پارامترها در آن نرم افزار داشته باشیم. در نهایت پس از ساخت Object و اعمال تغییرات بر روی آن توسط پنجره Create New Digital Asset شروع به ساخت یک فایل Asset می نماییم.
 
نگاهی به تکنولوژی Houdini Engine
 
فایلهای Digital Asset با پسوند otl ذخیره می شوند تا Engine مرتبط در نرم افزار مورد نظر گشوده شود. همکاری نرم افزار هودینی با سایر نرم افزارهای سه بعدی از طریق همین فایل Digital Asset می تواند امکانپذیر باشد. یکی از ویژگی های شگفت انگیز فایلهای Digital Asset این است که در هنگام ذخیره سازی می توانیم پارامترهای موجود Object و همچنین پارامتر اصلاحگرهای اعمال شده را به فایل Digital Asset منتقل کنیم. کاربرد افزودن پارامترهای Object به فایل Asset آسان است که در نرم افزارهای دیگر اگر بخواهیم از این فایل Asset استفاده کنیم، می توانیم به پارامترهای این Object دسترسی داشته باشیم، یعنی همانند این است که در هودینی این دسترسی ها را داریم. این نکته را اضافه کنم که فایلهای Digital Asset در مرحله اول ساخته می شوند قادر به ویرایش و آپدیت کردن می باشد و به راحتی می توانیم پارامترهای جدیدی را به فایل اضافه نمائیم.
 
نگاهی به تکنولوژی Houdini Engine
 

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

این مطلب را به اشتراک بگذارید :

پژمان رجبی

پژمان رجبی

پژمان رجبی متولد 1371 هستم و در حال حاضر با نرم افزارهای مایا، افترافکت و ادیوس کار میکنم. تمرکز اصلی بنده در زمینه ریگ بندی و انیمیشن مایا و همچنین کار با موتور رندر آرنولد است...

نظرات (28)

  • مصطفی رضایی

    مصطفی رضایی

    07 مرداد 1393 ساعت 07:17 |
    ممنون پژمان جان

    زحمت مقاله هودینی انجین رو هم شما کشیدید. فکر کنم از زمان اولین رونماییش حدود یکسالی شد. اگه درست یادم باشه Houdini Engine درست قبل از سیگراف 2013 رونمایی شده بود و اون موقع پلاگینهایی که همراهش معرفی کردن برای نرم افزارهای مایا و یونیتی بود.
    حالا بعد از یکسال پلاگین Maya هودینی انجین ارائه شده و قراره سینما فوردی، یونیتی، تری دی مکس و آنریل انجین هم براش بیاد.
    توضیحاتت درباره خود هودینی انجین که خیلی خوب بود و ماهایی که کاربر مایا نیستیم باید منتظر ارائه بقیه پلاگین هاش باشیم ...

    بازم ممنون و امیدوارم که موفق باشی
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:24 |
      سلام مصطفی
      دیگه توفیقی بود که برای ما حاصل شد:)
      پلاگینش واسه مکس به زوی خواهد آمد و قطعا میتونه زمینه همکاری خوبی بین هودینی ایجاد کنه
      مرسی موفق باشید
  • سعید ابراهیمی

    سعید ابراهیمی

    07 مرداد 1393 ساعت 09:53 |
    آقای رجبی ممنون.
    مقاله ی خوبی بود.

    به نظرم تبادل بین نرم افزار های 3D هر چی بیشتر بشه بهتره و خیلی از محدودیتها اینطور حذف میشن.
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:25 |
      سلام جناب ابراهیمی
      بله قطعا همینطوره و در اینده ای نزدیک خواهیم دید اکثر نرم افزار به سمت ارتباط بین همدیگه خواهند رفت
  • ناصر اسلامی

    ناصر اسلامی

    07 مرداد 1393 ساعت 10:57 |
    سلام پژمان جان.مقاله عالی بود .می دونی پژمان تو کارهای گروهی بیشتر بچه ها مجبور بودن بین هودینی و سایر نرم افزارها مثل softimage و 3dsmax . . . یکسری کد نویسی ها رو انجام بدند و این کد نویسی ها وظیفه بچه های بود که تو بخش R&D فعالیت می کنند. ولی از این به بعد این ارتباط با Houdini Engine انجام میشه.اگر بخوام یه مثال بزنم به فیلم نوح اشاره می کنم،اگر دقت کرده باشی صحنه ای داریم که پرنده ها به صورت گروهی به سمت کشتی میان اگر پرنده هارو یه نقطه فرض کنی می تونی این حرکتشون رو یه حرکت پارتیکلی بدونی و دوستان تو بخش هودینی شکل حرکت پرندگان رو با هودینی شبیه سازی کردند و در آخر پرندگانی که تو مایا مدل سازی و انیمه شده بودند تو همون مایا به پارتیکل ها اضافه شدند این یه مثال خوب از تعامل این دو نرم افزاره.دوستان دقت کنید بحث این نیست که مایا قادر نبوده این حرکت رو شبیه سازی کنه بحث زمان بوده که به طور مثال هودینی خیلی سریع تر می تونه شمارو به نتیجه برسونه.ممنون پژمان جان.
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:27 |
      درود بر ناصر عزیز
      این مقاله به دست شما نوشته میشد قطعا بار علمی بیشتری داشت چون شناختت به این نرم افزار از من خیلی بیشتره
      بله مثال خیلی خوبی بود و میتونه در زمان صرفه جویی بشه
      مرسی ناصر از حضورت
  • كامبيز محمودي

    كامبيز محمودي

    07 مرداد 1393 ساعت 13:18 |
    با سلام و ممنون از شما
    يك سوال كه البته مرتبط با اين مطلب نيست
    آيا شما در مورد نرم افزار Voodoo اطلاعاتي داريد؟
    نمي دونيد از كجا ميشه دانلودش كرد ؟
    لطفا اين لينك رو ببينيد:
    ***

    با تشكر
    • رضا

      رضا

      08 مرداد 1393 ساعت 00:06 |
      woodoo یک نرم افزار بسیار حرفه ایه که دارای ویژگیهای برجسته ای مثل محیط کاربری سفارشی سازی شده برای انیمیشن ، ریگ بسیار خاص بدون weight painting ، سیستم ماهیچه ، ترک 2d و 3d ، همچنین fur & hair بسیار پیشرفته ، قوی ترین geometry tracking و geo extracting ، و matchmoving و همچنین ابزار های خاص نور پردازی ، look developerment و pre visualization ، شبیه سازی جمعیت ، و ابزار های بسیار حرفه ای مت پینتینگه .
      این نرم افزار اختصاصا متعلق به کمپانی rhytem & hues و فقط در دسترس این کمپانی هستش ،
      و دنبال لینک دانلود این نرم افزار نباشید .
      • کامبیز محمودی

        کامبیز محمودی

        10 مرداد 1393 ساعت 11:07 |
        ممنون
        البته یه لینک هم در مطلب قبلیم گذاشته بودم که نمی دونم چرا لینک حذف شده!
        به هر حال ممنون از توضیحاتتون
        اون لینک دقیقا همین مطالب شما رو به صورت فیلم عنوان میکرد
        برای همین هم من رو اینطور عاشق خودش کرد

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

        عرض میکنم :
        آنچه یافت می نشود آنم آرزوست :)
  • پوریا

    پوریا

    07 مرداد 1393 ساعت 15:58 |
    سلام ممنون از پژمان جان به خاطر مقاله و آقای رضایی بخاطر سایت خوبشون

    من با Unity کار میکنم و برام خیلی جالب بود که بدونم ابزار هودینی رو چطور در یک موتور بازی سازی میخوان استفاده کنن! یعنی به صورت RealTime‌ میشه از این ابزار استفاده کرد؟ اصلا این ابزار برای یونیتی چی هستند؟

    دیدم که نوشتید مجموعه ای از توابع C هست یعنی به صورت Dll عرضه میشه برای یونیتی؟

    اگر میشه یکمی بیشتر در مورد کاربرد این نرم افزار قدرتمند در یونیتی توضیح بدید


    باتشکر
    • ناصر اسلامی

      ناصر اسلامی

      07 مرداد 1393 ساعت 16:27 |
      سلام.دوست عزیز با maya lt کار کردی؟ من از طریق مطلب پژمان باهاش آشنا شدم دیدی یه گزینه داره برای خروجی گرفتن برای یونیتی؟ حالا هودینی با Houdini Engine این کار رو انجام میده،فرض کن مثلا یه در رو تو نرم افزار هودینی می سازی بعد یک سری پارامترهارو مثل طول و عرض براش تعریف می کنی حالا اگر فرمت fbx خروجی بگیری که به صورت یه مدل میاد ولی اگر با Houdini Engine خروجی بگیری برای یونیتی می تونی در رو وارد نرم افزار کنی و همون جا طول و عرضش و کنترل کنی.البته این یه مثال بود
      موفق باشی
      • پوریا

        پوریا

        08 مرداد 1393 ساعت 11:26 |
        ممنون

        کاملا فهمیدم چیشد اما این کار RealTime‌ انجام میشه؟

        اگر اینطور باشه واقعا عالی میشه و کاربرد های بسیاری داره
        • ناصر اسلامی

          ناصر اسلامی

          08 مرداد 1393 ساعت 22:54 |
          منظورتون از ریل تایم چیه؟ من با یونیتی کار نکردم
  • رسول شاکری.

    رسول شاکری.

    07 مرداد 1393 ساعت 18:24 |
    عالی بود..عالی
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:29 |
      ممنون از حضورتون جناب شاکری عزیز
  • محسن امیدوار

    محسن امیدوار

    07 مرداد 1393 ساعت 18:53 |
    سلام
    ممنون پژمان جان .. مطلب جالبی بود ..
    موفق باشی
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:29 |
      سلام محسن جان
      ممنون از حمایت و حضور همیشگیت
  • علیرضا

    علیرضا

    08 مرداد 1393 ساعت 00:00 |
    وای این خیلی خوبه من همیشه از هودینی خوشم میومد و دیده بودم چه دیجیتال است های خوبی میشه باهاش درست کرد و حالا که اینو میبینم دیگه فقط مات و مبهوتم
    دستتون درد نکنه
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:30 |
      سلام علیرضا جان
      ایشاا این مقاله براتون مفید بوده و دست کاربر در ساخت Asset باز هستش
      موفق باشید
  • علیرضا

    علیرضا

    08 مرداد 1393 ساعت 00:55 |
    آقای رجبی با یونیتی هم تعامل داره ؟ تو عکس مطلب یونیتی زدید. اوه مای گاد :دی
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:31 |
      بله با یونیتی ارتباط داره و پلاگینش هم موجوده
  • MH Behzadi

    MH Behzadi

    08 مرداد 1393 ساعت 03:34 |
    بسیار عالی و متشکرم
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:31 |
      ممنون از حضورتون
  • omid

    omid

    08 مرداد 1393 ساعت 23:45 |
    متشکرم
    بی صبرانه منتظر مقاله ی بعدی درباره ی هودینی هستم
    تشکر
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:32 |
      سلام امید جان
      مرسی از حضورت
      ایشااا این وظیفه میفته به گردن ناصر اسلامی عزیز که کاربران رو با این نرم افزار بیشتر آشنا کنه
      موفق باشید
  • Brock

    Brock

    10 مرداد 1393 ساعت 17:12 |
    باتشکر از آقا پژمان
    خیلی تکنولوژی جالبی بود
    موفق باشید
    • پژمان رجبی

      پژمان رجبی

      11 مرداد 1393 ساعت 20:32 |
      سلام Brock عزیز
      ممنون از حضورت
  • مهدی

    مهدی

    06 مهر 1396 ساعت 23:03 |
    سلام
    من توی نرم افزار هودینی ابجکت میسازم ولی ابجکت دیده نمیشه ولی نوار زرد دورش دیده میشه
    بصورت نامرئی حرکت میدم
    هر کار هر جایی میرم درست نمیشه
    راهکار چیه؟
    ایا مشکل از رم یا گرافیکه؟؟؟

نظرتان را بنویسید :

اظهار نظر به عنوان مهمان .

جدیدترین نظرات ثبت شده در بخش بلاگ

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

رضوان پورمرتضی رضوان پورمرتضی 22. آذر, 1397 |

با سلام و درود استاد عزیزم
آرزویی تو دلتون نمونه استاد، مرگ نبینی و 1000 ساله بشی !!! غلام و چاکرت سامان!!!

سید سامان حسینی سید سامان حسینی 22. آذر, 1397 |

خیلی خیلی متشکرم .
ممنون بابت حضورتون .

رضوان پورمرتضی رضوان پورمرتضی 22. آذر, 1397 |

مثل همیشه عالی

mohammad mohammad 22. آذر, 1397 |