Giter VIP home page Giter VIP logo

motionvaes-webgl's Introduction

Motion VAEs WebGL Demo

This repo contains the source code for the Motion VAE WebGL demo.

Quick Start

To run the demo locally, simply start a web server in the project folder.

git clone https://github.com/belinghy/MotionVAEs-WebGL.git
cd MotionVAEs-WebGL
python -m http.server

Make sure your browser supports WebGL, then go to http://localhost:8000/ or wherever the server is pointed to.

The web server is to bypass the CORS problem, since modern web browsers do not allow accessing of the user's filesystem.

Controls

  • Place target: Ctrl-click
  • Change joystick direction: Ctrl-click or WASD
  • Clicking reset in the GUI will reset the character to the centre

Citation

If you found our research useful, please cite the following paper.

@article{2020-TOG-MVAE,
  author    = {Hung Yu Ling and Fabio Zinno and George Cheng and Michiel van de Panne},
  title     = {Character Controllers Using Motion VAEs},
  journal   = {ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH)},
  publisher = {ACM},
  volume    = {39},
  number    = {4},
  year      = {2020}
}

motionvaes-webgl's People

Contributors

belinghy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

motionvaes-webgl's Issues

About joint positions, velocity and orientations

Hi, thanks for your really awesome work. I have one simple question regarding to the implementation. In the paper, the input and output of VAE both contains joint positions, velocity and orientations (or angles).

However, if I'm not wrong, the joint positions and orientations are interchangable, which means they could be transformed to each other with some formulas. The same happens to velocities and positions. If so, why should we generate them both? I'm also not sure if the positions, velocity and oritentations are generated in parallel, or the velocities and orientations are extracted from the generated positions.

Thanks you in advance. Look forward to your reply.

How to drive the character with 6D joint orientations?

Sorry to open a new issue. And, i still have two problems.
Firstly, could you please provide more details about how to generate root delta x, delta y, delta facing?

Secondly, could you please show how to drive the character with 6D joint orientations rather than positions? Actually, i have tried to drive the character with the 6D joint orientations for weeks, but cannot get correct results. With the 6D joint orientations, i perform a series of operations, such as denormalization, convert to local space, convert to rotation matrix and Euler angle. Could you please show me how to use the 6D joint orientations correctly?

About 6D joint orientations

Hi, sorry for opening a new issue. But I'm quite interested in your work. In the paper, you mentioned "Joint orientations (๐‘— ๐‘Ÿ โˆˆ R 6 ) are represented using their forward and upward vectors, which avoids the problems of angle-based representations."

Would you mind being a little more specific? I checked the referred literature, but there's not many details. Is it the proposed rotation represenation in "On the Continuity of Rotation Representations in Neural Networks", which is exactly the first two columns of the rotation matrix? Or I would appreciate it very much if you could refer some materials or code I could look in.

Thanks in advance.

How to get mocap.npz?

Hi, thanks for your really awesome work. Now, i want to use the mvae model to drive the virtual character. Unfortually, when i use the 6D joint rotation information, the virtual character cannot act correctly. I need more detail of how to generate the mocap.nzp to use the 6D joint rotation information correctly.
Could you please offer more detail of how to generate the mocap.nzp dataset with corresponding python script?

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.