Giter Site home page Giter Site logo

mmdloader's Introduction

MMDLoader

MMDLoaderExample

(c) model : http://mikumikudance.wikia.com/wiki/Miku_Hatsune_(Lat) (c) motion: http://mmd.nomeu.org/thumbs/sm13622845

Simple MMD(PMD, VMD) loader in C++. MMDLoader is written in portable manner. No dependency except for C++ STL.

Usage

Simply copy mmd_*, pmd_* and vmd_* files to your project.

Code sample in quick

#include "pmd_reader.h"
#include "vmd_reader.h"
#include "mmd_scene.h"
#include "mmd_math.h"

PMDModel* model = NULL;
VMDAnimation* anim = NULL;
MMDScene* scene = NULL;

char* pmdmodel = "input.pmd";
char* vmdmodel = "input.vmd";

PMDReader pmdreader;
model = pmdreader.LoadFromFile(pmdmodel);
assert(model);

VMDReader vmdreader;
anim = vmdreader.LoadFromFile(vmdmodel);
assert(anim);

MMDScene* scene = new MMDScene();
scene->SetModel(model);
scene->AttachAnimation(anim);

Example

OpenGL(GLUT) example viewer is included(see viewer_main.cc).

Features

Supported

  • PMD model loading.
  • VMD motion loading.
  • Bone animation(IK).
  • Morph.

TODOs (Contributors welcome!)

  • Physics(Bullet)
    • W.I.P.

Compiling example

Here is the list of premake options.

--with-glm          : Use glm
--with-bullet       : Use Bullet physics(Set path to bullet in `premake4.lua`)
--with-euler-camera : Use Euler camera(Adds glm dependency)

Author

Syoyo Fujita([email protected])

Contributor(s)

Jerry Chen([email protected]) : glm, Bullet physics, Euler camera, split screen vr

License

3-clause BSD.

mmdloader's People

Contributors

onlyuser avatar syoyo avatar

Watchers

James Cloos 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.