Real time facial animation package based on muscle model of the face. Includes basic scripting language, full API, animation compositing, tools for creating and exporting muscles in 3D studio max.

Project Activity

See All Activity >

Categories

Games, 3D Modeling

License

Qt Public License (QPL)

Follow Expression Facial Animation System

Expression Facial Animation System Web Site

Other Useful Business Software
Retreat Guru is a retreat marketing and management platform Icon
Retreat Guru is a retreat marketing and management platform

For Retreat centers and retreat leaders who want more efficient operations when it comes to managing their programs.

Get the all-in-one retreat management system that will make it easier for you to manage bookings, rooms, programs, rentals, payments, and more.
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
0
0
0
0
1
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5

User Reviews

  • I couldn't build it. ... g++ -DPACKAGE_NAME=\"EXPRESSION\" -DPACKAGE_TARNAME=\"expression\" -DPACKAGE_VERSION=\"0.1\" "-DPACKAGE_STRING=\"EXPRESSION 0.1\"" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DPACKAGE=\"EXPRESSION\" -DVERSION=\"0.1\" -I. -I. -I. -I../../../sdk/nvmathlib/inc/ -I../../../src/ -g -Wall -MT ExpHead.lo -MD -MP -MF .deps/ExpHead.Tpo -c ExpHead.cpp -fPIC -DPIC -DPIC -o ExpHead.o In file included from ExpHead.cpp:21:0: Exphead.h:25:0: warning: ignoring #pragma warning [-Wunknown-pragmas] #pragma warning (disable:4786) //MS VC++ doesn't like maps ^ In file included from ExpHead.cpp:31:0: ExpMeshAdapter.h:60:8: warning: extra tokens at end of #endif directive #endif EXPMESHADAPTER_H ^ In file included from ExpHead.cpp:21:0: Exphead.h:291:12: error: extra qualification 'ExpHead::' on member 'GetCurrentlySelectedMuscle' [-fpermissive] Muscle * ExpHead::GetCurrentlySelectedMuscle(); ^ Exphead.h:292:27: error: extra qualification 'ExpHead::' on member 'GetMuscleArray' [-fpermissive] std::vector<Muscle *> & ExpHead::GetMuscleArray(){return mMuscleData.mMuscles;} ^ ExpHead.cpp: In member function 'void EyelidGizmo::Activate(float)': ExpHead.cpp:107:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i=0; i < mTaglist.size(); i++) { ^ ExpHead.cpp: In member function 'void FacialLayer::InterpolateExpression(const Expression&, float)': ExpHead.cpp:124:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i=0; i < mOutput.m.size(); i++) { ^ ExpHead.cpp: In member function 'void ExpHead::InitLayers()': ExpHead.cpp:142:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 0; i < mLayers.size(); i++) ^ ExpHead.cpp: In destructor 'MuscleData::~MuscleData()': ExpHead.cpp:196:24: warning: deleting object of abstract class type 'Muscle' which has non-virtual destructor will cause undefined behaviour [-Wdelete-non-virtual-dtor] delete (mMuscles[i]); ^ ExpHead.cpp: In member function 'void ExpHead::ReadTags(const string&)': ExpHead.cpp:227:13: error: 'stderr' was not declared in this scope fprintf(stderr,"Opening error on file:%10s\n", FileName) ; ^ ExpHead.cpp:227:60: error: 'fprintf' was not declared in this scope fprintf(stderr,"Opening error on file:%10s\n", FileName) ; ^ ExpHead.cpp:237:38: error: 'fscanf' was not declared in this scope fscanf ( Infile, "%s", &tagname ) ; ^ ExpHead.cpp:274:17: error: 'fclose' was not declared in this scope fclose(Infile); ^ ExpHead.cpp: In member function 'void MuscleData::ReadMuscles(std::string, std::vector<Morpher*>*, ExpMeshAdapter*)': ExpHead.cpp:305:13: error: 'stderr' was not declared in this scope fprintf(stderr,"Opening error on file:%10s\n", FileName.c_str( ) ); ^ ExpHead.cpp:305:70: error: 'fprintf' was not declared in this scope fprintf(stderr,"Opening error on file:%10s\n", FileName.c_str( ) ); ^ ExpHead.cpp:308:43: error: 'fscanf' was not declared in this scope fscanf ( Infile, "%d", &numberofmuscles ) ; ^ ExpHead.cpp:426:16: error: 'fclose' was not declared in this scope fclose(Infile) ; ^ ExpHead.cpp: In member function 'void ExpHead::CreateMuscleMapping()': ExpHead.cpp:432:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i< NumMuscle(); i ++) { ^ ExpHead.cpp: In member function 'void ExpHead::ReadPrimitives(const string&)': ExpHead.cpp:477:15: error: 'stderr' was not declared in this scope fprintf ( stderr, "can't open input file: %s\n", FileName ) ; ^ ExpHead.cpp:477:63: error: 'fprintf' was not declared in this scope fprintf ( stderr, "can't open input file: %s\n", FileName ) ; ^ ExpHead.cpp:482:41: error: 'fscanf' was not declared in this scope fscanf ( InFile, "%d", &nexpressions ) ; ^ ExpHead.cpp:511:20: error: 'fclose' was not declared in this scope fclose ( InFile ) ; ^ ExpHead.cpp: In member function 'void ExpHead::ReadCompoundPrimitives(const string&)': ExpHead.cpp:566:15: error: 'stderr' was not declared in this scope fprintf ( stderr, "can't open input file: %s\n", FileName ) ; ^ ExpHead.cpp:566:63: error: 'fprintf' was not declared in this scope fprintf ( stderr, "can't open input file: %s\n", FileName ) ; ^ ExpHead.cpp:571:41: error: 'fscanf' was not declared in this scope fscanf ( InFile, "%d", &numofcompound ) ; ^ ExpHead.cpp:644:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (index >= mExpressions.size()){ ^ ExpHead.cpp:672:19: error: 'fclose' was not declared in this scope fclose ( InFile ) ; ^ ExpHead.cpp:558:12: warning: unused variable 'face' [-Wunused-variable] ExpHead *face =this; ^ ExpHead.cpp: In member function 'void ExpHead::PrintCurrentExpression()': ExpHead.cpp:721:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (i=0; i < NumMuscle(); i++){ ^ ExpHead.cpp: In member function 'void ExpHead::OverlayExpression(Expression*, const Expression&, const Expression&)': ExpHead.cpp:764:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i=0; i< res->m.size(); i++) ^ ExpHead.cpp: In member function 'void FacialLayer::InterpolateKeyframes(const Sequence&, float)': ExpHead.cpp:787:7: warning: unused variable 'nkeys' [-Wunused-variable] int nkeys = keylist.keyframes.size(); ^ ExpHead.cpp: In member function 'void ExpHead::ActivateCurrentState()': ExpHead.cpp:830:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(i = 0; i < mLayers.size(); i++) ^ ExpHead.cpp:852:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (i=0; i < NumMuscle(); i++) ^ ExpHead.cpp: In member function 'void ExpHead::DrawMuscles(const MatQ&)': ExpHead.cpp:888:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i=0; i<NumMuscle(); i++ ) { ^ ExpHead.cpp: In member function 'void ExpHead::ProcessEvent(float)': ExpHead.cpp:1027:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 0; i < mLayers.size(); i++) ^ ExpHead.cpp: In member function 'bool ExpHead::ProcessEvent(ExpEvent*, int)': ExpHead.cpp:1055:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (current->message >= mExpressions.size()) { ^ ExpHead.cpp:1046:10: warning: enumeration value 'playbackSingle' not handled in switch [-Wswitch] switch (current->type) { ^ ExpHead.cpp:1046:10: warning: enumeration value 'nextExp' not handled in switch [-Wswitch] ExpHead.cpp: In member function 'void ExpHead::SelectNextMuscle()': ExpHead.cpp:1132:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (current_muscle >= (NumMuscle())){ ^ ExpHead.cpp: In member function 'const string ExpHead::GetCurrentlySelectedMuscleName()': ExpHead.cpp:1153:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (current_muscle < (NumMuscle()) && current_muscle >= 0){ ^ ExpHead.cpp: In member function 'Muscle* ExpHead::GetCurrentlySelectedMuscle()': ExpHead.cpp:1162:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (current_muscle < (NumMuscle()) && current_muscle >= 0){ ^ ExpHead.cpp: In member function 'const Expression& ExpHead::GetExpression(const string&)': ExpHead.cpp:1206:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(ret!= -1) ^ Makefile:287: recipe for target 'ExpHead.lo' failed make[3]: *** [ExpHead.lo] Error 1 make[3]: Leaving directory '/home/stephane/devel/expression/ExpDemo1.2_linux/src/expression/ExpressionLib' Makefile:176: recipe for target 'all-recursive' failed make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory '/home/stephane/devel/expression/ExpDemo1.2_linux/src/expression' Makefile:176: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/stephane/devel/expression/ExpDemo1.2_linux/src' Makefile:190: recipe for target 'all-recursive' failed make: *** [all-recursive] Error 1
Read more reviews >

Additional Project Details

Operating Systems

Windows

Intended Audience

Developers

Programming Language

C++

Related Categories

C++ Games, C++ 3D Modeling Software

Registered

2000-10-29