1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
//! Merged LSX asset database
//!
//! This module provides tools for extracting and caching GR2-to-texture mappings
//! from BG3's `_merged.lsf` files.
//!
//! # Overview
//!
//! BG3 stores asset metadata in `_merged.lsf` files which contain mappings between:
//! - **`VisualBank`**: GR2 mesh files with `MaterialID` references
//! - **`MaterialBank`**: Materials with `Texture2DParameters` referencing textures
//! - **`TextureBank`**: DDS texture file paths
//! - **`VirtualTextureBank`**: `GTex` streaming texture references
//!
//! # Usage
//!
//! ```no_run
//! use maclarian::merged::GameDataResolver;
//!
//! // Auto-detect game installation and query the database
//! let resolver = GameDataResolver::auto_detect()?;
//! if let Some(asset) = resolver.get_by_visual_name("HUM_M_ARM_Leather_A_Body") {
//! println!("GR2: {}", asset.gr2_path);
//! println!("Textures: {:?}", asset.textures);
//! }
//! # Ok::<(), maclarian::error::Error>(())
//! ```
// Re-export public types (explicit to avoid leaking internal types)
pub use ;
// Re-export resolver
pub use MergedResolver;
// Re-export game data resolver (primary API)
pub use ;
// Re-export path helpers
pub use ;