ביטמפים · 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) הזזה

מציין את ההזזה של השורה הראשונה ב-Bitmap

0x0008 uint(32) גובה

מציין את גובה התמונה בפיקסלים

0x000c uint(32) רוחב

מציין את רוחב התמונה בפיקסלים

0x0010 uint(16) טיפ

מציין את סוג התמונה. נראה שמדובר במסיכת ביט:

  • 0x04 מוגדר כאשר מדובר בגרפיקה של 1bpp.
  • 0x40 מוגדר כאשר מדובר בגרפיקה שצריכה ליישם חלון.
0x0012 uint(16) פלטה

מגדיר איזו פלטה מתוך קובץ ה-PRT יש להשתמש

מבנה הנתונים של קובץ ה-PRT מציין כיצד הביטמפים שמשמשים עבור הספראיטים בנויים. ביטמפים אלו משמשים כמרכיב בודד, ממנו מרכיבים מספר פריטים למסגרת אנימציה של ספראיט.

נתוני התמונה הקונקרטיים מסתתרים לעומת זאת ב- op2_art.BMP בתיקיית המשחק.
מדוע קובץ הביטמפ הזה כולל כותרת RIFF-Bitmap (בעיקר נכונה), אינו ברור. סביר להניח ש-Outpost 2 משתמש ב-APIs של מערכת כדי לטעון את הגרפיקות, על ידי כך שכותרת זו מאומצת באופן זמני והשטחים המשתנים המתאימים נכתבים מחדש.

נתוני הפיקסלים נמצאים בקובץ ה-BMP במיקום של ה-offset + ה-offset uint32, שנמצא בקובץ ה-BMP בכתובת 0x000A (ה-offset נתוני RIFF-Bitmap), ונמצאים שוב בסידור שורות מלמעלה למטה מימין לשמאל.

גרפיקות מונו-כרומטיות 1bpp יכולות להיות מצויירות כך שצבע 0 הוא שקיפות מלאה, וגם צבע 1 הוא שחור/אפור חצי שקוף, מכיוון שגרפיקות מונו-כרומטיות נמצאות בשימוש בדרך כלל עבור צללים של רכבים ומבנים באנימציות.

כך אפשר כבר להרכיב הרבה גרפיקות.

מודול מגורים מוגן (פליומאת')