تحتوي حاويات واجهة المستخدم داخل اللعبة على GuiObjects التي تريد عرضها داخل عالم لعبتك ثلاثي الأبعاد.
- يسمح SurfaceGui بعرض كائنات واجهة المستخدم على سطح جزء في العالم ثلاثي الأبعاد مع السماح أيضًا بحدوث تفاعل أساسي مع المستخدم.
- BillboardGui هو حاوية لكائنات واجهة المستخدم لتظهر في الفضاء ثلاثي الأبعاد ولكنها تواجه الكاميرا دائمًا.
واجهة المستخدم السطحية
على غرار Decals و Textures، فإن كائنات واجهة المستخدم مثل TextLabels و ImageLabels المرتبطة بـ SurfaceGui تواجه نفس الاتجاه مثل السطح الذي توجد عليه، ويمكن تعديل ذلك من خلال خاصية SurfaceGui.Face.

لتطبيق SurfaceGui على BasePart داخل اللعبة، ما عليك سوى ربطه بذلك الجزء وتعيين خاصية SurfaceGui.Face. ستظهر كائنات واجهة المستخدم الفرعية بعد ذلك على ذلك الوجه من الجزء الرئيسي.


بدلاً من ذلك، يمكنك وضع SurfaceGui داخل حاوية مثل StarterGui ثم تعيين خاصية Adornee إلى أي BasePart، بالإضافة إلى الوجه المستهدف Face. تعيين Adornee يتجاوز الارتباط المباشر بالأب، مما يسمح بمزيد من المرونة في الترتيب حيث يمكن تعيينه من خلال سكربت أثناء وقت التشغيل.


الحجم والموقع
تشغل "لوحة القماش" لـ SurfaceGui كامل Face للجزء الرئيسي أو الجزء Adornee. كأفضل ممارسة، يُوصى باستخدام قيم النسبة لـ الحجم و الموقع لكائنات واجهة المستخدم الفرعية مثل ImageLabels. يمكنك أيضًا تطبيق UIAspectRatioConstraint على الأطفال من SurfaceGui للحفاظ على نسبة العرض إلى الارتفاع المرغوبة بغض النظر عن حجم الوجه.
وضع الحجب
تحدد خاصية AlwaysOnTop ما إذا كانت SurfaceGui ستظهر فوق المحتوى ثلاثي الأبعاد أو ستُحجب بواسطةه. عند تعيينها إلى false (افتراضي)، تظهر SurfaceGui مثل المحتوى ثلاثي الأبعاد الآخر وتُحجب بواسطة كائنات ثلاثية الأبعاد أخرى. عند تعيينها إلى true، تظهر دائمًا فوق المحتوى ثلاثي الأبعاد ولا تتأثر بـ السطوع/الضوء في البيئة ثلاثية الأبعاد.
تأثير السطوع والضوء
تعمل Brightness و LightInfluence معًا لتحديد كيفية تأثير الضوء البيئي على محتوى واجهة المستخدم لـ SurfaceGui.
تحدد Brightness العامل الذي يتم من خلاله ضبط الضوء المنبعث في نطاق من 0 إلى 1000، مما يتيح لك مطابقة SurfaceGui مع بيئتها. على سبيل المثال، يمكن زيادة سطوع لوحة الفيديو داخل غرفة مظلمة عن طريق زيادة Brightness إلى 10.
تتحكم LightInfluence في مدى تأثير الإضاءة في المكان على SurfaceGui، في نطاق من 0 إلى 1. تعيين هذا إلى 1 يعني أن الإضاءة المحيطة تتحكم تمامًا في المظهر، بينما تعيينه إلى 0 يعني أن الإضاءة ليس لها تأثير.

رؤية المسافة
تتحكم MaxDistance في مدى بُعد الكاميرا عن SurfaceGui قبل أن تتوقف عن العرض. تعني القيمة 0 أنه لا يوجد حد وستظهر بلا حدود. القيمة الافتراضية 1000 تعمل بشكل جيد في معظم الحالات.
بالنسبة لـ SurfaceGuis التي تظهر في الهواء الطلق، يُوصى بأن تكون MaxDistance مرتفعة بما يكفي لضمان أن واجهة المستخدم للحاوية صغيرة بما فيه الكفاية على الشاشة عند ظهورها أو اختفائها، مما يقلل من تأثير الظهور المفاجئ.
ترتيب العرض
إذا كانت هناك عدة حاويات SurfaceGui على نفس الوجه، يمكنك طبقتها حسب Z‑index من خلال خاصية ZOffset (تغيير ذلك لا "يرفع" أو "يغمر" الحاوية بصريًا من السطح).
واجهة المستخدم الإعلانية
تظهر حاوية BillboardGui كائنات واجهة المستخدم في الفضاء ثلاثي الأبعاد ولكن، على عكس SurfaceGui، فإن الأطفال من BillboardGui يواجهون دائمًا الكاميرا. هذه الحاوية مفيدة لعرض المعلومات المواجهة للأمام فوق كائنات اللعبة مثل عدادات الصحة أو الأسماء فوق شخصيات اللاعبين، وعلامات لتوجيه اللاعبين إلى كائن في العالم ثلاثي الأبعاد، والمزيد.

لربط BillboardGui بـ BasePart داخل اللعبة أو Attachment، ما عليك سوى ربطه بذلك الجزء أو التعلق، وإذا رغبت، قم بضبط الحجم/الموقع.


بدلاً من ذلك، يمكنك وضع BillboardGui داخل حاوية مثل StarterGui ثم تعيين خاصية Adornee إلى أي BasePart أو Attachment. توفر هذه الطريقة مزيدًا من المرونة في الترتيب حيث يمكن تعيين Adornee من خلال سكربت أثناء وقت التشغيل، على سبيل المثال لوضع BillboardGui فوق رأس شخصيات اللاعبين أثناء وقت التشغيل.
الحجم والموقع
بالنسبة لحجم الإعلانات، تحدد مكونات النسبة من خاصية Size حجم الإعلانات في الفضاء ثلاثي الأبعاد. على سبيل المثال، تعيين {10, 0},{2, 0} (UDim2.fromScale(10, 2)) يشكل إعلانًا بنسبة عرض إلى ارتفاع 10:2 يتوسع أو يتقلص حسب المسافة من الكاميرا.
بالنسبة للموقع، تقوم خاصية StudsOffset بتحريك لوحة الإعلانات على المحور X (يسار/يمين)، المحور Y (أعلى/أسفل)، والمحور Z (أمام/خلف) بالنسبة للكاميرا.
وضع الحجب
تحدد خاصية AlwaysOnTop ما إذا كانت BillboardGui ستظهر فوق المحتوى ثلاثي الأبعاد أو ستُحجب بواسطةه. عند تعيينها إلى false (افتراضي)، تظهر BillboardGui مثل المحتوى ثلاثي الأبعاد الآخر وتُحجب بواسطة كائنات ثلاثية الأبعاد أخرى. عند تعيينها إلى true، تظهر دائمًا فوق المحتوى ثلاثي الأبعاد ولا تتأثر بـ السطوع/الضوء في البيئة ثلاثية الأبعاد.
تأثير السطوع والضوء
تعمل Brightness و LightInfluence معًا لتحديد كيفية تأثير الضوء البيئي على محتوى واجهة المستخدم لـ BillboardGui.
تحدد Brightness العامل الذي يتم من خلاله ضبط الضوء المنبعث في نطاق من 0 إلى 1000، مما يتيح لك مطابقة BillboardGui مع بيئتها. على سبيل المثال، يمكن زيادة سطوع لوحة الفيديو داخل غرفة مظلمة عن طريق زيادة Brightness إلى 10.
تتحكم LightInfluence في مدى تأثير الإضاءة في المكان على BillboardGui، في نطاق من 0 إلى 1. تعيين هذا إلى 1 يعني أن الإضاءة المحيطة تتحكم تمامًا في المظهر، بينما تعيينه إلى 0 يعني أن الإضاءة ليس لها تأثير.

رؤية المسافة
تتحكم MaxDistance في مدى بُعد الكاميرا عن BillboardGui قبل أن تتوقف عن العرض. تعني القيمة 0 أو inf (افتراضي) أنه لا يوجد حد وستظهر بلا حدود.