Terrain (.raw)

Used for terrain data. See also: http://legouniverse.wikia.com/wiki/User_blog:Jamesster.LEGO/Terrain_files

Note

id:
raw
file-extension:
raw
endian:
le
imports:
  1. ../common/common

Sequence

  1. [u2] version

  2. [u1] dev

  3. if: dev == 0

    [u4] num_chunks

  4. if: dev == 0

    [u4] num_chunks_width

  5. if: dev == 0

    [u4] num_chunks_height

  6. if: dev == 0

    [chunk] chunks

    repeat-expr: num_chunks

Type chunk

Sequence

  1. [u4] id

  2. [u4] width

  3. [u4] height

  4. [f4] offset_world_x

  5. [f4] offset_world_z

  6. if: _root.version < 32

    [u4] shader_id

  7. [u4] texture_ids

    repeat-expr: 4
  8. [f4] density

  9. [f4] height_map

    repeat-expr: width * height
  10. if: _root.version >= 32

    [u4] diffuse_res

  11. if: _root.version >= 32
    Size: diffuse_res * diffuse_res * 4
  12. if: _root.version < 32

    [u1] unknown1

    repeat: eos
  13. if: _root.version >= 32

    [u4] diffuse_map_dds_size

  14. if: _root.version >= 32
    Size: diffuse_map_dds_size
  15. [u4] blend_res

  16. Size: blend_res * blend_res * 4
  17. if: _root.version >= 32

    [u1] bits

  18. if: _root.version >= 32

    [u4] blend_map_dds_size

  19. if: _root.version >= 32
    Size: blend_map_dds_size
  20. [u4] num_flairs

  21. [flair_attributes] flairs

    repeat-expr: num_flairs
    Size: 36
  22. if: _root.version >= 32
    Size: diffuse_res * diffuse_res
  23. if: _root.version < 32

    [u1] unknown2

    repeat: eos
  24. if: _root.version >= 32

    [u4] vert_size

  25. [u2] mesh_vert_usage

    repeat-expr: vert_size
  26. [u2] mesh_vert_size

    repeat-expr: 16
  27. [mesh_tri] mesh_tri

    repeat-expr: 16

Type flair_attributes

Sequence

  1. [u4] id

  2. [f4] scale_factor

  3. [common::vector3] pos

  4. [common::vector3] rot

  5. [u1] color_r

  6. [u1] color_g

  7. [u1] color_b

Type mesh_tri

Sequence

  1. [u2] mesh_tri_list_size

  2. [u2] mesh_tri_list

    repeat-expr: mesh_tri_list_size