Giter VIP home page Giter VIP logo

nguyenvuducthuy / linear-blend-skinning Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gbyfbi/linear-blend-skinning

0.0 2.0 0.0 3.61 MB

Implement Linear Blend Skinning in C++ and OpenGL to achieve the ability to move bones on a character model and have the mesh move realistically, such as in 3D Modeling Programs like Maya and Blender. Cooperative Project for UT Austin Computer Graphics Class

CMake 0.89% C++ 97.88% C 0.17% Shell 0.08% GLSL 1.00%

linear-blend-skinning's Introduction

https://www.cs.utexas.edu/~theshark/courses/cs354/assignments/assignment_5.shtml

Getting Started

Build

You are already quite familar with the graphics projects, so TL;DR:

mkdir build
cd build
cmake ..
make -j8

Execution

cd build
./bin/skinning ../assets/pmd/Meiko_Sakine.pmd

You need to provide a .pmd file to launche the skinning code. A set of PMD files have been shipped under assets/pmd directory.

Notes about the skeletion code

The skeleton code is trimmed from the reference code, which has a RenderClass to simplify the multi-pass rendering. However, this class is somewhat sophisticated. If you find it is quite hard to understand the RenderClass, do NOT use it. Testing your C++ skill is not a part of this assignment.

Package for submission

The submitted package assumes the same file structure as the published one. You should check your submission with the command

./skinning_testpackage.sh <your package file name>

You should get a "Build successfully" message from the script, and a skinning.bin as the build result.

skinning_testpackage.sh is a script under the skinning/ directory.

WARNING: THIS SCRIPT RUNS rm -rf skinning AS THE LAST STEP FOR CLEAN UP. BACKUP YOUR CODE AND RUN IT IN A SAFE PLACE (LIKE $HOME/tmp) TO AVOID ANY POSSIBLE DISASTER.

Acknowledgement

This bone animation code is based on the skinning project written by Randall Smith for 2015 Spring Graphics Course.

The PMD parser library is written by itsuhane, licensed under Boost Software License.

The author of PMD models is Animasa, you can download the model with the official editor from his webpage VPVP.

linear-blend-skinning's People

Contributors

rishi-amarnani avatar nkabbs avatar gbyfbi avatar

Watchers

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