الصور النقطية · bei.pm

نُشر في 19.11.2015·محدث في 13/02/2025·عَرَبِيٌّ
تمت ترجمة هذا النص تلقائيًا بواسطة OpenAI GPT-4o Mini.

تنسيق الملفات الموصوفة في هذه الصفحة يستند إلى التحليل الفني للملكية الفكرية من قبل Dynamix, Inc. و Sierra Entertainment.
الملكية الفكرية هي اليوم جزء من مجموعة Activision Publishing, Inc. / Activision Blizzard, Inc. وهي حالياً مملوكة لـ Microsoft Corp..

تم جمع المعلومات من خلال الهندسة العكسية و تحليل البيانات لأغراض الأرشفة والتشغيل المتداخل مع البيانات التاريخية.
لم يتم استخدام أي مواصفات ملكية أو سرية.

يمكن شراء اللعبة حاليًا كتنزيل من gog.com.

عنوان x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF حرف
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
0x0010 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
الإزاحة نوع البيانات التسمية شرح
0x0000 uint(32) عرض موجه

يعطي عرض صفوف بيانات البكسل بالبايت - حيث إنها مصفوفة على حدود 4 بايت.

لذلك، من السهل بسرعة الانتقال إلى صف معين من الصورة.

لماذا يتم تخزين هذه القيمة بشكل منفصل، على الرغم من أنه يمكن حسابها، غير واضح.
ربما يتعلق الأمر بتحسين لشفرة العرض.

0x0004 uint(32) إزاحة

يحدد الإزاحة للسطر الأول في خريطة البتات

0x0008 uint(32) ارتفاع

حدد ارتفاع الصورة بالبكسل

0x000c uint(32) عرض

يحدد عرض الصورة بالبكسل

0x0010 uint(16) نوع

حدد نوع الصورة. يبدو أنها قناع بت:

  • 0x04 مُعَيَّن إذا كانت الصورة عبارة عن رسم بعمق 1 بت.
  • 0x40 مُعَيَّن إذا كانت الصورة تحتاج إلى تنفيذ تقنية النوافذ.
0x0012 uint(16) لوحة الألوان

حدد أي لوحة يجب استخدامها من ملف PRT

تحدد بنية بيانات ملف PRT كيفية بناء الصور النقطية (Bitmaps) المستخدمة في الرسوم المتحركة. وتعمل هذه الصور النقطية كجزء منفرد، يتم تجميع عدة منها لتشكيل إطار رسوم متحركة لرسوم متحركة (Sprite).

توجد بيانات الصورة الفعلية في op2_art.BMP في دليل اللعبة.
من غير الواضح لماذا تحتوي هذه الصورة النقطية على رأس ملف RIFF (الذي يعد صحيحًا في الغالب)، من المحتمل أن تستخدم لعبة Outpost 2 واجهات برمجة تطبيقات النظام لتحميل الرسوميات، عن طريق أخذ هذا الرأس مؤقتًا وكتابة الحقول المتغيرة المناسبة.

توجد بيانات البكسل في ملف BMP عند موضع Offset + uint32-Offset، الذي يمكن العثور عليه في ملف BMP عند العنوان 0x000A (إزاحة بيانات RIFF-Bitmap)، وهي مرتبة بشكل صفوف من أعلى اليسار إلى أسفل اليمين.

يمكن رسم الرسوميات الأحادية اللون (1bpp) بحيث تمثل اللون 0 الشفافية الكاملة، بينما يمثل اللون 1 لونًا أسود/رمادي نصف شفاف، حيث تُستخدم الرسوميات الأحادية عادةً لظلال المركبات والمباني في الرسوم المتحركة.

بهذه الطريقة يمكن تجميع العديد من الرسوميات.

وحدة سكنية محمية (بليموث)