| Crates.io | rw-parser-rs |
| lib.rs | rw-parser-rs |
| version | 1.0.0 |
| created_at | 2025-08-30 12:34:48.205584+00 |
| updated_at | 2025-08-30 12:34:48.205584+00 |
| description | A high-performance, native Rust parser for RenderWare files (.dff, .txd, .ifp). |
| homepage | https://github.com/DepsCian/rw-parser-rs |
| repository | https://github.com/DepsCian/rw-parser-rs |
| max_upload_size | |
| id | 1817577 |
| size | 114,497 |
A high-performance, native Rust parser for RenderWare files (.dff, .txd, .ifp).
This project is a Rust port of the excellent rw-parser-ng, rewritten from the ground up to leverage Rust's performance and safety. The goal is to provide a significantly faster and more memory-efficient alternative for server-side processing and tooling.
Our benchmarks show that rw-parser-rs is approximately 100x faster than its Node.js counterpart for typical DFF parsing tasks.
ANP3 and ANPK formats.Add rw-parser-rs to your Cargo.toml:
[dependencies]
rw-parser-rs = "1.0.0"
use rw_parser_rs::renderware::dff::dff_parser::DffParser;
use std::fs;
fn main() -> std::io::Result<()> {
// DFF
let dff_buffer = fs::read("path/to/your/model.dff")?;
let mut dff_parser = DffParser::new(&dff_buffer);
let dff_data = dff_parser.parse()?;
println!("Successfully parsed DFF model: {}", dff_data.version);
// Similar usage for TxdParser and IfpParser
Ok(())
}
git clone https://github.com/DepsCian/rw-parser-rs.gitcargo build --releasecargo benchcargo doc --openContributions are welcome! Please feel free to open an issue or submit a pull request.
This project is licensed under the GPL-3.0 License.