Bitmaps · bei.pm

Udgivet den 19/11/2015·Opdateret den 13.02.2025·da
Denne tekst blev automatiseret oversat af OpenAI GPT-4o Mini

De filformater, der er beskrevet på denne side, er baseret på den tekniske analyse af intellektuel ejendom fra Dynamix, Inc. og Sierra Entertainment.
Den intellektuelle ejendom er i dag en del af Activision Publishing, Inc. / Activision Blizzard, Inc. og ejes i øjeblikket af Microsoft Corp..

Oplysningerne er indsamlet gennem Reverse Engineering og dataanalyse med henblik på arkivering og interoperabilitet med historiske data.
Der er ikke anvendt nogen proprietære eller fortrolige specifikationer.

Spillet kan i øjeblikket købes som download på gog.com.

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF tegn
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
0x0010 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Datatype Betegnelse Forklaring
0x0000 uint(32) Orienteret bredde

Angiver bredden af pixeldata-linjerne i byte - da disse er justeret til 4-byte-grænser.

Derfor er det hurtigt muligt at springe til en bestemt billedlinje.

Hvorfor denne værdi gemmes separat, selvom den kunne beregnes, er uklart.
Måske er det en optimering for render-koden.

0x0004 uint(32) Offset

Angiver offsettet for den første linje i bitmapen

0x0008 uint(32) Højde

Angiver højden af billedet i pixel

0x000c uint(32) Bredde

Angiver bredden af billedet i pixel

0x0010 uint(16) Typ

Angiver typen af billedet. Her ser det ud til at være en bitmaske:

  • 0x04 er sat, hvis det er en 1bpp-grafik.
  • 0x40 er sat, hvis det er en grafik, der skal implementere vindueshåndtering.
0x0012 uint(16) Palet

Definerer, hvilken palet der skal bruges fra PRT-filen

Denne datastruktur i PRT-filen angiver, hvordan de bitmaps, der bruges til sprites, er opbygget. Disse bitmaps fungerer som individuelle komponenter, hvor flere sammensættes til en animationsramme for et sprite.

De konkrete billeddata findes derimod i op2_art.BMP i spillets mappe.
Hvorfor denne bitmapfil har en (overvejende korrekt) RIFF-bitmapheader, er uklart. Sandsynligvis bruger Outpost 2 system-API'er til at indlæse grafikken, ved midlertidigt at overtage denne header og overskrive de relevante, varierede felter.

Pixeldatarne findes i BMP-filen ved positionen Offset + det uint32-offset, der kan findes i BMP-filen på adresse 0x000A (RIFF-bitmap-dataoffset), og svarer igen til den linjemæssige opstilling fra øverste venstre til nederste højre.

Monokrome 1bpp-grafikker kan tegnes sådan, at farve 0 er fuldstændig gennemsigtig, mens farve 1 er et halvtransparent sort/grå, da monokrom-grafikker typisk bruges til skygger af køretøjer og bygninger i animationerne.

Derfor kan man allerede sammensætte mange grafikker.

Beskyttet boligmodul (Plymouth)