LBA1:3D model

From LBA File Information
Jump to: navigation, search
3D model
Extension

LM1

Occurence

LBA1

Colour
Programs supporting this format
References

(none)


LM1 files contain 3D models used by Actors and other objects in LBA 1.

Specification[edit]

--------------------------------------------------------------------------------
L I T T L E B I G A D V E N T U R E 1
3D Models Format - used for LBA 3D Object Viewer
Revision 1

Author: Alexandre Fontoura [alexfont]
Email: alexandrefontoura@oninetspeed.pt

Last Modification: 31.08.2006


[#] [ INFORMATION ] ------------------------------------------------------------

This document describes the format in which the LBA1Relentless 3D models are
stored in. I used this information in the generation of my LBA 3D Object Viewer.
If you find any errors in this document please email me the details, also if you
find new stuff please notify me.
This information is provided AS IS.


[#] [ 3D BASICS ] --------------------------------------------------------------

Here's some 3D little notions this document will talk about.

- Points: is an entity with a location in space.

- Elements: is a group of various points.

- Shades: is the blocking of sunlight by any object, and also the shadow
          created by that object.

- Polygons: is a closed planar path composed of a finite number of
            sequential line segments.

- Vertexs: is a corner of a polygon (where two sides meet).


[#] [ FORMAT ] -----------------------------------------------------------------

u16 = unsigned short (16bit)
u32 = unsigned int (32bit)
byte (8bit)

+ = to add in the previeous script bytes

--------------------------------------------------------------------------------

[ Header ]
00:        u16        Body Flag (bitmask)
02:        u16        aabb mins x
04:        u16        aabb maxs x
06:        u16        aabb mins y
08:        u16        aabb maxs y
0A:        u16        aabb mins z
0C:        u16        aabb maxs z
0E:        u16        Dummy Offset (to jump to offset 1A)
10..18:         -        Unused
[ / Header ]

BodyFlag:
16 bits - the 2nd bit (Little endian) marks the model as animated model

[ Points ]
1A:        u16        Number of points in the body

  |> Do this "Number of points in the body" times.
        [ Point ]
        00:        u16        X Coordinate
        02:        u16        Y Coordinate
        04:        u16        Z Coordinate
        [ / Point ]
[ / Points ]

Information provided by: alexfont