Canvas 3d JS Library

WebGL made easy!
  • rss
  • What is C3DL?
  • Download
  • Tutorials
    • Tutorial #1: WebGL Browsers
    • Tutorial #2: A simple scene
    • Tutorial #3: Callback
    • Tutorial #4: Models
    • Tutorial #5: Light effects
    • Tutorial #6: Picking
    • Tutorial #7: Materials
    • Tutorial #8: Particle Systems
    • Tutorial #9: Camera Basics
    • Tutorial #10: Advanced FreeCamera
    • Tutorial #11: OrbitCamera
    • Tutorial #12: Advanced Camera Functions
  • Development News
  • Documentation
  • Community
  • Resources
  • Contact
  • About

Motionview – C3DL in a Motion Capture Application

Cathy Leung | 24 September, 2009 | 16:31
For those of you following the c3dl.org blog for the last few months you probably noticed that quite a bit of it since January was about motion capture, lines and dots.  We had spent a considerable amount of time working on dots and lines and we became somewhat obsessive about presenting motion capture data.  It may seem somewhat strange as it seemed like the project veered away from what it was doing and went off on a wild tangent.  This is actually not the case of what was happening.  We were actually involved with working on a really interesting project that showed how 3D in the browser could actually be useful in a real application.  Now that the application is completed, we can talk about it in more details. The Project Around late November of 2008, we were approached by Bedlams Games to be part of a project to create a motion capture preview application.  The project was a joint initiative between The Navarra Group, Bedlam Games, CORE and Seneca College.  Motionview, the application built for the project, was made possible with the support of the Ontario Media Development Coporation on behalf of the Ministry of Culture.
About Motion Capture Motion capture is the process of capturing the movements of actors and using the data to make realistic animations within a game.  The Vicon motion capture system uses a suit where balls of highly reflective material is attached.  Multiple cameras mounted around a studio capture the positions of these balls as an actor moves about in this space.  A computer program then uses this information  to create a model of the movement of the actor. Once the movements are capture, the computer then uses that information to generate motion capture data that can be used by other 3D modeling programs. Clean Up Problem The motion capture data that is generated initially is not flawless. The computer will often identify the balls wrongly and sometimmocaperrores the balls can go completely missing because none of the cameras were able to see it (when the actor is lying on the ground for example.) You can see some of these problems in our demo where we played uncleaned motion capture data. For example in the shot named “stroll”, you can see how the computer think the big toe on one foot is attached to the thigh of the other leg. In order for the raw data to be usable in animation, it must first go through a clean up process. This process involves fixing all the little problems that occur during the motion capture process. Game companies often do not have their own motion capture facility due to its expense.  Instead time is booked at a motion capture studio which will provide the space and equipment to the game company.  Once the shots are made, all the data is cleaned and sent back to the game company.  The problem with this is that the motions captured are not always fully utilized. Only a portion of the shots made are actually used and yet all of the data is cleaned.  Motionview, makes it possible for the artist at the game company to indicate which shots (and portions of shots) need to be cleaned and communicate that to the technicians doing the actual clean up at the motion capture studio. Presentation problem Presenting motion capture data over the web is not a straight forward task.  The issues that need to be addressed include:
  • volume of data,  raw mocap data files are huge.  Moves can be shot at over 100 frames per sec.   Multiply that by an entire day’s worth of shots and sending this data would be no small feat
  • data security.  The cost of studio rental and cleanup means that the shots captured have a huge cost associated with it.  Traditionally only the final cleaned up data leaves the studio and this is done with CD’s and not over the web.
  • visual presentation of motion capture data is necessary.  The artists need to be able to see the shots in order to determine how useful they are.
A problem meets a solution Before I countinue, I would like to thank the guys at the Navarra group for agreeing to use C3DL in Motionview.  I am extremely pleased to know that C3DL got used in a real non-trivial web application. I would like to thank them for their supportive use of open source software in their work. Originally, Seneca’s portion of software development to this project was initially suppose to be the production of a converter program.  Due to the volume of data and the importance of data security of raw mocap data, sending that over the web is not really an option.  Thus, a converter would be necessary to change the data into a down sampled format so that it can be transmitted over a web application.  With our work over the past year or so on C3DL, we suggested using it to provide the visual delivery of the data as opposed to something like flash.  We knew that C3DL would have the capabilities to delivering the content in the browser.  It would be the first real non-trivial use of the library that we know of. Over the winter and spring, the project continued along.  Our trail of blogs about lines and dots continued to grow while little demos on displaying motion capture data made its way onto our site.  Motionview was tested a few weeks ago and the results were very positive.  Tweaks are still being made here and there but all in all the project proved to be a success. Screenshots and demo movie to come in a future blog!
Categories
C3DL News, c3dl development
Comments rss
Comments rss
Trackback
Trackback

« As long as there’s coffee in CDOT Motionview Video »

3 responses

[...] found respect for people who do voice overs.  In

Canvas 3d JS Library » Motionview Video | 1 October, 2009 | 3:49

[...] found respect for people who do voice overs.  In any case here is the video I had promised in my earlier post about Motionview.  If a picture is worth a thousand words, how many words are videos [...]

This application is not very perfect.I am doing a application

Haisens | 11 August, 2011 | 3:00

This application is not very perfect.I am doing a application like yours using motion capture system of Vicon.I need the output data of that system.Then a character model is drived by the data.Can C3DL work with it now?

That depends on what you mean by 'work with it',

peter | 16 August, 2011 | 9:23

That depends on what you mean by ‘work with it’, but we developed Motionview using data from a Vicon system and I have been keeping it updated as the library continues to develop, so the answer is probably yes.

Leave a comment

You can use these tags : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Videos

Demos

  • Asteroids-3D
  • RTS Prototype
  • Particle Systems Demo
  • Cross-Browser Orbiter
  • Mocap Demo With Spheres
  • Google Maps-3D

C3DL Development News

A spec change that keeps coming back to haunt me

At some point, the way firefox handles keyboard events changed. I’m not sure exactly when it happened, all I know is that it broke how I was dealing with keyboard interaction on almost every demo I’ve written (for example,the mocap demo and MotionView). When I wrote the demos, the keydown event would be fired once, [...]

Release 2.2

The 2.2 Release of the Canvas 3D Library includes a number of new features, updates to old features and fixes for several bugs along with the requisite changes to meet the evolving WebGL spec. Some of the things included (in no particular order) are: Better picking code. The ability to swap textures as a scene [...]

Tutorials

  • Tutorial #1: WebGL Browsers
  • Tutorial #2: A simple scene
  • Tutorial #3: Callback
  • Tutorial #4: Models
  • Tutorial #5: Light effects
  • Tutorial #6: Picking
  • Tutorial #7: Materials
  • Tutorial #8: Particle Systems
  • Tutorial #9: Camera Basics
    • Tutorial9-YawPitchRoll
  • Tutorial #10: Advanced FreeCamera
  • Tutorial #11: OrbitCamera
  • Tutorial #12: Advanced Camera Functions

Documentation

Archives

Archives

C3DL Development News

Recent Comments

  • June 2011
  • March 2011
  • October 2010
  • July 2010
  • April 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • July 2009
  • June 2009
  • May 2009
  • April 2009
  • March 2009
  • February 2009
  • January 2009
  • December 2008
  • November 2008
  • October 2008
  • September 2008
  • August 2008
  • July 2008
  • June 2008
  • May 2008
  • April 2008
  • March 2008
  • February 2008
  • January 2008
  • December 2007
  • A spec change that keeps coming back to haunt me
  • Release 2.2
  • 2.1 Release and things to come
  • Level Up! An Open Web Game Jam
  • Site moved!
  • SceneCreator0.3
  • WWW2010 in Raleigh
  • Motionview
  • On the train to Mountainview
  • C3DL 2.0-WebGL and beyond
  • That depends on what... - peter
  • This application is ... - Haisens
  • I think that example... - peter
  • The above links are ... - Atash
  • Hi there, just wante... - Patrick H. Lauke
  • Firefox 4 was releas... - Cathy Leung
  • In order to access l... - peter
  • I am not able to dis... - preksha
  • "JavaScript can’t di... - Joe Hocking
  • I should point out t... - peter



Canvas 3d JS Library

©2007- 2010 Canvas 3d JS Library

Disclaimer: This website is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 2.5 Canada License.
The Canvas 3d JS Library and Demos found on this website are licenced under the MIT License

Creative Commons License