تجميع خاص بمنصة الوحدة

Unity يوفر ميزة تجميع خاصة بالنظام الأساسي تسمح للمطورين بكتابة التعليمات البرمجية التي سيتم تضمينها فقط في الإنشاء لمنصة معينة. تكون هذه الميزة مفيدة عند الحاجة لكتابة تعليمات برمجية خاصة بالمنصة أو تحسين الإصدارات من خلال استبعاد التعليمات البرمجية غير الضرورية لمنصات معينة.

كيفية استخدام التجميع الخاص بالمنصة

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

فيما يلي مثال لكيفية استخدام التحويل البرمجي الخاص بالنظام الأساسي في Unity:

#if UNITY_IOS
    // iOS-specific code
    // This code will only be included in the build for iOS
#elif UNITY_ANDROID
    // Android-specific code
    // This code will only be included in the build for Android
#else
    // Code for other platforms
    // This code will be included in the build for all other platforms
#endif

في هذا المثال، يتم توفير التوجيهات 'UNITY_IOS' و 'UNITY_ANDROID' بواسطة Unity ويمكن استخدامها لتجميع التعليمات البرمجية بشكل مشروط لمنصات iOS وAndroid ، على التوالى. يمكن استخدام التوجيهات الأخرى المتوفرة الخاصة بالمنصة، مثل 'UNITY_EDITOR' (للمحرر Unity)، 'UNITY_STANDALONE' (للإصدارات المستقلة)، 'UNITY_WEBGL' (لإصدارات WebGL)، والمزيد.

#if UNITY_EDITOR
    // Editor-specific code
    // This code will only be included when running in the Unity Editor
    using UnityEditor;
#elif UNITY_STANDALONE
    // Standalone build-specific code
    // This code will only be included when building for standalone platforms (Windows, macOS, Linux)
#elif UNITY_WEBGL
    // WebGL-specific code
    // This code will only be included when building for WebGL
    using UnityEngine.Networking;
#endif

// Shared code that will be included in all builds
public class MyScript : MonoBehaviour
{
    private void Start()
    {
#if UNITY_EDITOR
        Debug.Log("Running in Unity Editor");
#elif UNITY_STANDALONE
        Debug.Log("Running in standalone build");
#elif UNITY_WEBGL
        Debug.Log("Running in WebGL build");
#endif
    }
}

خاتمة

باستخدام التجميع الخاص بالمنصة، يمكن للمطورين كتابة تعليمات برمجية تستفيد من ميزات وإمكانيات كل منصة مع الحفاظ على قاعدة التعليمات البرمجية منظمة ومحسنة لمختلف الأنظمة الأساسية المستهدفة في Unity.