ElderImagery.xml 4.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <?xml-stylesheet type="text/xsl" href="../Xsl/doc2html.xsl"?>
  3. <doc>
  4. <title>Elder Imagery</title>
  5. <chapter>
  6. <title>Elder Imagery</title>
  7. <par>
  8. Elder Imagery is extension for Vampyre Imaging Library that
  9. adds support for loading and saving of images and textures from older
  10. Bethesda games like Redguard, BatteSpire,
  11. Terminator: FS, and TES: Arena, but mostly for
  12. The Elder Scrolls 2: Daggerfall (loads all images and textures
  13. from this game). All formats are 8bit indexed images (plus some 16bit color
  14. mapping in Battlespire) and palettes are often external.
  15. Default palettes for most images of each game are included in Elder Imagery
  16. but there are usually few images that use others (you can load them manually
  17. and assign them to loader class). Elder Imagery extension resides in
  18. <keyword>Extras</keyword> package.
  19. Here is the list of file formats supported by Elder Imagery:
  20. </par>
  21. <blist>
  22. <li>
  23. <keyword>IMG - Daggerfall Image</keyword>
  24. is 8 bit indexed format found in Daggerfall, Arena, Terminator: FS,
  25. and maybe other old Bethesda games. Files can be RLE compressed
  26. and may contain palette although most images use external palettes.
  27. Some files have no header at all so exact file size must be known
  28. prior to loading (otherwise no-header files wont be recognized or whole
  29. image could be identified as CIF as they use the same header).
  30. </li>
  31. <li>
  32. <keyword>CIF - Daggerfall MultiImage</keyword>
  33. is basically a sequence of images in IMG images stored in one file
  34. (with exception of Weapo*.cif files which are little bit more complex).
  35. As with IMG files CIF files can be RLE compressed and there are
  36. also special CIFs without header.
  37. Total number of frames in file is known after the whole file was parsed
  38. so exact file size must be known prior to loading.
  39. </li>
  40. <li>
  41. <keyword>TEXTURE - Daggerfall Texture</keyword>
  42. is format for texture storage in TES2: Daggerfall
  43. (works for Terminator: FS and maybe other games too).
  44. Textures are stored in 8bit indexed format with external palette.
  45. This format is very complicated (more images with subimages,
  46. nonstandard RLE, many unknowns) so only loading is supported.
  47. These texture files cannot be recognized by filename extension because
  48. their filenames are in form texture.### where # is number. Use filename
  49. masks instead.
  50. </li>
  51. <li>
  52. <keyword>BSI - Bethesda Image</keyword>
  53. is format for textures and images found
  54. in Redguard and BattleSpire (maybe in other games too, Skynet?). This format
  55. uses chunk structure similar to PNG (HDR/DAT/END). Redguard stores
  56. multiple images in one file (usually related like textures for various
  57. parts of single 3d object). Image data is stored as 8bit. Each image
  58. can have its own embedded palette or it can use external default palette.
  59. BattleSpire BSI use *.bsi file extension whilst Redguard uses
  60. texbsi.* mask with number extension (just like Daggerfall).
  61. Only loading is supported for this format.
  62. BattleSpire images also contain some sort of 8bit->16bit color mapping data
  63. which I've not yet figured out (only blue channel known) so
  64. don't expect to get pretty results from it now.
  65. </li>
  66. <li>
  67. <keyword>SKY - Daggerfall Sky Images</keyword>
  68. are used as backdrops in outdoor areas. There's about 200MB of
  69. sky images in Daggerfall installation. Each sky file (sky##.dat)
  70. contains 64 images 512x220 pixels each. Images in one file
  71. are for one climate zone and each is used for certain time of the day.
  72. </li>
  73. </blist>
  74. <note>
  75. When saving image in IMG or CIF format it gets converted to 8bit indexed
  76. format and mapped to current palette set in saver class. Also note
  77. that max size (in bytes) of image that can be saved is 65535 bytes
  78. (it is resized automatically if bigger).
  79. </note>
  80. <note>
  81. Since most people won't need support for these formats they are disabled
  82. by default (not compiled into your binary).
  83. If you want them go to <ref>ImagingExtras.pas</ref> unit
  84. and comment out or delete <icode>{$DEFINE DONT_LINK_ELDER}</icode>
  85. line.
  86. </note>
  87. </chapter>
  88. </doc>