Code Monkey home page Code Monkey logo

gltf-blender-io's Introduction

Blender glTF

Blender glTF 2.0 Importer and Exporter

Documentation

Blender Version Documentation
3.2 https://docs.blender.org/manual/en/3.2/addons/import_export/scene_gltf2.html
dev https://docs.blender.org/manual/en/dev/addons/import_export/scene_gltf2.html

Notes:

  • 3.1 is the current stable release. Check the blender-v3.1-release branch.
  • 2.80 - 3.0 are previous stable releases.
  • 2.93 is the current Blender LTS release. Check the blender-v2.93-release branch.
  • 3.2 will be the next release. Check the blender-v3.2-release branch.
  • master branch of this addon is mirrored in Blender Addons master, that will become Blender 3.3.

Legacy 2.79 Support

The final version of this addon with legacy support for Blender 2.79 is available on the 2.79 Release Page.

Blender 2.80 and higher bundle this addon in the main Blender install package, so no 3rd-party install is required.

Credits

Developed by UX3D, Scurest and Julien Duroure, with support from the Khronos Group, Mozilla, and Airbus Defense & Space.

Introduction

Official Khronos Group Blender glTF 2.0 importer and exporter.

This project contains all features from the previous exporter, and all future development will happen on this repository. In addition, this repository contains a Blender importer, with common Python code shared between exporter and importer for round-trip workflows. New features are included or under development, but usage and menu functionality remain the same.

The shared codebase is organized into common (Blender-independent) and Blender-specific packages:

Packages
Package organisation

This structure allows common code to be reused by third-party Python packages working with the glTF 2.0 format.

Process
Import & export process

The main importer and exporter interface is the Python glTF scene representation.
Blender scene data is first extracted and converted into this scene description. This glTF scene description is exported to the final JSON glTF file. Any compression of mesh, animation, or texture data happens here.
For import, glTF data is parsed and written into the Python glTF scene description. Any decompression is executed in this step. Using the imported glTF scene tree, the Blender internal scene representation is generated from this information.

Installation

The Khronos glTF 2.0 importer and exporter is enabled by default in Blender 2.8 and higher. To reinstall it โ€” for example, when testing recent or upcoming changes โ€” copy the addons/io_scene_gltf2 folder into the scripts/addons/ directory of the Blender installation, then enable it under the Add-ons tab. For additional development documentation, see Debugging.

Debugging

Continuous Integration Tests

Several companies, individuals, and glTF community members contribute to Blender glTF I/O. Functionality is added and bugs are fixed regularly. Because hobbyists and professionals using Blender glTF I/O rely on its stability for their daily work, continuous integration tests are enabled. After each commit or pull request, the following tests are run:

  • Export Blender scene and validate using the glTF validator
  • Round trip import-export and comparison of glTF validator results

These quality-assurance checks improve the reliability of Blender glTF I/O.

CI

Running the Tests Locally

To run the tests locally, your system should have a blender executable in the path that launches the desired version of Blender.

The latest version of Yarn should also be installed.

Then, in the tests folder of this repository, run yarn install, followed by yarn run test.

gltf-blender-io's People

Contributors

aurl avatar blackears avatar capnm avatar cyp avatar dependabot[bot] avatar donmccurdy avatar ejth avatar emackey avatar flakusha avatar garyo avatar jim-ec avatar josuemtzmo avatar julienduroure avatar m0ppers avatar maccesch avatar mobec avatar netpro2k avatar peach1 avatar pepperoni505 avatar pjoe avatar ralith avatar scurest avatar skywolf285 avatar ux3d-becher avatar ux3d-nopper avatar ux3d-soares avatar vitusw42 avatar weckr avatar will-ca avatar windydarian avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.