All Projects → virtual-cast → babylon-vrm-loader

virtual-cast / babylon-vrm-loader

Licence: MIT license
glTF VRM extension Loader for babylon.js

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to babylon-vrm-loader

vrm pp
Small C++ preprocessor library
Stars: ✭ 12 (-84.42%)
Mutual labels:  vrm
generative
Creative coding experiments
Stars: ✭ 71 (-7.79%)
Mutual labels:  babylonjs
UniVRMExtensions
pokemori.booth.pm/items/1788660
Stars: ✭ 25 (-67.53%)
Mutual labels:  vrm
detect-gpu
Classifies GPUs based on their 3D rendering benchmark score allowing the developer to provide sensible default settings for graphically intensive applications.
Stars: ✭ 749 (+872.73%)
Mutual labels:  babylonjs
vrm core
Lightweight C++14 utility library. (Modernized, stripped and cleaned-up version of SSVUtils.)
Stars: ✭ 31 (-59.74%)
Mutual labels:  vrm
ecsy-babylon
Experimental implementation of ECSY for babylon.js.
Stars: ✭ 28 (-63.64%)
Mutual labels:  babylonjs
PolyDraw
✳️ PTSource PolyDraw is a free 3D polygonal modeller for Windows x86 and x64, for creating or modifying 3D objects using a mesh of 3D points and parametric NURBS Curves .Exports and imports to over 40 formats including WebVR and 3D Printing.
Stars: ✭ 17 (-77.92%)
Mutual labels:  vrm
ARFaceFilter
Javascript/WebGL lightweight face tracking library designed for augmented reality webcam filters. Features : multiple faces detection, rotation, mouth opening. Various integration examples are provided (Three.js, Babylon.js, FaceSwap, Canvas2D, CSS3D...).
Stars: ✭ 72 (-6.49%)
Mutual labels:  babylonjs
WalkTheWeb
WalkTheWeb 3D Internet - Metaverse - Multiverse - Host your own multiplayer Metaverse of 3D Games, 3D Shopping, and 3D Scenes!
Stars: ✭ 28 (-63.64%)
Mutual labels:  babylonjs
sketch360
Cross-Platform 360 Degree Panoramic Sketching App
Stars: ✭ 37 (-51.95%)
Mutual labels:  babylonjs
simple-3d-fps
A simple FPS game with BabylonJS engine following Clean Code principles
Stars: ✭ 44 (-42.86%)
Mutual labels:  babylonjs
VMCAvatar-BS
VRM avatar loader with Virtual Motion Capture for Beat Saber
Stars: ✭ 106 (+37.66%)
Mutual labels:  vrm
voxel-builder
Voxel-based 3D modeling application
Stars: ✭ 31 (-59.74%)
Mutual labels:  babylonjs
Babylon.Font
Generate text mesh for BabylonJS using WASM, written in AssemblyScript.
Stars: ✭ 22 (-71.43%)
Mutual labels:  babylonjs
endless-runner-3d
Cube Endless Runner is a 3D game built with BabylonJS engine on top of WebGL and HTML5 technologies
Stars: ✭ 29 (-62.34%)
Mutual labels:  babylonjs
SwagThreeSixtyViewer
No description or website provided.
Stars: ✭ 23 (-70.13%)
Mutual labels:  babylonjs
VRMKit
VRM loader and VRM renderer (3D model / gltf)
Stars: ✭ 85 (+10.39%)
Mutual labels:  vrm
three-vrm
⚠️ [deprecated] VRM file loader for three.js
Stars: ✭ 44 (-42.86%)
Mutual labels:  vrm

babylon-vrm-loader

npm version CircleCI semantic-release

alicia.png

VRM porting to babylon.js.

This loader is used as THE SEED ONLINE web VRM/VCI/glb viewer.

Supported version table

babylon.js version babylon-vrm-loader version
~4.1.0 <1.5.0
~4.2.0 ^1.5.0
~5.x unreleased(will be ^2.0.0)

Features

  • Supports .vrm file loading
    • with extensions.VRM glTF Extension
  • Supports .vci file loading
  • Supports MToonMaterial
  • Get bone(TransformNode) from Unity Humanoid bone mapping name
  • BlendShape morphing
  • Secondary Animation
  • Supports VCI features(partial support)
    • VCAST_vci_material_unity
    • TODO: VCAST_vci_meta
    • TODO: VCAST_vci_embedded_script
    • TODO: VCAST_vci_audios
    • TODO: VCAST_vci_colliders
    • TODO: VCAST_vci_rigidbody
    • TODO: VCAST_vci_joints
    • TODO: VCAST_vci_item

Usage

on browser

example is here.

on Babylon.js Playgound

example is here.

with npm/yarn

$ npm install --save @babylonjs/core @babylonjs/loaders babylon-vrm-loader
# or
$ yarn add @babylonjs/core @babylonjs/loaders babylon-vrm-loader
import * as BABYLON from '@babylonjs/core'

// has side-effect
// ref. https://webpack.js.org/guides/tree-shaking#mark-the-file-as-side-effect-free
import 'babylon-vrm-loader'

// vrmFile is File object retrieved by <input type="file">.
const scene = await BABYLON.SceneLoader.LoadAsync('file:', vrmFile, engine);
const vrmManager = scene.metadata.vrmManagers[0];

// Update secondary animation
scene.onBeforeRenderObservable.add(() => {
    vrmManager.update(scene.getEngine().getDeltaTime());
});

// Model Transformation
vrmManager.rootMesh.translate(new BABYLON.Vector3(1, 0, 0), 1);

// Work with HumanoidBone
vrmManager.humanoidBone.leftUpperArm.addRotation(0, 1, 0);

// Work with BlendShape(MorphTarget)
vrmManager.morphing('Joy', 1.0);

Contributing

See CONTRIBUTING.md.

Build

$ yarn build

Debugging MToonMaterial

$ yarn debug

You can see inspector on http://localhost:8080/

Related Links

Licenses

see LICENSE.

This project uses babylon.js with Apache License, Version 2.0.

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