Wednesday, September 30, 2009

Haptek Characters

Haptek is the best example of how overpriced products can fail your business. Their real-time 3D engine, although originally designed for Windows 95 (can you believe that? 14 years ago) and its still the best in the market. I heavily modified their fullBod character for the needs of my project, and now comes with:
 
1) 2000 animations that covers almost every project needs.
2) Dynamic clothes pants, top and shoes. Character clothes are separate models animated to flow naturally with every character movements (even walking). Clothes have more than 2000 animations to achieve that. Animations and clothe took more than a year to complete.
3) Several textures for both top and pants.
4) A script parser that allows automatic creation and cleaning of Haptek scripts.


The Talos script parser as I call it, features the following:
 
a) Automatic creation of script ready to be executed by the Haptek engine. For example, Talos will convert the following text into a script that accurately animates the character, top, pants and shoes in sync with the text:
(open_tag) BOOKMARK mark=‘anim,suggest’ (close_tag) Can I suggest you to have a look on wall (open_tag)BOOKMARK mark=‘anim,show_sea’(close_tag) that goes down the bold cliff and towards the sea?

Note: Open_tag and close_tag stand for the standard opening and closing tags. For some reason I can not display them here, correctly.b) Accurate extraction of tags from already tagged texts. These tags (shown above in red) can easily be used in Talos to tag texts in any language.

c) Single/batch conversion of any text to .ogg format (the sound format used by the Haptek engine).
d) Ability to use SAPI 5.0 compatible tags in your texts. Usage of Loquendo compatible tags is also possible. These tags add realistic effects (e.g., sneezing, laughter) to Loquendo TTS voices (e.g., (http://tts.loquendo.com/ttsdemo/default.asp?page=id&language=en) but work only with the Loquendo voices.
e) Limited automatic tagging of texts. Talos script parser allow you to automatically and accurately tag a given text. Currently works only with a limited set of texts, but I am working hard to extend it.
If you want to use the character in your projects please email me at: virtual.guide.systems at googlemail.com. An example of a script created by the script parser:
#Haptek Version= 2.00 Name=LocC_HB.hap HapType= script FileType= text
## world It
##prereq= none
\clock [t= 0.0] \load [file= [sounds\LocC_HB.ogg]]
\clock [t= 0] \SetSwitch [figure= fullBod switch= during state= start]
\clock [t= 3] \SetSwitch [figure= fullBod switch= propably state= start]
\clock [t= 5.1] \SetSwitch [figure= fullBod switch= used state= start]
\clock [t= 9] \SetSwitch [figure= fullBod switch= when state= start]
\clock [t= 11] \SetSwitch [figure= fullBod switch= retake state= start]
\clock [t= 13.1] \SetSwitch [figure= fullBod switch= converted state= start]
\clock [t= 18] \SetSwitch [figure= fullBod switch= retake state= start]
\clock [t= 21] \SetSwitch [figure= fullBod switch= and_the state= start]
\clock [t= 23] \SetSwitch [figure= fullBod switch= become_again state= start]
\clock [t= 26.4] \SetSwitch [figure= fullBod switch= after state= start]
\clock [t= 31] \SetSwitch [figure= fullBod switch= while state= start]
\clock [t= 35] \SetSwitch [figure= fullBod switch= today state= start]
\clock [t= 38.75] \SetSwitch [figure= fullBod switch= from_the state= start]
\clock [t= 40.85] \SetSwitch [figure= fullBod switch= name state= start]
\clock [t= 42.7] \SetSwitch [figure= fullBod switch= contradictory2 state= start]
\clock [t= 44.6] \SetSwitch [figure= fullBod switch= exist_near state= start]
\clock [t= 48] \SetSwitch [figure= fullBod switch= large2 state= start]
\clock [t= 51] \SetSwitch [figure= fullBod switch= find_series state= start]
\clock [t= 52.8] \SetSwitch [figure= fullBod switch= important state= start]
\clock [t= 57] \SetSwitch [figure= fullBod switch= whole state= start]
\clock [t= 62] \SetSwitch [figure= blackboard switch= enter state= on]
\clock [t= 62] \settexture [figure= blackboard tex= museum1.jpg]
\clock [t= 63.9] \SetSwitch [figure= fullBod switch= museum1 state= start]
\clock [t= 66.1] \settexture [ figure= blackboard tex= museum2.jpg]
\clock [t= 66.1] \SetSwitch [figure= fullBod switch= museum2 state= start]
\clock [t= 68.3] \SetSwitch [figure= fullBod switch= as_well state= start]
\clock [t= 78] \SetSwitch [figure= blackboard switch= enter state= close]
\clock [t= 80] \SetSwitch [figure= fullBod switch= plateia_9 state= start]
\clock [t= 87] \SetSwitch [figure= fullBod switch= contradictory2 state= start]
\clock [t= 91] \SetSwitch [figure= fullBod switch= propably state= start]
\clock [t= 98] \SetSwitch [figure= fullBod switch= named state= start]
\clock [t= 101] \SetSwitch [figure= fullBod switch= no_help state= start]
\clock [t= 105] \SetSwitch [figure= fullBod switch= plateia_10 state= start]
\clock [t= 109] \SetSwitch [figure= fullBod switch= which state= start]
\clock [t= 114] \SetSwitch [figure= fullBod switch= which state= start]
\clock [t= 118] \SetSwitch [figure= fullBod switch= point state= start]
\clock [t= 124] \SetSwitch [figure= fullBod switch= of_course_left state= start]
\clock [t= 132] \SetSwitch [figure= fullBod switch= if_else state= start]
\counter [name= [LocC_HBcounter] i0=0 f0= 1]

0 comments:

Post a Comment