All Projects → you-win → godot-dynamic-gltf-loader

you-win / godot-dynamic-gltf-loader

Licence: MIT license
Dynamic GLTF loader module for Godot 3.2.4+

Programming Languages

C++
36643 projects - #6 most used programming language

Labels

Projects that are alternatives of or similar to godot-dynamic-gltf-loader

binary-gltf-utils
Bundles glTF models, images, shaders and other assets into a Binary glTF (.glb) file.
Stars: ✭ 31 (+121.43%)
Mutual labels:  gltf
godot recipes
Lessons, tutorials, and guides for game development using the Godot game engine.
Stars: ✭ 135 (+864.29%)
Mutual labels:  godot
godot-InventorySystem
Easily modifiable Inventory System ready for use. If you need anything further, you can add it.
Stars: ✭ 27 (+92.86%)
Mutual labels:  godot
Unidot-Importer
Godot Addon to import .unitypackage and other assets designed for Unity Engine.
Stars: ✭ 42 (+200%)
Mutual labels:  godot
autotiler
Autotile 47-tile blob tileset generator application with Godot export support. Based on Electron JS.
Stars: ✭ 32 (+128.57%)
Mutual labels:  godot
gdinv
More or less universal inventory system plugin for Godot Engine (3.3+). Data-driven.
Stars: ✭ 69 (+392.86%)
Mutual labels:  godot
lol2gltf
Tool for converting between the glTF format and League of Legends models and animations
Stars: ✭ 74 (+428.57%)
Mutual labels:  gltf
gdosc
OSC module for Godot game engine - it is now discontinued in favor of https://gitlab.com/frankiezafe/gdosc
Stars: ✭ 14 (+0%)
Mutual labels:  godot
Space-Frontier
A reimagining of the game of my childhood - Stellar Frontier
Stars: ✭ 18 (+28.57%)
Mutual labels:  godot
Godot3-Win64-LSW-Build
Modularized build of Godot 3 ( Win x64 ) with MSVC without SCons will be updated after Godot 4 is published
Stars: ✭ 18 (+28.57%)
Mutual labels:  godot
gemini-viewer
WebGL BIM Viewer based on xeoKit-sdk, written with TypeScript.
Stars: ✭ 24 (+71.43%)
Mutual labels:  gltf
godot-cpp-ci
Docker image and Github Actions to automatically compile Godot C++ GDNative libraries.
Stars: ✭ 21 (+50%)
Mutual labels:  godot
godot-engine.supabase
A lightweight addon which integrates Supabase APIs for Godot Engine out of the box.
Stars: ✭ 39 (+178.57%)
Mutual labels:  godot
godot-extras
My collection of various plugins, modules, or patches for Godot
Stars: ✭ 108 (+671.43%)
Mutual labels:  godot
GodotTerrainEditorPainter
Heightmap based terrain editor plugin for GODOT with vertex color based terrain shader painting
Stars: ✭ 23 (+64.29%)
Mutual labels:  godot
Realistic-Atmosphere-Godot-and-UE4
A realistic atmosphere material for both the Godot game engine and Unreal Engine 4
Stars: ✭ 119 (+750%)
Mutual labels:  godot
VisualNovelKit
Combo of addons + template to create narrative games in Godot inspired by Ren'Py
Stars: ✭ 78 (+457.14%)
Mutual labels:  godot
godot-sponza
Sponza demo for Godot 3.x (`master` branch) and 4 (`4.0-dev` branch)
Stars: ✭ 133 (+850%)
Mutual labels:  godot
lottie
No description or website provided.
Stars: ✭ 18 (+28.57%)
Mutual labels:  godot
redcube
JS renderer based on GLTF to WebGPU or WebGL backends.
Stars: ✭ 86 (+514.29%)
Mutual labels:  gltf

Archived! Use the V-Sekai module or GDNative plugin. The GDNative plugin will allow you to use the normal release templates.

If your project is on 3.4, then you can use my release templates here. Runtime GLTF loading is supported in Godot 3.4 but disabled in release builds for whatever reason. To build the template for yourself, run something like: scons platform=windows target=release tools=no module_gltf=yes -j8 . I provide precompiled release templates here.

In Godot 3.4, this API is exposed:

var gltf_loader := PackedSceneGLTF.new()
var model = gltf_loader.import_gltf_scene("some_file_path.glb")

Godot Dynamic GLTF Loader

A module for Godot that allows for loading gltf/glb data at runtime for Godot 3.2.4+

Quickstart

Clone the Godot repository and switch to the 3.2 branch. Place the dynamic_gltf_loader folder into the modules folder in Godot's directory. Compile the engine for your platform (e.g. Windows: scons platform=windows target=release_debug bits=64). Run the resulting binary that was generated in the bin folder. The DynamicGLTFLoader class will be exposed in GDScript.

var loader = DynamicGLTFLoader.new()
# Params are "path", "flags", "bake_fps"
# Not sure what flags or bake_fps are really supposed to be right now
var model = loader.import_scene("C:\\my\\path.glb", 1, 1)

The result should be close to what the editor generates.

In order to export your game, you will need to compile new export templates. Please refer to the Godot documentation on how to do that for your platform.

Motivation

openseeface-gd needed the ability to load models at runtime, so I ripped out the gltf loader from Godot and made it into a proper module so it wouldn't be stripped out during export.

Technical Implementation

I copy pasted the relevant resource importers, changed the names to prevent name conflicts, and stripped out extraneous references to editor-specific code lmao

dynamic_gltf_loader.cpp exposes the single method needed to import a gltf or glb file.

Godot 4.0 has a dynamic gltf loader written for it so this was a hack to avoid wasting time on porting it back to 3.2.4.

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].