الموضوع يعرّف محرك PhysX بشكل عام وتقني بشكل جزئي حتى يسهل للكل فهم المحرك وفائدته وفعاليته في كروت الشاشة
تاريخ:
عام 2008 شهر فبراير.. استحوذت شركة nvidia على شركة Aegia بهدف
تضمين محرك PhysX في كروت انفيديا.
طرحت انفيديا المحرك لاحقًا على شكل برنامج تثبيت وذلك بعد نزول كروت فئة G80 في الاسواق.
لاحقا.. تم تضمين المحرك مع التعاريف الخاصة بكروت Nvidia.
ما هو محرك Physx؟
هو برنامج توجد به برمجيات وأكواد مسبقة البرمجة, كل برمجية تمثل محاكاة للظواهر الفيزيائية
او الاشياء وعلاقتها بالفيزياء ومصنوعة بطريقة أقرب للواقعية.
-أمثلة:
*انظمة الحركة الواقعية:
يتيح لك تطبيق حركة معينة على شخصية معينة.. مثلا, تقوم برسم قطّة بواسطة برنامج
ثلاثي الابعاد, ثم باستخدام اضافات Physx لهذه البرامج تقوم فقط بتطبيق نظام
حركة الحيوان على الشخصية ثم تتحكم بالمسار الذي تريده ان تمشي اليه.
طبعا مثل هذه الاضافة توجد لها انظمة عدة تقوم بتصدير الحركات إلى البرامج ثلاثية
الابعاد وسبق لي ان عملت على احدها.
*تصميم الاقمشة وتأثرها بالاشياء المحيطية,
حيث نلاحظ عند تطبيق تأثير معيّن على نفس القماش, يقوم بالتمزق او التقلص او الترهل بطريقة
اشبه للواقعية.
* نظام السوائل,
يقوم بمحاكات السوائل بشكل تام اثناء اسنكابها او تدفقها او غيره من العوامل الاخرى الخاصة
بالسوائل,,
*تفاعل الاجسام مع الحوادث,
نرى هذه الخاصية في مشاهد الاصدام او التفاعل, على سبيل المثال لعبة Battlefield:bad
company2, عند ضرب بيت او جدار يقوم بالتفتت والانهدام, او تكسر الزجاج او تطاير
فتات البارود من الاسلحة.
*العوامل البيئية:
الرياح, الغبار, يقوم بمحاكات التأثير على الاجسام, يعني لو عندك خامة قماش وقمت
بتوجيه الرياح لها سوف تتحرك وفق اتجاه الرياح, او جعل الاشجار تتأثر بالرياح من حيث
تمايلها او تكسّر اغصانها.
بالطبع توجد العديد من التطبيقات للظواهر الفيزيائية كالجاذبية, والذوبان, والانصهار, الزلازل... الخ
لكن لا يسعُني ذكرها في الموضوع.. لاحقا في الموضوع سوف أًدرج رابط للمصدر وبعض
التطبيقات التي تعمل بواسطة محرك PhysX حيث يمكنك تجربتها والاستمتاع بالواقعية التي
يحاكيها المحرك.
كيف يعمل محرك PhysX وما علاقته بكروت الشاشة والألعاب؟
مصممي الالعاب, عند صناعتهم او تطويرهم للعبة ما, يواجهون بعض الصعوبات التي تؤخر من
مشاريعهم خصوصا عند انشاء مشاهد معقدة يتطاير فيها الزجاج وجزيئات البارود بشكل
واقعي مجنون...
الان كل ما عليهم سوى تنزيل الحزم الخاصة بالمطورين وإنشاء ما يريدون بواقعية اكثر.
سوعال,ما هو GPU-accelerated PhysX?
هو خاصية تسمح للعبة أن تستفيد من أنوية cuda في كروت Nvidia في تسريع
عملية المعالجة الفيزيائية اي تحويل نواة Cuda الى PPU.. وتعني "Physics
Processing Unit"بدلا من استخدام الطريقة العادية وهي
المعالجة عن طريق GPU او CPU وهي اسرع من المعالجة على CPU -بسبب
تعدد الـ threads في انوية Cuda وعددها الكبير إجمالا لكثرة الانوية خصوصا
في فئة 4XX-وهذا هو سبب جعل الكثيرين ممن يملكون كروت ATI يقومون
بشراء كروت تحتوي على انوية Cuda من أجل تسريع العملية الفيزيائية.
هل محرك PhysX هو المحرك الفيزيائي الوحيد؟
طبعا لا, يوجد العديد من محركات الفيزياء المشهورة والمعروفة.. لكن اشهرها هي ثلاثة:
PhysX.. (يوجد في كروت شركة Nvidia وهو مملوك للشركة منذ عام 200
Havok.. (يوجد في كروت شركة ATI وهو مملوك لشركة Intel منذ عام 200
Bullet.. (تم تطويره على كروت Geforce حيث يقول مصمم المحرك انه ايضا استفاد من
الكروت واستخدم بعض طرق عمل برنامج Physx).
بسبب المنافسة .. مالفرق بين أشهر اثنين؟
Havok .. يقسم المعالجة الفيزيائية إلى قسمين.. قسم Gameplay وتتم معالجته
في الـ GPU.. والقسم الاخر وهو الـ Effects وتتم معالجته في الـ CPU بحيث
لا تؤثر الـ Effects على الـ Gameplay
Physx .. يقوم بإرسال المعالجة الفيزيائية إلى انوية Cuda حيث تعمل كـ PPU بدلا من
استخدام بطاقة مستقلة.
مالذي يميز محرك PhysX عن غيره؟
شهر مارس عام 2008 اعلنت Nvidia عن مفاجأة طرحها للمحرك بمصدره المفتوح
ومجانا. مما جعل العديد من المطوير والشركات واستديوهات الالعاب يقومون باعتماده
وتطويره وتضمينه في محركات العابهم, بسبب قوته ومرونته وتطويره المستمر
من قبل الشركة والمطورين.
معلومات عن الشركات والمطورين والاستديوهات:
*اشهر الشركات التي تستخدم محرك Physx:
طبعا يمكن استخدام المحرك لبرنامج 3d Studio Max وبرنامج Maya الشهيرين حيث توجد
اضافة يتم تثبيتها داخل البرنامج.
يمكن استخدام المحرك لبرنامج XSI الشهير حيث توجد اضافة يتم تثبيتها داخل البرنامج.
يتم استخدام محرك PhysX في المحرك الشهير Unreal Engine المستخدم في بعض
الالعاب المشهورة كلعبة: Unreal Tournament 3 , Meadal of Honor: AirBorn
وغيرها من الالعاب التي لا تحضرني حاليًا.
المزيد من الشركات:
https://developer.nvidia.com/object/physx_partners.html
اشهر استديوهات الالعاب التي تستخدم محرك PhysX:
EA, THQ, 2K Games, Sega
عدد المطورين المسجلين لدى Nvidia:
اكثر من 10,000 مطور.
عدد الالعاب التي تستخدم محرك Physx:
العاب PC وعددها 152 لعبة من اصل 200 لعبة لمختلف الاجهزة.
أخيرا.. ادوات ومصادر للتنزيل والاطلاع: اضغط على الاسم
برنامج محرك PhysX (يجب تنزيله قبل استخدام اي أداة للمطورين)
PhysX Visual Debugger 1.1.9 Installer (يستخدم لصنع المحاكاة الفيزيائية والتعديل عليها)
AgPerfMon/AgPerfHUD (برنامج تفصيلي لكيفية عمل المحرك . "للمحترفين")
الموقع الرسمي للمطورين (يحوي جميع الادوات والدروس الخاصة بالمحرك, مفيد للمحترفين والمبتدئين)
ادوات خاصة بمستخدمي برنامجي 3d Studio Max وبرنامج Maya الغنيين عن التعريف
..................................................
اتمنى ان الموضوع حاز على اعجابكم واستفدتم منه.
- استغرقني 3 ايام للكتابة والتدقيق والتمحيص من العديد من المصادر.
أخوكم ALTayer
المفضلات