إنشاء المستوى في مخزن الأسلحة

مرحبا! في المنشور السابق الذي أخبرتك به عن محرك Armory ، الآن سننشئ مستوانا الأول فيه. في الواقع ، لا يختلف إنشاء المستويات في Armory عمليًا عن العمل في نفس Unreal أو Unity - يمكنك أيضًا استيراد الأصول ، وإنشاء حقك الخاص هناك (هذا هو Blender!) ، وتطبيق مواد وأشياء أخرى. كما ذكرت ، للعمل مع المحرك ، فأنت بحاجة إلى موهبة للعمل مع Blender ، لأن Armory يرتبط ارتباطًا وثيقًا به. لن أخوض في التفاصيل حول كيفية إضافة طائرة أو مكعب أو مصباح إلى المشهد - فقط اعمل مع المحرك. جاهز؟ لنبدأ اذن.

بادئ ذي بدء ، يمكنك تنزيل ملف قالب جاهز ، بناءً عليه ، سنقوم بتحليل ماذا وكيف يعمل. في الأرشيف ، نحتاج إلى playground.blend. نضغط ونجري. الآن دعونا نرى ما هي خيارات التشغيل لدينا.

Armory Player:

  • Runtime:

    • Krom .

    • Browser .

  • Camera:

    • Scene .

    • Viewport, . , .

.

Cube, Cylinder, Ground, Lamp, Wall, Lamp (spot) . (grid_base, grid _rough), . ? .

, , - , , , , F . - Blender. .

, Timeline 1, , I - Rotation . 60 . ,  R   I - Rotation . .

(Cube), Physics Rigid Body. Collision.

Rigid Body :

  • Active , .

  • Passive .

Light, Spot. .

Shader Editor - World. - HDR .

, . Logic Node - blueprints Unreal Engine 4. . Haxe / .

5 :

  • Events - .

  • Actions - (events) .

  • Logic - , , , …

  • Variables - .

  • Values - .

. Logic Editor - New .   Shift - A.

Armory Project > Flags > Debug Console.

Haxe

“F” Haxe. , , (Rigid Body Active). Empty, - .  Haxe traits Properties - Object - Armory Traits. New Script. Kode Studio - .

package arm;

import iron.object.Object;
import iron.system.Input;
import iron.Scene;
import armory.trait.physics.RigidBody;

class SpawnBox extends iron.Trait {
	public function new() {
		super();
		// We want to get notified every frame
		notifyOnUpdate(update);
	}

	function update() {
		// f key was pressed
		if (Input.getKeyboard().started("f")) {
			// Spawn Box object
			Scene.active.spawnObject("Box", null, boxSpawned);
		}
	}

	// Box just got spawned
	function boxSpawned(o:Object) {
		// Translate cube to the location of empty object
		var traitOwner = object;
		o.transform.loc.setFrom(traitOwner.transform.loc);
		// Box object has a rigid body trait
		// Notify physics system to take new location into effect!
		o.getTrait(RigidBody).syncTransform();
	}
}

 Armory . traits.   PhysicsDrag traits. traits .

Armory UI

- Armory UI. UI, Scene, traits UI Armory Traits. New Canvas Edit Canvas - . Armor UI Text . Properties. .

rmory , Render - Armory Render Path . .

بناء ونشر مشروعنا يقع في Properties - Render - Armory Exporter. يمكنك عمل العديد من الإعدادات المسبقة للتصدير ، لكل منها منصة ، وواجهة برمجة تطبيقات ، ومسار ، ومشهد لبدء التشغيل. حدد النظام الأساسي المطلوب (على سبيل المثال Windows) وانقر فوق نشر. يمكن عرض الملفات المصدرة والمجمعة عن طريق النقر فوق المثلث (المميز باللون الأحمر) - فتح مجلد.




All Articles