محرك مستودع الأسلحة. المقدمة





لذلك ، سوف أخبركم عن محرك ألعاب رائع مثل Armory3D . كتبه وطوره لوبوس لينكو ، وهو مبرمج سلوفاكي. كما كتب Armory Paint ، وهو برنامج لرسم زخارف PBR على نماذج ثلاثية الأبعاد. سأخبرك ما الذي يجعلها رائعة للغاية:



  • المصدر المفتوح (ترخيص zlib)

  • متعدد المنصات (Windows ، Android ، IOS ، Linux ، macOS)

  • مجاني تمامًا (يمكنك التبرع للمؤلف من أجل التنمية).



تمت كتابة المحرك في Haxe و C / C ++ و WebAssembly ، ويأتي كإضافة لـ Blender ، ولكن يتم أيضًا دمج حزم النماذج ثلاثية الأبعاد والرسوم المتحركة الأخرى بسهولة. تم تحسين المحرك للأداء وقابلية النقل وخفة الرمز ، على عكس الوحوش مثل Unity و Unreal و CryEngine وما إلى ذلك.



مكونات المحرك



يتكون المحرك من عدة مكونات سأناقشها أدناه:



  • يجعل. المحرك لديه نظام عرض الحديد الخاص به. يعتمد على تظليل EEVEE / Cycles Blender ، ولكن جزئيًا فقط. فيما يلي قائمة بتلك التي يمكنك استخدامها .

  • نظام البرمجة النصية. تستخدم النصوص في مخزن الأسلحة سمات (ميزة ، سمة) ، جزء من المنطق المرتبط بالكائن (المزيد حوله أدناه)

  • منصة متعددة. يدعم المحرك جميع المنصات الشائعة المتاحة - أجهزة الكمبيوتر (Windows و Linux و macOS) ووحدات التحكم (Xbox One - Series X و PS4 و Nintendo Switch ونظام التشغيل المحمول (Android و IOS).



الآن حول البرامج النصية ، هناك 4 أنواع من البرامج النصية في المحرك:



  1. LogicNodeTraits: هذا هو التناظرية لمخططات لمحرك غير واقعي 4.

  2. صفات Haxe: سمات مكتوبة في Haxe.

  3. سمات اللوحة القماشية: واجهة المستخدم والقوائم والمزيد.

  4.  سمات WASM: السمات المكتوبة في WebAssembly و Rust و C / C ++.



تكنولوجيا المحرك



يستخدم المحرك Iron و KHA و Haxe:



  • حديد . تمت كتابة محرك العرض الداخلي بلغة WebAssembly و KHA و Haxe. قابلة للتطوير بسهولة لأنها معيارية. يتعامل الحديد نفسه مع حاويات التقديم ، بحيث يمكنك كتابة محرك الرسومات الخاص بك بناءً عليه.

  • Haxe. , , , -. . . python lua, c++ . .

  • KHA. SDK   . , . KHA API , . , (Metal, Vulkan, DirectX, WebGL OpenGL). .



لا يحتوي المحرك على مجتمع ضخم مثل Unreal أو Unity ، لكنه مع ذلك يستحق الاهتمام. بعد كل شيء ، فإنه يستخدم جميع التقنيات الحديثة وخفيفة الوزن والوحدات النمطية. يتطور المؤلف تدريجياً ويحسن من بنات أفكاره ، وشيفرة المصدر متاحة للجميع.



التثبيت والتكوين



الآن سوف أخبرك بكيفية تثبيت المحرك وتحديد مستوى الاختبار الأول (في الدرس التالي). قبل أن تبدأ ، تحتاج إلى معرفة كيفية العمل مع Blender - إنها أداتك الرئيسية. إذا لم يكن كذلك ، فهناك دروس كافية على الشبكة. بالأصالة عن نفسي ، يمكنني أن أوصي بدورات من Artem Slakva (ليس إعلانًا أبدًا).



ماذا نحتاج:



  • نسخة مستقرة من Blender (يوصي المؤلف بالإصدار 2.8 ، لأن 2.9 غير مستقر مع المحرك)
  • إضافة إلى Blender على الموقع الرسمي (يأتي المحرك في شكل وظيفة إضافية ، إذا كنت لا تمانع في المؤلف)


التثبيت بسيط جدًا - قم بتنزيل أرشيف المحرك وفك ضغطه. قم بالتثبيت كملحق للخلاط المثبت.  Edit > Preferences… -> Add-ons -> armory.py.



Armory.py موجود في الأرشيف الذي تم فك حزمه. بعد ذلك ، قم بتمكين الوظيفة الإضافية المضافة بعلامة اختيار  Render: Armory Preferences: Add-ons.



الآن تحتاج إلى التحقق مما إذا كان المحرك مثبتًا بشكل صحيح. في علامة التبويب ، Renderتحقق من المسار الذي SDK Path. يجب أن يتوافق مع مكان وجود SDK. على سبيل المثال ، D:\ArmorySDK2011\ArmorySDK,إذا لم يكن الأمر كذلك ، فعند النقر على أيقونة المجلد في نفس المكان ، حدد المسار الذي يتم فيه فك ضغط محركك.





احفظ ملف. blend واضغط على الزر F5 (تشغيل) الموجود على اللوحة Properties > Render > Armory Player. يمكن العثور على مشكلات التثبيت الشائعة هنا .



يتضمن المحرك بالفعل Haxe و Kha ، لذلك لا تحتاج إلى تثبيتهما بشكل منفصل.



محرر الكود



سيقوم Armory تلقائيًا بتثبيت محرر الشفرة "الصحيح". إنه يعمل على النحو التالي: يقوم المحرك بمسح متغيرات IDE المثبتة ، وإذا كان لديك برنامج Visual Studio مثبتًا على سبيل المثال ، فسيكون الإعداد الافتراضي هو VS. إذا لم يكن كذلك ، فسيتم استخدام متغير البيئة لمحرر كود وحدة التحكم. 



يوصي المؤلف بـ Kode Studio





"haxe.executable": "ArmorySDK/Kha/Tools/haxe/haxe-linux64",
"kha.khaPath": "ArmorySDK/Kha",
"krom.kromPath": "ArmorySDK/Krom"


ولكن يمكن استخدام أي محرر: Sublime و Atom و Notepad ++ إلخ. فقط أشر في Code Editor Executableالمسار إلى المحرر الخاص بك.



سيقوم الدرس التالي بإنشاء مستوى الاختبار الأول.



All Articles