Difference between revisions of "Editing MBM Textures"

From Kerbal Space Program Wiki
Jump to: navigation, search
(Converting Textures in to .PNG Images and making .MU Model to load them)
Line 217: Line 217:
  
  
04) Before editing, Flip image Horizontally and save it as .PNG
+
04) Before editing, Flip image Vertically and save it as .PNG
  
  

Revision as of 09:20, 6 February 2013

Requirements

Before we start, we need these tools:

• Photoshop

• Hex Editor HxD

Example

Let's take an example of model with two textures.

• model.mu

• model000.mbm

• model001.mbm

Editing Textures as .PBM Images

01) First we rename model000.mbm in to model000.pbm and model001.mbm to model000.pbm.


02) Now we open model000.pbm with HxD and see picture like this:

Hex 01.png






First 20 bytes is what makes MBM format different from PBM - Portable Bitmap Format.


03) Also, pay attention to Magical Number. Each model000.mbm has it's own Magical Number, so always make backup, or write somewhere these first 20 bytes for later, to restore image to original formatting.

Hex 05.png






04) Now we select them and replace them with one of these 20 bytes and replace them with one of these lines:

• For 1024 x 1024 pixel images use this row:

Hex 02.png






• For 512 x 512 pixel images use this row:

Hex 03.png






• For 256 x 256 pixel images use this row:

Hex 04.png






05) Open .PBM images with Photoshop, and do anything you want with it. Then save. Avoid changing texture size, because I didn't tried to change texture size, so I can't tell if it will work correctly or not.


06) Now open changed .PBM image with HxD again:

Hex 08.png






07) And replace with original 20 bytes that were there:

Hex 06.png






08) And don't forget about corresponding Magic Number:

Hex 07.png






09) Save and now rename back model000.pbm in to model000.mbm and model001.pbm to model000.mbm.


11) ?????


12) PROFIT


13) I don't know about other editors if they work with PBM or no, check it at you own risk.


14) Also when you writing in HxD be sure that "." is 0A and not 2E.


Editing Textures as .RAW Images

01) Rename image file extension from .MBM to .RAW


02) Remove first 20 bytes via HEX editor (copy them someshwere with Magical Number) & save file.

Hex 05.png






03) Now open in Photoshop. This part is a bit tricky, here starts game "guess images size and amount of channels", but little bit of mathematics can help you:

For example, after removing 20 first bytes, picture size in bytes is 1,048,576. Let's assume that picture's size is 512 x 512 pixels.

I use such formula to calculate: Channels * (Depth/8) = Bytes / (Length * Width)

And in our case it means: 1048576/512*512 = 1048576/262144 = 4 channels in 8 bit colors or 2 channels in 16 bit colors.


Channels - assumable amount of channels in image. Defaults are 2, 3, 4 & etc channels.

Depth - assumable size in bits of every channels. Defaults are either 8 bit, or either 16 bit. 8 bit means 256 in decimal, so 256*3 channels and 16,777,216 colors. Length - assumable length of images. Defaults are 256, 512, 1024.

Width - assumable width of images. Defaults are 256, 512, 1024.

Bytes - exact size of image in bytes after we removed first 20 bytes.


03) Edit via Photoshop, saving again as RAW image.


04) Add first 20 bytes back.


05) It should work. For me does.


06) ?????


07) PROFIT


Converting Textures in to .PNG Images and making .MU Model to load them

01) Rename image file extension from .MBM to .RAW


02) Remove first 20 bytes via HEX editor once and for all.

Hex 01.png






03) Now open in Photoshop. Follow previous instructions of how-to open .RAW Image in Photoshop.


04) Before editing, Flip image Vertically and save it as .PNG


05) Open [B]model.mu[/B] with HxD hex editor, go the end of the file. You will see there such thing:

Hex 09.png






06) Now, change "mbm" extensions for all images in to "png" and save.

Hex 10.png






07) Now model should load PNG images, instead of MBM. It does for me.


08) ?????


09) PROFIT