من خلال شغلي مع فريق تطوير ألعاب، شفت كيف التصميم يتحول إلى واجهة حية. المطورين يعتمدوا على أدوات مثل 'Figma' لتصدير التصاميم، وبعدين ينقلونها إلى 'Unreal's UMG' أو 'Unity's UI'. في الاستوديوهات الكبيرة، عندهم أدوات داخلية - مثلاً في Blizzard، عندهم نظام لتوليد الواجهات ديناميكياً حسب الأحداث داخل اللعبة. أنا شخصياً أفضل المحررات اللي فيها State Machines، لأنها تسهل التعامل مع التفاعلات المعقدة زي تغيير حجم الشاشة أو عرض الإحصائيات. المشكلة الأكبر تكون في تحويل التصميم الثابت إلى واجهة حية، وخصوصاً مع أجهزة متعددة - هذا يحتاج تعاون وثيق بين المصمم والمبرمج.
كل فيديو Behind-the-Scenes يشوف عيوني على عالم جديد. هل المطورين يستخدموا أدوات محددة؟ أيوا، فيه أدوات زي 'Unity UI' و 'Unreal UMG'، وفي أدوات من طرف ثالث مثل 'NoesisGUI' اللي تعطيهم تحكم أكبر. في لعبة 'Celeste'، استخدموا نظام بسيط جداً للواجهة، بينما في 'Destiny 2' عندهم أنظمة معقدة للقوائم والمتجر. أحب أشوف مقاطع يشرحوا فيها كيف يبنوا كل عنصر - مثلاً زر الشبح في 'Ghost of Tsushima' كيف صمموه عشان يظهر ويختفي بسلاسة. هالأدوات تخلي الألعاب أحلى وأسهل للفهم.
مرات بشوف لعبة جديدة وأقول: 'كيف سووا هالواجهة الحلوة؟' طلعت المطورين يستخدموا أدوات خاصة لكل محرك. مثلاً 'Stardew Valley' استخدم HTML/CSS داخل اللعبة عشان يعطي مرونة تصميمية، مع إنه لعبة بيكسل! في ألعاب زي 'Hades'، شفت فيديو كيف استخدموا نظام State Machine للواجهة - كل شاشة تتفاعل مع اللي قبلها بدون تحميل بطيء. الأهم عندي إن الأداة تسمح بتجربة سلسة - مينيماب واضح، أزرار تستجيب بسرعة، وقوائم مرتبة. من غير هالأدوات، كانت الألعاب راح تكون مربكة.
أول ما دخلت مجال تطوير الألعاب، صدمت من عدد الأدوات المتاحة لبناء الواجهات. في Unreal Engine، الأداة الأساسية هي UMG (Unreal Motion Graphics) - بتسمحلك ترسم الواجهة بالسحب والإفلات وتربطها بالمنطق عبر Blueprints. في Unity، في خيارات متعددة مثل 'UI Toolkit' الجديد نسبياً، و NGUI اللي كان شائع زمان، وحتى TextMeshPro للنصوص المتقنة. كل أداة لها فلسفة مختلفة - مثلاً UI Toolkit أفضل مع المشاريع الكبيرة لأنه يعتمد على USS وUXML تشبه CSS و HTML.
بس في الألعاب الضخمة، المطورين يفضلون أدوات مخصصة زي 'Scaleform' اللي كان يستخدمها Rockstar في 'GTA V' للقوائم الديناميكية، أو 'Coherent UI' لدمج واجهات HTML5 داخل المحرك. الفرق بينهم كبير - بعضها يركز على أداء العتاد، وبعضها على سهولة التعديل. أنا مرة اشتغلت على لعبة صغيرة وواجهت مشكلة في تحجيم الأزرار بين الشاشات المختلفة، فاكتشفت إن معرفة نظام 'Anchor Points' و 'Canvas Scaler' في Unity ضروري جداً. الأداة المناسبة تعتمد على نوع اللعبة وتجربة الفريق - فيه ناس يفضلون البساطة، وفيه ناس يبنون نظام كامل من الصفر.
2026-07-16 00:34:09
11
すべての回答を見る
コードをスキャンしてアプリをダウンロード
関連書籍
لعبة المرايا
Alaa issa
10
16.8K
جئتُ إلى العاصمة بحلمٍ واحد.
غادرتُها بجرحٍ لا اسم له.
أخي هو من فتح لي الباب. لكنّها هي من فتحت في صدري ما لم أعرف أنه موجود. نظرةٌ واحدة، ورائحة فانيليا لن أنساها حتى الممات، وعالمي كله انقلب رأساً على عقب.
راما. زوجة أخي.
ثلاث كلمات تكفي لتجعل كل ما أشعر به جريمة.
لم تفعل شيئاً. لم تقصد شيئاً. وهذا — والله — هو الأصعب. لأن الإنسان يستطيع أن يكره المتلاعبة، لكن كيف يكره البريئة؟ كيف يحارب امرأة سلاحها الوحيد أنها لا تعرف أنها تدمّره؟
كنتُ أبني الجدران، فتهدمها بابتسامة.
كنتُ أهرب، فيعيدني عطرها.
كنتُ أقسم أنني أقوى من هذا، فتلمسني يدها بالخطأ وأعود من الصفر.
وحين ظننتُ أن الأمر لا يمكن أن يزداد سوءاً —
اكتشفتُ السر.
سرٌّ عن أخي. عن البيت. عن كل من أحببتُ وثقتُ بهم في هذه الحياة.
ومنذ تلك اللحظة، أصبحتُ أحمل ما يكفي لأحرق الجميع — بمن فيهم أنا.
هل سأصمت وأرى راما تعيش كذبةً لا تستحقها؟
أم سأتكلم وأدمّر كل شيء بيدي؟
وفي الوقت الذي كنتُ أصارع فيه نفسي —
كانت الأقدار تطبخ مفاجأةً لم يكن أحدٌ منّا مستعداً لها.
لعبة المرايا — حين يصبح الصمت أخطر من الاعتراف.
هل سبق أن اتخذت قرارًا ظننت أنه قرارك، ثم اكتشفت لاحقًا أن عقلك هو من خدعك؟
هل تساءلت يومًا لماذا يخاف الناس من أشياء لا وجود لها، أو لماذا يصدقون إشاعة تتكرر، أو كيف تستطيع كلمة واحدة أن تغيّر مستقبل إنسان، أو كيف يمكن لثلاثة أصدقاء أن يعيدوا تشكيل شخصية كاملة؟
"قصص صنعت قواعد نفسية" ليس كتابًا يشرح علم النفس بالطريقة التقليدية، بل يأخذك إلى عالم من القصص المشوقة التي تبدو في بدايتها مجرد أحداث عادية، قبل أن تكشف في نهايتها عن قاعدة نفسية خفية كانت تتحكم في كل شيء منذ اللحظة الأولى.
في كل قصة ستلاحق الأدلة، وتعيش الصراع مع الشخصيات، وتحاول توقع النهاية... لكن المفاجأة الحقيقية ليست فيما يحدث للأبطال، بل فيما ستكتشفه عن نفسك.
قد تجد نفسك في طالب غيّرت كلمة واحدة حياته، أو في شخص صدّق كذبة لأنه سمعها كثيرًا، أو في إنسان قادته عاداته اليومية إلى النجاح أو الفشل دون أن يشعر.
هذا الكتاب لا يمنحك نصائح مباشرة، بل يترك القصص تقوم بالمهمة. ومع كل صفحة ستدرك أن كثيرًا مما اعتقدت أنه "طبيعتك" ليس سوى عادة، وأن كثيرًا مما ظننته "حقيقة" قد يكون مجرد وهم صنعه عقلك.
بعد أن تنتهي من القراءة، لن تنظر إلى الناس... ولا إلى نفسك... بالطريقة نفسها مرة أخرى.
لم تكن "منى" مجرد ساكنة عادية في العمارة التي ورثتها عن عمتي، كانت هي التفصيلة الوحيدة التي تكسر روتين أيامي الباردة رغم حرارة الجو. في الخامسة والعشرين من عمري، وجدت نفسي سيداً لعقار متهالك، وأرواح غريبة تسكنه، لكن روحها كانت الأكثر غموضاً.
كنت أراها كل صباح؛ مدرسة اللغة الإنجليزية الوقورة، بعباءاتها التي تصف أكثر مما تستر، ووجهها الذي يجمع بين براءة القمحاوية واحمرار الخجل المصطنع. كانت علاقتي بها لا تتعدى "صباح الخير" ومطالبات الإيجار المتأخرة، وكنت أظن أن هذا هو سقف الحكاية.
لكن الصيف في القاهرة لا يمر بسلام، والحرارة لا تكتفي بتبخير المياه، بل تبخر العقول أيضاً. في تلك الليلة، وسط دخان سجائري على مقهى في وسط البلد، سحبت هي كرسياً وجلست.. ولم تكن تعلم أنها بسحبة الكرسي تلك، قد سحبت نفسها إلى عالمي الخاص.
لم تكن جلسة صلح على الإيجار المتأخر، بل كانت بداية لدرس من نوع آخر، درس لا يدرّس في الفصول الإعدادية، بل يُمارس خلف الأبواب المغلقة، حيث تسقط الأقنعة، وتتكلم الأجساد بلغة لا تعرف الحياء.
"يا كابتن، ما هذا الشيء الصلب الذي يضغط علي من الأسفل؟"
في مدرسة تعليم القيادة التابعة للكلية، كنت أدرب طالبة مستجدة شابة للحصول على رخصة القيادة.
لم أكن أتوقع أن تلك الطالبة التي تبدو بريئة، ترتدي ملابس مكشوفة، بل وطلبت الجلوس في حضني لأعلمها القيادة ممسكاً بيديها.
طوال الطريق، كبحت رغبتي وعلّمتها بجدية، متجاهلاً تعمدها الاحتكاك بي أو حركاتها العفوية.
ولكن من كان يعلم أنها سترفع قدمها عن القابض بسرعة، مما أدى إلى توقف المحرك فجأة واهتزاز السيارة بعنف.
فسقطت بقوة بين ساقي، ليضغط ذلك المكان تماماً على منطقتها الحساسة.
ولم تكن ترتدي سوى تنورة قصيرة، وتحتها ملابس داخلية رقيقة.
تدور أحداث الرواية في عام 2525، حيث التكنولوجيا قد بلغت اوجها والعالم أصبح مكانًا يتسم بالتجانس المطلق. البشر يعيشون في مجتمعات موحدة حيث الجميع يشبه بعضهم البعض في المظهر والقدرات والأفكار.
دانيال يستيقظ ويتم توجيهه من دكاء صناعي و للذي يعطيه مهام محدد، مع مرور الايام يحس دانيال وجود خطأ في العالم للذي يعيش به وكل الاشياء للتي يقوم بها.
فيصبح عليه فهم ما يحدث ولما وصل العالم الي ما عليه الان
العصور القديمة
بينما كان شابٌ عادي يجلس في حديقة منزله، لمح ضوءاً خافتاً ينبعث من شجرةٍ عتيقة يبلغ عمرها ألف عام. وفجأة، اقترب ليجد باباً قد ظهر على جذعها؛ بابٌ يمثل معبراً بين عالمين مختلفين. جذب الشاب الباب بقوة، فإذا به يدخل عالم العصور القديمة قبل ألف سنة
تاه الشاب في أرجاء المكان وهو في حالة من الدهشة والذهول، وبينما كان يستكشف المنطقة بحذر، حاصره حراس القصر ووجهوا سيوفهم الحادة نحوه. اقتادوه رهينةً إلى السجن، ظناً منهم أنه جاسوسٌ من مملكةٍ عدوة
أحيانًا أجد نفسي منبهرًا بالطرق التي يبتكرها المطورون لإضفاء العمق على الشخصيات الجانبية. خذ مثلاً لعبة 'The Witcher 3'، الحوارات الصغيرة مع شخصيات مثل 'Zoltan' أو 'Dandelion' ليست مجرد كلام عابر، بل تحمل تفاصيل عن ماضيهم وتغيرات في مواقفهم بناءً على قراراتك.
ما يثير فضولي أكثر هو تلك المهام الجانبية المخصصة لهم، مثل قصة 'The Bloody Baron'، حيث تنكشف طبقات من الألم والندم والتحول. بعض المطورين يمنحون الشخصيات روتينًا يوميًا في العالم المفتوح، مثل رؤيتهم وهم يتناولون الطعام في الحانة أو يذهبون للنوم. هذه التفاصيل تجعلني أتعلق بهم وكأنهم أناس حقيقيون أعرفهم.
تصميم واجهات اللعب بالنسبة لي يشبه حل لغز بصري ووظيفي: كل عنصر على الشاشة له سبب ووزن. أرى العملية كرحلة تبدأ بخربشات بسيطة وتنتهي بواجهة تتفاعل معها اليد والعين بدون تفكير زائد.
أحياناً أبدأ بالفكرة على ورق ثم أنتقل إلى أدوات الرسم التقليدية مثل Photoshop أو Illustrator لرسم الأيقونات والخامات. بعد ذلك أستخدم أدوات تصميم واجهة ونمذجة التفاعل مثل Figma أو Adobe XD لصنع نماذج تفاعلية قابلة للاختبار. بالنسبة للحركة والانتقالات أحب استخدام After Effects أو أدوات متخصصة في الرسوم ثنائية الأبعاد مثل Spine لتجربة الانيميشن قبل نقلها إلى المحرك.
التحدي الحقيقي يأتي عند دمج هذه التصاميم داخل محركات الألعاب: Unity تملك أنظمة واجهات خاصة (UI Toolkit و uGUI) بينما Unreal تعتمد على UMG وSlate. هنا تبرز أهمية التعاون بين المصمم ومن يطبق الواجهة داخل المحرك لأن الأداء وحجم الذاكرة والتحكم عبر ذراع التحكم أو اللمس يتطلبون تعديلات تقنية. للعبة على أجهزة المحمول سأضع في الحسبان مناطق اللمس الآمنة وحجم الأزرار، وللمنصات الكبيرة أفكر في تنظيم المعلومات بشكل يراعي الشاشة البعيدة والقراءة من مسافة. هذه الحلقة بين التصميم والتنفيذ والتجربة مع اللاعبين هي ما يجعل كل مشروع فريد، وهذه التفاصيل الصغيرة هي ما يحمسني دائماً.
أدركت أن أدوات التشبيه هي لغة سرية يصنع بها المطورون جسرًا بين اللعب والمشاعر.
أستخدم التشبيه عندما أريد أن أجعل خبرة اللعب محسوسة فورًا؛ ليس فقط عبر حوارات طويلة، بل عبر الشكل والميكانيك والموسيقى والمشهد. مثلاً، تحويل ضباب يمزق الهدوء إلى 'قلب مكسور' بصري في مستوىٍ ما يجعل اللاعب يفهم الحالة النفسية للشخصية دون سطرٍ واحد من النص. هذا النوع من النحت السردي قوي عندما الوقت محدود ولا أريد كسر انسياب اللعب.
أحيانًا أستثمر التشبيهات لأربط ميكانيكًا بصريًا بفكرة عامة: قدرة تستنزف ضوءًا يمكن أن تكون تشبيهًا للقوة التي تكلف الروح، أو واجهة مستخدم تتوهج بصعوبة لتُشبه الأمل المتلاشي. أجد أن اللعب الذي يعتمد على تشبيه مترابط يصبح أكثر ذاكرة؛ اللاعب لا يتذكر مجرد مهمة بل يتذكر معنى تلك المهمة. كما أن التشبيه مفيد لإضفاء طابع ثقافي أو رمزي دون الإفراط في الشرح، وهو مثالي للألعاب التي تريد أن تترك مساحة لتأويل اللاعب.
لكنني حذر من الإفراط؛ حين تتحول كل ميكانيك إلى رمزٍ ثقيل يصبح العالم ممتلئًا بتلميحاتٍ بلا إحساس، فتفقد اللعبة وضوحها. لذا أستعمل التشبيه بحسّ انتقائي: لِما يدعم الشعور العام أو يسهّل الفهم، وليس لمجرد إظهار براعة لغوية. هذا التوازن هو ما يجعل السرد في اللعبة يتنفس ويؤثر فعلاً.
أعشق التحدث عن تصميم واجهات الألعاب، لأنه مجال يجمع بين الإبداع وعلم النفس. عندما أدخل لعبة مثل 'Hades' أو 'Celeste'، أول شيء ألاحظه هو كيف أن عناصر التحكم لا تشتت انتباهي أبدًا. المصمم الذكي هنا يعتمد على قاعدة 'الوضوح قبل الجمال'.
السر الأول هو التوزيع الذكي للعناصر: وضع الأزرار المهمة في الزوايا التي تصل إليها الإبهام بسهولة، واستخدام ألوان متباينة للخلفية لتبرز الرموز. مثلاً، في لعبة 'Dead Cells'، ترى شريط الصحة والجرعات في الزاوية العليا اليسرى، بينما تكون خريطة المستوى في الزاوية اليمنى السفلية. هذا التوزيع يعطي اللاعب نظرة شاملة دون الحاجة لتحريك العين كثيرًا.
ثانيًا، التصميم القائم على 'التوقعات' مهم جدًا. عندما تفتح قائمة المخزون في 'The Legend of Zelda: Breath of the Wild'، تجد أيقونات الأسلحة والدروع مرتبة بالطريقة التي اعتدت عليها من ألعاب سابقة. هذا يقلل من منحنى التعلم ويريح الأعصاب. وأخيرًا، التغذية الراجعة الفورية: كل ضغطة زر تنتج رد فعل صوتي أو بصري، مثل اهتزاز الشاشة أو صوت النقر، وهذا يعزز الإحساس بالسيطرة. أنا شخصياً أقع في حب الألعاب التي تشعرني بأن الواجهة جزء مني، لا حاجز بيني وبين المغامرة.
أجد أن واجهات اللعب تعمل كجسر بين عقل اللاعب وعالم اللعبة، وليست مجرد شاشات تعرض أرقامًا وأيقونات.
حين أفكر في التصميم أميّز دائمًا بين واجهة 'دايجيتك' تظهر داخل عالم اللعبة نفسها—مثل شريط حياة مدمج في جسد الشخصية أو عناصر تُرى على جهاز داخل العالم—وواجهة 'نون-دايجيتك' التي تظل فوق المشهد وتقدم معلومات مباشرة. هذا التقسيم مهم لأن كل نوع يغيّر إحساس اللاعب بالاندماج: الواجهات الدايجيتكية تعزز السرد، بينما الواجهات غير الدايجيتكية تسرّع الوصول للمعلومات.
أعتمد دائمًا أسلوب تقسيط المعلومات تدريجيًا: في البداية أكتفي بحد أدنى من العناصر ثم أتيح للاعبين فتح أو تخصيص HUD حسب رغبتهم، لأن الزحمة البصرية تقتل الإحساس باللعب. كما أؤمن بقوة الصوت والاهتزاز كجزء من واجهة اللعب؛ تلمس زرًا وتشعر بصوت وردّ فعل حسي، هذا يخلق ما أسميه "الإحساس باللّمس" داخل اللعبة. في النهاية، تصميم واجهة اللعب ناجح إذا شعرت أنك تتحكم وتفهم العالم دون أن يصدرك عن المتعة.
القائمة التالية أكتبها من زاوية شخص قضى وقتًا طويلاً يجرب محركات وأدوات مختلفة، لذلك أضع هنا ما أراه أساسيًا في تصميم ألعاب ثلاثية الأبعاد.
أبدأ دائمًا بمحرك اللعبة لأنه قلب المشروع: 'Unreal Engine' رائع للرسوم الواقعية ولديه محرر رسومات متقدم وبلغة C++، بينما 'Unity' يمنح مرونة هائلة وسهولة في البرمجة عبر C# ومجتمع حيوي. بجانب المحرك أجد أن برامج النمذجة ضرورية مثل Blender المجاني الذي يتحسن باستمرار، وMaya أو 3ds Max للاستوديوهات الكبيرة، وZBrush للنحت العضلي والعضوي. لتعبيئة الأسطح أستخدم Substance Painter وQuixel وArmorPaint لتصميم خامات PBR واقعية.
بالنسبة للأنيميشن والريغ، حلول مثل Maya وBlender تغطي معظم الاحتياجات، أما للمحاكاة الفيزيائية فـPhysX وHavok مفيدان، وHoudini ضروري للأعمال الإجرائية والتأثيرات المعقدة. لا أنسى أدوات الأداء: profilers داخل المحركات، RenderDoc للتصحيح الرسومي، وNVIDIA Nsight لتحليل الـGPU. أدوات التكامل والتحكم بالإصدارات مثل Git مع Git LFS أو Perforce لا غنى عنها في فريق متعدد الأشخاص.
وفي النهاية، هناك أدوات ثانوية لكنها حاسمة: FMOD أو Wwise للصوت التفاعلي، أدوات الـCI مثل Jenkins أو GitHub Actions للبناء التلقائي، وPak/Asset Bundlers لإدارة الحزم. التجربة العملية مع هذه الأدوات هي ما يجعل المشروع يتقدّم بأمان ومرونة، وهذا ما أعتمد عليه دائماً.
أعتبر واجهة اللعبة بمثابة المرشح الذي يصفّي تجربة اللعب أو يلوّنها — المصمّم الجيّد يطبّق مبادئ التصميم بشكل متعمّق، وليس فقط ليجعل الأزرار جميلة. أبدأ بالوضوح: كل عنصر على الشاشة يجب أن يجيب فورًا على سؤال 'لماذا هو هنا؟' و'ماذا يحدث إذا ضغطت؟'، وهذا يتطلب هرم بصري واضح، تباين لوني مناسب، وحجم عناصر يتناسب مع أولوية المعلومات.
التغذية الراجعة الفورية مهمة جدًا؛ عندما تضغط زرًا أو تتلقى ضررًا، يجب أن تشعر برد فعل مرئي أو سمعي يقلّل الالتباس. هنا يدخل قانون فيتزّ وموضع العناصر على الشاشات المختلفة — لمصمّم الواجهة دور حاسم في وضع الأزرار بحيث تكون في نطاق إبهام اللاعب على الهواتف أو بعيدًا عن الأخطاء على ذراع التحكم.
أحب أن أرى أيضًا كيف توازن الواجهات بين الانغماس وإتاحة المعلومات: بعض الألعاب تختار واجهة خفيفة أو داخليّة 'diegetic' مثل ما رأينا في 'Dead Space'، بينما يفضّل آخرون HUD واضح للاعتمادية والتنافس. وفي النهاية، تطبيق مبادئ التصميم يتجلّى في اختبار المستخدم، القياس والتحسين المتكرر، والعمل مع المصمّم الميكانيكي والمهندس لتقديم تجربة متماسكة وفعّالة.