All Projects → KhronosGroup → Unitygltf

KhronosGroup / Unitygltf

Licence: mit
Runtime GLTF Loader for Unity3D

Projects that are alternatives of or similar to Unitygltf

Gltfast
glTF runtime loading library for Unity
Stars: ✭ 156 (-83.32%)
Mutual labels:  unity3d, gltf
Timelinetool
Provides an easy way to change Playable Director's Bindings and Clips at runtime.
Stars: ✭ 24 (-97.43%)
Mutual labels:  unity3d
2d Spaceshooter
A very simple 2D space shooter game made with Unity
Stars: ✭ 6 (-99.36%)
Mutual labels:  unity3d
Tinygltf
Header only C++11 tiny glTF 2.0 library
Stars: ✭ 905 (-3.21%)
Mutual labels:  gltf
Bindingrx
🔗Data binding components for Unity3d upm package
Stars: ✭ 17 (-98.18%)
Mutual labels:  unity3d
Obj2gltf
Convert OBJ assets to glTF
Stars: ✭ 912 (-2.46%)
Mutual labels:  gltf
Lasp
Low-latency Audio Signal Processing plugin for Unity
Stars: ✭ 816 (-12.73%)
Mutual labels:  unity3d
Voxelengine unity
Voxel engine made in C# for Unity
Stars: ✭ 25 (-97.33%)
Mutual labels:  unity3d
Xeogl
A WebGL-based 3D engine for technical visualization. Not actively maintained.
Stars: ✭ 920 (-1.6%)
Mutual labels:  gltf
Tracerysharp
C#/Unity port of Tracery (heavily WIP)
Stars: ✭ 19 (-97.97%)
Mutual labels:  unity3d
Ffmpegoutbinaries
Separated binary package of FFmpegOut Unity plugin
Stars: ✭ 19 (-97.97%)
Mutual labels:  unity3d
Buttons And Boxes
A Sokoban-esque puzzle game developed in unity 3D in 2016
Stars: ✭ 17 (-98.18%)
Mutual labels:  unity3d
Gltfpp
glTF 2.0 loader for C++14
Stars: ✭ 22 (-97.65%)
Mutual labels:  gltf
Unity3d Class Type Reference
An example npm package that contains some example assets to demonstrate how to create a package for use in games made using the Unity game engine.
Stars: ✭ 16 (-98.29%)
Mutual labels:  unity3d
Tower Defense Game
this is a game made with Unity, the goal is to protect the tower against robots.
Stars: ✭ 25 (-97.33%)
Mutual labels:  unity3d
Utymap
Highly customizable library for procedural world generation based on real map data
Stars: ✭ 825 (-11.76%)
Mutual labels:  unity3d
Number Wizard Ui Original
Introducing basic User Interface in the Complete Unity C# Developer 2D course (http://gdev.tv/cudgithub)
Stars: ✭ 18 (-98.07%)
Mutual labels:  unity3d
Simpleunitytcp
🖧 Simple Unity Project to show how TCP communication are builded in C# without multi-threading or Unity network (Unet) involved.
Stars: ✭ 22 (-97.65%)
Mutual labels:  unity3d
Uduino
Simple and easy connection between Arduino and Unity
Stars: ✭ 25 (-97.33%)
Mutual labels:  unity3d
Moonsharp
An interpreter for the Lua language, written entirely in C# for the .NET, Mono, Xamarin and Unity3D platforms, including handy remote debugger facilities.
Stars: ✭ 926 (-0.96%)
Mutual labels:  unity3d

UnityGLTF

UnityGLTF: Build Status

GLTFSerialization: Build status

Join the chat at https://gitter.im/KhronosGroup/UnityGLTF

Unity3D library for importing and exporting GLTF 2.0 assets.

The goal of this library is to support the full glTF 2.0 specification and enable the following scenarios:

  • Run-time import of glTF 2.0 files
  • Run-time export of glTF 2.0 files
  • Design-time import of glTF 2.0 files
  • Design-time export of glTF 2.0 files

The library will be modularized such that it can be extended to support additional capabilities in Unity or support additional extensions to the glTF specification. The library was designed to work with Unity 5.6 and above, but is currently only tested/maintained/supported with Unity 2018 and above.

Current Status

Work Items and Issues targeting a 1.0 release of the library can be found in Road to 1.0

Getting Started

  • This section is dedicated to those who wish to contribute to the project. This should clarify the main project structure without flooding you with too many details.
  • UnityGLTF project is divided into two parts: the GLTFSerializer (Visual Studio Solution), and the Unity Project (which is the package we wish to make available to users).

GLTFSerializer

  • Basic Rundown: The GLTFSerializer is a C# DLL implemented to facilitate serialization of the Unity asset model, and deserialization of GLTF assets.

  • Structure:

    • Each GLTF schemas (Buffer, Accessor, Camera, Image...) extends the basic class: GLTFChildOfRootProperty. Through this object model, each schema can have its own defined serialization/deserialization functionalities, which imitate the JSON file structure as per the GLTF specification.
    • Each schema can then be grouped under the GLTFRoot object, which represents the underlying GLTF Asset. Serializing the asset is then done by serializing the root object, which recursively serializes all individual schemas. Deserializing a GLTF asset is done similarly: instantiate a GLTFRoot, and parse the required schemas.
  • Building: You will need to build this library into the Plugins folder of the core Unity project:

    1. Open GLTFSerialization\GLTFSerialization.sln and compile for release. This will put the binaries in UnityGLTF\Assets\UnityGLTF\Runtime\Plugins.
    2. Open the Unity project located in UnityGLTF\.
      • If the meta file gets overridden, the binaries in UnityGLTF\Assets\UnityGLTF\Runtime\Plugins should be configured for everything but UWP. The binaries in UnityGLTF\Assets\UnityGLTF\Runtime\Plugins\UWP should be configured for UWP.

The Unity Project

  • Unity Version Be sure that the Unity release you have installed on your local machine is at least the version configured for the project (using a newer version is supported). You can download the free version here. You can run this project simply by opening the directory as a project on Unity.
  • Project Components The Unity project offers two main functionalities: importing and exporting GLTF assets. These functionalities are primarily implemented in GLTFSceneImporter and GLTFSceneExporter.

The Server-Side Build

For details on the automated server-side builds and how to update them, see \scripts\ServerBuilds.md.

Examples

  1. Clone or download the repository (including submodules).
  2. Open up the Unity project and run any of the example scenes in Assets/GLTF/Examples OR run the main scene in Assets and use the Model List component to dynamically switch between models.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].