Expand description
Binary and text format readers/writers for KotOR resources.
Modules in this crate are implementation-focused and designed to support deterministic roundtrip behavior.
Re-exports§
pub use bif::read_bif;pub use bif::read_bif_from_bytes;pub use bif::write_bif;pub use bif::write_bif_to_vec;pub use bif::Bif;pub use bif::BifBinaryError;pub use bif::BifContainer;pub use bif::BifResource;pub use bif::BifResourceStorage;pub use binary::DecodeBinary;pub use binary::EncodeBinary;pub use bwm::read_bwm;pub use bwm::read_bwm_ascii;pub use bwm::read_bwm_from_bytes;pub use bwm::write_bwm;pub use bwm::write_bwm_ascii;pub use bwm::write_bwm_to_vec;pub use bwm::Bwm;pub use bwm::BwmAabbNode;pub use bwm::BwmAdjacency;pub use bwm::BwmAsciiError;pub use bwm::BwmBinaryError;pub use bwm::BwmEdge;pub use bwm::BwmFace;pub use bwm::BwmType;pub use bwm::BwmTypeCode;pub use bwm::BwmVec3;pub use dds::read_dds;pub use dds::read_dds_from_bytes;pub use dds::write_dds;pub use dds::write_dds_to_vec;pub use dds::Dds;pub use dds::DdsBinaryError;pub use dds::DdsCaps2;pub use dds::DdsD3dFormat;pub use dds::DdsNewD3dParams;pub use erf::read_erf;pub use erf::read_erf_from_bytes;pub use erf::read_erf_from_bytes_with_options;pub use erf::read_erf_with_options;pub use erf::read_save_archive;pub use erf::read_save_archive_from_bytes;pub use erf::write_erf;pub use erf::write_erf_to_vec;pub use erf::write_erf_to_vec_with_options;pub use erf::write_erf_with_options;pub use erf::write_save_archive;pub use erf::write_save_archive_to_vec;pub use erf::Erf;pub use erf::ErfBinaryError;pub use erf::ErfFileType;pub use erf::ErfLocalizedString;pub use erf::ErfReadMode;pub use erf::ErfReadOptions;pub use erf::ErfResource;pub use erf::ErfWriteMode;pub use erf::ErfWriteOptions;pub use erf::ModLayout;pub use gff::read_gff;pub use gff::read_gff_from_bytes;pub use gff::write_gff;pub use gff::write_gff_to_vec;pub use gff::Gff;pub use gff::GffBinaryError;pub use gff::GffField;pub use gff::GffLocalizedString;pub use gff::GffLocalizedSubstring;pub use gff::GffStruct;pub use gff::GffValue;pub use gff_schema::gff_value_type;pub use gff_schema::FieldSchema;pub use gff_schema::GffSchema;pub use gff_schema::GffType;pub use key::pack_resource_id;pub use key::read_key;pub use key::read_key_from_bytes;pub use key::write_key;pub use key::write_key_to_vec;pub use key::Key;pub use key::KeyBifEntry;pub use key::KeyBinaryError;pub use key::KeyResourceEntry;pub use lip::read_lip;pub use lip::read_lip_from_bytes;pub use lip::write_lip;pub use lip::write_lip_to_vec;pub use lip::Lip;pub use lip::LipBinaryError;pub use lip::LipKeyframe;pub use lip::LipShape;pub use lip::LipShapeCode;pub use ltr::read_ltr;pub use ltr::read_ltr_from_bytes;pub use ltr::write_ltr;pub use ltr::write_ltr_to_vec;pub use ltr::Ltr;pub use ltr::LtrBinaryError;pub use ltr::LtrProbabilityBlock;pub use ltr::LTR_CHARACTER_COUNT;pub use lyt::read_lyt;pub use lyt::read_lyt_from_bytes;pub use lyt::write_lyt;pub use lyt::write_lyt_to_vec;pub use lyt::Lyt;pub use lyt::LytDoorHook;pub use lyt::LytError;pub use lyt::LytObstacle;pub use lyt::LytRoom;pub use lyt::LytTrack;pub use lyt::Quaternion;pub use lyt::Vec3;pub use mdl::assign_inverted_counters;pub use mdl::read_mdl;pub use mdl::read_mdl_ascii;pub use mdl::read_mdl_ascii_from_str;pub use mdl::read_mdl_from_bytes;pub use mdl::write_mdl;pub use mdl::write_mdl_ascii;pub use mdl::write_mdl_ascii_to_string;pub use mdl::write_mdl_to_vec;pub use mdl::write_mdl_with_mdx_to_vec;pub use mdl::AabbNode;pub use mdl::Mdl;pub use mdl::MdlAabb;pub use mdl::MdlAnimEvent;pub use mdl::MdlAnimMesh;pub use mdl::MdlAnimNode;pub use mdl::MdlAnimation;pub use mdl::MdlAsciiError;pub use mdl::MdlCamera;pub use mdl::MdlController;pub use mdl::MdlControllerType;pub use mdl::MdlDangly;pub use mdl::MdlEmitter;pub use mdl::MdlError;pub use mdl::MdlFace;pub use mdl::MdlKey;pub use mdl::MdlLight;pub use mdl::MdlMesh;pub use mdl::MdlNode;pub use mdl::MdlNodeData;pub use mdl::MdlReference;pub use mdl::MdlSaber;pub use mdl::MdlSkin;pub use mdl::MdlWriteResult;pub use rim::read_rim;pub use rim::read_rim_from_bytes;pub use rim::write_rim;pub use rim::write_rim_to_vec;pub use rim::Rim;pub use rim::RimBinaryError;pub use rim::RimResource;pub use ssf::read_ssf;pub use ssf::read_ssf_from_bytes;pub use ssf::write_ssf;pub use ssf::write_ssf_to_vec;pub use ssf::Ssf;pub use ssf::SsfBinaryError;pub use ssf::SsfSoundSlot;pub use tga::read_tga;pub use tga::read_tga_from_bytes;pub use tga::read_tga_from_bytes_with_options;pub use tga::read_tga_with_options;pub use tga::write_tga;pub use tga::write_tga_to_vec;pub use tga::Tga;pub use tga::TgaBinaryError;pub use tga::TgaBitsPerPixel;pub use tga::TgaCompression;pub use tga::TgaDataType;pub use tga::TgaHeader;pub use tga::TgaOrigin;pub use tga::TgaReadMode;pub use tga::TgaReadOptions;pub use tlk::read_tlk;pub use tlk::read_tlk_from_bytes;pub use tlk::write_tlk;pub use tlk::write_tlk_to_vec;pub use tlk::Tlk;pub use tlk::TlkBinaryError;pub use tlk::TlkEntry;pub use tpc::read_tpc;pub use tpc::read_tpc_from_bytes;pub use tpc::write_tpc;pub use tpc::write_tpc_to_vec;pub use tpc::Tpc;pub use tpc::TpcBinaryError;pub use tpc::TpcHeader;pub use tpc::TpcHeaderPixelFormat;pub use tpc::TpcPixelFormatCode;pub use twoda::read_twoda;pub use twoda::read_twoda_from_bytes;pub use twoda::read_twoda_from_bytes_with_options;pub use twoda::read_twoda_with_options;pub use twoda::write_twoda;pub use twoda::write_twoda_to_vec;pub use twoda::write_twoda_to_vec_with_options;pub use twoda::write_twoda_with_options;pub use twoda::TwoDa;pub use twoda::TwoDaBinaryError;pub use twoda::TwoDaBinaryOptions;pub use twoda::TwoDaRow;pub use txi::read_txi;pub use txi::read_txi_from_bytes;pub use txi::read_txi_from_bytes_with_options;pub use txi::read_txi_with_options;pub use txi::write_txi;pub use txi::write_txi_to_vec;pub use txi::write_txi_to_vec_with_options;pub use txi::write_txi_with_options;pub use txi::Txi;pub use txi::TxiCoordinate;pub use txi::TxiCoordinateBlock;pub use txi::TxiDirective;pub use txi::TxiEntry;pub use txi::TxiError;pub use txi::TxiReadOptions;pub use txi::TxiWriteOptions;pub use vis::read_vis;pub use vis::read_vis_from_bytes;pub use vis::write_vis;pub use vis::write_vis_to_vec;pub use vis::Vis;pub use vis::VisError;pub use wav::read_wav;pub use wav::read_wav_from_bytes;pub use wav::write_wav;pub use wav::write_wav_to_vec;pub use wav::write_wav_to_vec_with_options;pub use wav::write_wav_with_options;pub use wav::Wav;pub use wav::WavAudioFormat;pub use wav::WavEncoding;pub use wav::WavEncodingCode;pub use wav::WavError;pub use wav::WavType;pub use wav::WavWaveMetadata;pub use wav::WavWrapperKind;pub use wav::WavWriteMode;pub use wav::WavWriteOptions;
Modules§
- bif
- BIF archive support. BIF binary reader and writer.
- binary
- Shared binary utilities and lightweight format codec traits. Shared binary helpers and lightweight codec traits.
- bwm
- BWM/WOK binary walkmesh support. BWM/WOK binary reader and writer.
- dds
- DDS texture-container support. DDS (DirectDraw Surface) reader and writer.
- erf
- ERF-family archive support. ERF/MOD/HAK binary reader and writer.
- gff
- GFF binary container support. GFF V3.2 binary reader and writer.
- gff_
schema - GFF schema types for field validation. Schema types for GFF field validation.
- key
- KEY index support. KEY binary reader and writer.
- lip
- LIP binary lip-sync support. LIP binary reader and writer.
- ltr
- LTR binary letter-table support. LTR binary reader and writer.
- lyt
- LYT ASCII layout support. LYT ASCII reader and writer.
- mdl
- MDL binary model support. MDL binary model reader and writer.
- rim
- RIM archive support. RIM binary reader and writer.
- ssf
- SSF binary sound-set support. SSF binary reader and writer.
- tga
- TGA texture-image support. TGA (Targa) reader and writer.
- tlk
- Talk table (TLK) binary support. TLK V3.0 binary reader and writer.
- tpc
- TPC binary texture-container support. TPC binary reader and writer.
- twoda
- 2DA binary table support.
2DA
V2.bbinary reader and writer. - txi
- TXI ASCII texture-info support. TXI ASCII reader and writer.
- vis
- VIS ASCII visibility support. VIS ASCII reader and writer.
- wav
- WAV audio container support. WAV reader and writer with KotOR obfuscation handling.