3.4.2-pre-1 • Published 9 months ago

@sayduck/gltf-pipeline v3.4.2-pre-1

Weekly downloads
-
License
ISC
Repository
github
Last release
9 months ago

sayduck-gltf-pipeline

Node package holding all of Sayduck's scripts to convert assets and products to glTF 2.0

Pipeline help

$ sayduck-gltf-pipeline -h

  Usage: sayduck-gltf-pipeline [options] [command]

  Options:

    -v, --version                           output the version number
    -h, --help                              output usage information

  Commands:

    obj-utility [options]
    gltf-utility [options] <gltf-files...>
    create-gltf [options]

obj-utility

help

$ sayduck-gltf-pipeline obj-utility -h

  Usage: obj-utility [options]

  Options:

    -i, --input-file <input-file>        [required] path to .obj file to process
    -o, --output-folder <output-folder>  [required] output folder for generated file(s)
    --obj-split                          outputs one .obj per group present in .obj to process
    --obj-fix                            generates normals and UVs for the input .obj (or the resulting split .objs) if missing
    --gltf-convert                       convert the input .obj (or the resulting split .objs) to .gltf + .bin
    -h, --help                           output usage information

Example

$ sayduck-gltf-pipeline obj-utility -i path/to/source.obj -o path/to/output/folder/ --obj-split --gltf-convert
    {
      "status": "success",
      "meshes": [
        {
          "reference": "source_obj_group_1_name",
          "assets":  [
            {
              "type": "obj",
              "uri": "path/to/output/folder/source_obj_group_1_name.obj",
              "content_type": "text/plain"
            },
            {
              "type": "gltf",
              "uri": "path/to/output/folder/source_obj_group_1_name.gltf",
              "content_type": "model/gltf+json"
            },
            {
              "type": "bin",
              "uri": "path/to/output/folder/source_obj_group_1_name.bin",
              "content_type": "application/octet-stream"
            },
          ]
        },
        ...
      ]
    }

gltf-utility

help

$ sayduck-gltf-pipeline gltf-utility -h

  Usage: gltf-utility [options] <gltf-files...>

  Options:

    -o, --output-folder <output-folder>  [required] output folder for generated file(s)
    --gltf-optimize                      optimize the passed-in .gltf files
    --gltf-binary                        create .glb file(s) instead of .gltf
    --gltf-embed-assets                  embed assets in .gltf files (meshes are always embedded with --gltf-binary)
    --gltf-draco-compression             enable draco compression for meshes
    -h, --help                           output usage information

Example: gltf-optimize

$ sayduck-gltf-pipeline gltf-utility --gltf-optimize -o path/to/output/folder/ path/to/first.gltf path/to/second.gltf
    {
      "status": "success",
      "meshes": [
        {
          "reference": "first",
          "assets": [
            {
              "type": "gltf",
              "uri": "path/to/output/folder/first.gltf",
              "content_type": "model/gltf+json"
            },
            {
              "type": "png",
              "uri": "path/to/output/folder/texture.png",
              "content_type": "image/png"
            },
            {
              "type": "bin",
              "uri": "path/to/output/folder/mesh.bin",
              "content_type": "application/octet-stream"
            },
            ...
          ]
        },
        ...
      ]
    }

Example: create glb

$ sayduck-gltf-pipeline gltf-utility --gltf-optimize --gltf-binary --gltf-embed-assets -o path/to/output/folder/ path/to/input.gltf
  {
      "status": "success",
      "meshes": [
        {
          "reference": "input",
          "assets": [
            {
              "type": "glb",
              "uri": "path/to/output/folder/input.glb",
              "content_type": "model/gltf-binary"
            }
          ]
        }
      ]
    }

create-gltf

help

  Usage: create-gltf [options]

  Options:

    -i, --input-file <input-file>   [required] path to the JSON file to process
    -o --output-file <output-file>  [required] processed glTF file
    --meshes-key                    specifify a JSON key to read glTF meshes from (defaults to `meshes`)
    --materials-key                 specifify a JSON key to read glTF materials from (defaults to `materials`)
    --mesh-assignments-key          specifify a JSON key to read mesh-material assignments from (defaults to `mesh_assignments`)
    -h, --help                      output usage information

Example

$ sayduck-gltf-pipeline create-gltf -i path/to/input/file.json -o path/to/output/file.gltf
    {
      "status": "success",
      "gltfPath": "path/to/output/file.gltf"
    }

Example input-file.json

{
  "meshes": {
    [meshUuid]: { meshGltf },
    ...
  },
  "materials": {
    [materialUuid]: {
      name,
      extras,
      alpha_mode,
      is_double_sided,
      albedo_colour, // { red, green, blue, alpha }
      emissive_colour, // { red, green, blue }
      albedo_transparency,
      roughness, // 0.0 - 1.0
      metallicness, // 0.0 - 1.0
      occlusion_map_intensity, // 0.0 - 1.0
      maps,
      // [
      //   {
      //     kind, // 'albedo' / 'occlusion_roughness_metallic' / 'normal' / 'emissive'
      //     urls: { jpg, png },
      //   },
      //   ...
      // ]
      map_tiling, // { x, y }
      map_tiling_offset, // { x, y }
      map_tiling_rotation, // 0 - 360
    },
    ...
  },
  "mesh_assignments": {
    [meshAssignmentUuid]: {
      "mesh": [meshUuid],
      "material": [materialUuid]
    },
    ...
  }
}

create-glb

help

  Usage: create-glb [options]

  Options:

    -i, --input-file <input-file>   [required] path to the .gltf file to process
    -o --output-file <output-file>  [required] processed .glb file
    -h, --help                      output usage information

Example

$ sayduck-gltf-pipeline create-glb -i path/to/input/file.gltf -o path/to/output/file.glb
    {
      "status": "success",
      "gltfPath": "path/to/output/file.glb"
    }
3.4.2-pre-0

9 months ago

3.4.2-pre-1

9 months ago

3.4.1-pre-0

11 months ago

3.4.0-pre-6

11 months ago

3.4.0-pre-5

11 months ago

3.4.0-pre-4

11 months ago

3.4.0-pre-3

11 months ago

3.4.0-pre-2

11 months ago

3.4.0-pre-1

11 months ago

3.4.0-pre-0

11 months ago

3.3.9-pre-1

12 months ago

3.3.9-pre-0

12 months ago

3.3.8-debug

12 months ago

3.3.8-pre-2

12 months ago

3.3.8-pre-1

1 year ago

3.3.8-pre-0

1 year ago

3.3.7-pre-2

1 year ago

3.3.7-pre-1

1 year ago

3.3.7-pre-0

1 year ago

3.3.6

1 year ago

3.3.5-pre-3

1 year ago

3.3.5-pre-2

1 year ago

3.3.5-pre-1

1 year ago

3.3.5-pre-0

1 year ago

3.3.4

1 year ago

3.3.4-pre-6

1 year ago

3.3.4-pre-5

1 year ago

3.3.4-pre-4

1 year ago

3.3.4-pre-3

1 year ago

3.3.4-pre-2

1 year ago

3.3.4-pre-1

1 year ago

3.3.4-pre-0

2 years ago

3.3.3-pre-9

2 years ago

3.3.3-pre-8

2 years ago

3.3.3-pre-7

2 years ago

3.3.3-pre-6

2 years ago

3.3.3-pre-5

2 years ago

3.3.3-pre-4

2 years ago

3.3.3-pre-3

2 years ago

3.3.3-pre-2

2 years ago

3.3.3-pre-1

2 years ago

3.3.3

2 years ago

3.3.3-pre-0

2 years ago

3.3.2

2 years ago

3.3.2-pre-0

2 years ago

3.3.1

2 years ago

3.3.1-pre-4

2 years ago

3.3.1-pre-3

2 years ago

3.3.1-pre-2

2 years ago

3.3.1-pre-1

2 years ago

3.3.1-pre-0

2 years ago

3.3.0

2 years ago

3.3.0-pre-1

2 years ago

3.3.0-pre-0

2 years ago

3.2.9

2 years ago

3.2.9-pre-1

2 years ago

3.2.9-pre-0

3 years ago

3.2.8

3 years ago

3.2.8-pre-0

3 years ago

3.2.7

3 years ago

3.2.7-pre-5

3 years ago

3.2.7-pre-4

3 years ago

3.2.7-pre-3

3 years ago

3.2.7-pre-2

3 years ago

3.2.7-pre-1

3 years ago

3.2.6

3 years ago

3.2.6-pre-2

3 years ago

3.2.6-pre-1

3 years ago

3.2.6-pre-0

3 years ago

3.2.5

3 years ago

3.2.5-pre-1

3 years ago

3.2.5-pre-0

3 years ago

3.2.4

3 years ago

3.2.4-pre-3

3 years ago

3.2.4-pre-2

3 years ago

3.2.4-pre-1

3 years ago

3.2.4-pre-0

3 years ago

3.2.3

3 years ago

3.2.3-pre-2

3 years ago

3.2.3-pre-1

3 years ago

3.2.2

3 years ago

3.2.2-pre-0

3 years ago

3.2.1

3 years ago

3.2.1-pre-4

3 years ago

3.2.1-pre-3

3 years ago

3.2.1-pre-2

3 years ago

3.2.1-pre-1

3 years ago

3.2.1-pre-0

3 years ago

3.2.0

3 years ago

3.2.0-pre-6

3 years ago

3.2.0-pre-5

3 years ago

3.2.0-pre-4

3 years ago

3.2.0-pre-3

3 years ago

3.2.0-pre-2

3 years ago

3.2.0-pre-1

3 years ago

3.2.0-pre-0

3 years ago

3.1.9

3 years ago

3.1.9-pre-4

3 years ago

3.1.9-pre-3

3 years ago

3.1.9-pre-2

3 years ago

3.1.9-pre-1

3 years ago

3.1.9-pre-0

3 years ago

3.1.8

3 years ago

3.1.7

3 years ago

3.1.7-pre-2

3 years ago

3.1.7-pre-1

3 years ago

3.1.7-pre-0

3 years ago

3.1.6

3 years ago

3.1.6-pre-7

3 years ago

3.1.6-pre-6

3 years ago

3.1.6-pre-5

3 years ago

3.1.6-pre-4

3 years ago

3.1.6-pre-3

3 years ago

3.1.6-pre-2

3 years ago

3.1.6-pre-1

3 years ago

3.1.6-pre-0

3 years ago

3.1.5

3 years ago

3.1.5-pre-1

3 years ago

3.1.5-pre-0

4 years ago

3.1.4

4 years ago

3.1.4-pre-3

4 years ago

3.1.4-pre-2

4 years ago

3.1.4-pre-1

4 years ago

3.1.4-pre-0

4 years ago

3.1.3

4 years ago

3.1.3-pre-3

4 years ago

3.1.3-pre-2

4 years ago

3.1.3-pre-1

4 years ago

3.1.3-pre-0

4 years ago

3.1.2

4 years ago

3.1.2-pre-2

4 years ago

3.1.2-pre-1

4 years ago

3.1.2-pre-0

4 years ago

3.1.1

4 years ago

3.1.0

4 years ago

3.1.0-pre-3

4 years ago

3.1.0-pre-2

4 years ago

3.1.0-pre-0

4 years ago

3.0.5

4 years ago

3.0.5-pre-0

4 years ago

3.0.4

4 years ago

3.0.4-pre-2

4 years ago

3.0.4-pre-1

4 years ago

3.0.4-pre-0

4 years ago

3.0.3

4 years ago

3.0.3-pre-2

4 years ago

3.0.3-pre-1

4 years ago

3.0.3-pre-0

4 years ago

3.0.2

4 years ago

3.0.1

4 years ago

3.0.0

4 years ago

3.0.0-pre-51

4 years ago

3.0.0-pre-50

4 years ago

3.0.0-pre-49

4 years ago

3.0.0-pre-48

4 years ago

3.0.0-pre-47

4 years ago

3.0.0-pre-46

4 years ago

3.0.0-pre-45

4 years ago

3.0.0-pre-44

4 years ago

3.0.0-pre-43

4 years ago

3.0.0-pre-42

4 years ago

3.0.0-pre-41

4 years ago

3.0.0-pre-40

4 years ago

3.0.0-pre-39

4 years ago

3.0.0-pre-38

4 years ago

3.0.0-pre-37

4 years ago

3.0.0-pre-36

4 years ago

3.0.0-pre-35

4 years ago

3.0.0-pre-34

4 years ago

3.0.0-pre-33

4 years ago

3.0.0-pre-32

4 years ago

3.0.0-pre-31

4 years ago

3.0.0-pre-30

4 years ago

3.0.0-pre-29

4 years ago

3.0.0-pre-28

4 years ago

3.0.0-pre-27

4 years ago

3.0.0-pre-26

4 years ago

3.0.0-pre-25

4 years ago

3.0.0-pre-24

4 years ago

3.0.0-pre-23

4 years ago

3.0.0-pre-22

4 years ago

3.0.0-pre-21

4 years ago

3.0.0-pre-20

4 years ago

3.0.0-pre-19

4 years ago

3.0.0-pre-18

4 years ago

3.0.0-pre-17

5 years ago

3.0.0-pre-16

5 years ago

3.0.0-pre-15

5 years ago

3.0.0-pre-14

5 years ago

3.0.0-pre-13

5 years ago

3.0.0-pre-12

5 years ago

3.0.0-pre-11

5 years ago

3.0.0-pre-10

5 years ago

3.0.0-pre-9

5 years ago

3.0.0-pre-8

5 years ago

3.0.0-pre-7

5 years ago

3.0.0-pre-6

5 years ago

3.0.0-pre-5

5 years ago

3.0.0-pre-4

5 years ago

3.0.0-pre-3

5 years ago

3.0.0-pre-2

5 years ago

3.0.0-pre-1

5 years ago

3.0.0-pre-0

5 years ago

2.4.10

5 years ago

2.4.9

5 years ago

2.4.8

5 years ago

2.4.8-pre-0

5 years ago

2.4.7

5 years ago

2.4.7-pre-1

5 years ago

2.4.7-pre-0

5 years ago

2.4.6

5 years ago

2.4.5

5 years ago

2.4.4

5 years ago

2.4.3

5 years ago

2.4.2

5 years ago

2.4.1

5 years ago

2.4.0

5 years ago

2.3.1

5 years ago

2.3.0

5 years ago

2.2.1

5 years ago

2.2.0

5 years ago

2.1.0

5 years ago

2.0.6

5 years ago

2.0.5

5 years ago

2.0.3

5 years ago

2.0.2

5 years ago

2.0.1

5 years ago

2.0.0

5 years ago

2.0.0-beta.0

5 years ago