## Friday, November 20, 2009

### The BitSquid low level animation system

In the BitSquid engine we differ between the low level and the high level animation system. The low level system has a simple task: given animation data, find the bone poses at a time t. The high level system is responsible for blending animations, state machines, IK, etc.

Evaluation of animation data is a memory intensive task, so to maximize performance means:
• Touch as little memory as possible (i.e., compress the animations as much as possible)
• Touch memory in a cache friendly way (i.e., linearly)
In the BitSquid engine we do animation compression by curve fitting and data quantization.

There are a lot of different possible ways to do curve fitting. Since we are curve fitting for compression it doesn't really matter what method we use as long as (a) we can keep the error below a specified threshold, (b) the curve representation is small (good compression rate), (c) the curve is reasonably smooth and (d) it does not take too long to evaluate.

In the BitSquid engine we currently use a hermite spline with implicitly computed derivatives. I.e., we represent the curve with time and data points: (t_1, D_1), (t_2, D_2), ..., (t_n, D_n) and evaluate the curve at the time T in the interval t_i ... t_i+1, with t = (T - t_i) / (t_i+1 - t_i) by

This formulation gives pretty good compression rates, but I haven't investigate all the possible alternatives (there are a lot!). It is possible that you could achieve better rates with some other curve. An advantage of this formulation is that it only uses the original data points of the curve and scaling constants in the range 0-1, which makes it easy to understand  the effects of quantization.

To do the curve fitting we just check the error in all curve intervals, find the interval D_i D_i+1 with the largest error and split it in half by introducing a new data point at (t_i + t_i+1)/2. We repeat this until the error in all intervals is below a specified threshold value. Again, it is possible that more careful selection of split points could give slightly better compression rates, but we haven't bothered. Note also that we can support curve discontinuities by just inserting two different data points for the same time point.

Animation compression can be done either in local space or in global space. The advantage of keeping the animations in global space is that there is no error propagation through the bone hierarchy, which means that you can use larger error thresholds when compressing the animations. On the other hand, the movement of a bone in global space is typically more complicated. (For a closed fist on a moving arm, the fingers will have no movement in local space, but a lot of movement in global space.) Since a more complicated movement is harder to compress, it might be that the global representation is more expensive, even though you can use a higher threshold. (I haven't actually tried this and compared - so much to do, so little time.)

Also, if you are going to do any animation blending you will probably want to translate back to local space anyhow (unless you blend in global space). For this reason, the BitSquid engine does the compression in local space.

For Vector3 quantization we use 16 bits per component and the range -10 m to 10 m which gives a resolution of 0.3 mm.

For quaternions we use 2 bits to store the index of the largest component, then 10 bits each to store the value of the remaining three components. We use the knowledge that 1 = x^2 + y^2 + z^2 + w^2 to restore the largest component, so we don't actually have to store its value. Since we don't store the largest component we know that the remaining ones must be in the range (-1/sqrt(2), 1/sqrt(2)) (otherwise, one of them would be largest). So we use the 10 bits to quantize a value in that range, giving us a precision of 0.0014.

So, to summarize, that gives us 48 bits per Vector3 curve point and 32 bits per quaternion curve point, plus 16 bits for the time stamp. Now the only thing remaining is to package all these curve points for all the bones in a cache friendly way. This will be the topic of another blog post, since this one is already long enough.

1. While compressing quaternions, you don't store the sign of the largest component. How do you cope with that?

2. The quaternions (x, y, z, w) and (-x, -y, -z, -w) represent the same rotation, so I flip the signs so that the largest component is always positive.

3. I might be thinking about this the wrong way, but is storing the index of the largest component really useful? To me it seems like you use 2 bits to gain log2(sqrt(2)^3) = 1.5 bits of precision?

4. Yes you could use arithmetic encoding to store x, y and z using 10.67 bits per component for the range -1, 1 and this would give you slightly better precision for these values.

The problem comes when you want to reconstruct w using sqrt(1-x^2-y^2-z^2) because that function is numerically unstable for small w.

Have a look at this graph:

https://www.desmos.com/calculator/nfdbj0law4

Below w=0.5 the error starts to become bigger than the error (0.001) in the input values and as we get closer to zero the error becomes a lot bigger (0.03).

5. Good point!

Thank you for sharing valuable information. Thanks for providing a great informatic blog

7. WOW! I Love it...
and i thing thats good for you >>

GOOD HEALTH Thank you!

8. "Old movie in memory>> KOPI Review! "
"Do not miss lucky numbers.>> huayfree"

9. Escort in Dehradun Order a girl with Dehradun Escorts strength is a fun way to spend the twilight. You realize slim escorts, busty escorts, bhabhi escorts, luxury escorts, and better.

10. Ready To Satisfy You And Your Desire Dream With Delhi Escorts
Delhi Escorts Agency service has always offered so much fun as well as entertainment and it is the real Delhi Call Girls reason why several thousands of persons from around the world would consider visiting. It would be rightly available there and it is the best thing to see as well as enjoy.
Delhi Escorts
Delhi Call Girl

11. Best Sexologist in Delhi NCR by Dr. P.K. Gupta and Sex Treatment Specialist Doctor

12. Firmly stable as the most trustworthy office furniture manufacturers we strive to convey extraordinary results to our clients without negotiating with their requirements and CPM Systems best office furniture manufacturer.

21. People's media needs can be met through the Amazon Prime platform. Amazon Prime is a subscription service, which can be subscribed by going to the link Amazon.com/mytv.Prime video is a subscription service that caters to the media needs of people through the Primevideo.com/mytv
platform.The Amazon Prime Activation Code is a six digit alphanumeric code that can be found on your TV screen when you click on “Register” on Amazon.com/mytv.Amazon prime paid for online streaming services used at Amazon.com/mytv Gives users access to a variety of services such as instant delivery.Search for “Amazon” to find the Primevideo.com/mytv app.Get more information

22. Amazon Prime vedio throughPrimevideo.com/mytv is accessible to owners of streaming platforms and devices like Chromecast, Fire TV, Amazon TV, and Roku, among others.If you eagerly wanted to know what is Amazon.com/mytvthen the answer is amazing. It is more than a fast delivery option. Amazon Prime is a subscription service provided by the Amazon.com/mytv with unlimited entertainment with lots of other benefits.Enter the link Primevideo.com/mytv on your browser.Go to Xfinity.com/authorize from any other device such as mobile phone, tablet or desktop. From the web browser, enter the six-digit xfinity stream authorized code provided to the Roku device.

27. Office it the heap of office devices to make yourwww.office.com/setup working smooth and effective.visit: to downloaded in your PC with the snappy help.On the off chance that client needs to utilize office.com/setup the Office setup on the web, at that point open the internet browser you are utilizing on your framework and visit today In case customer needs to use the Office office.com/setup setup on the web, by then open the web program you are using on your system and visit today.office setup is the best programming which is office.com/setup comprehensively used in globe .It is an astonishing affiliation that causes you discharge your best considerations, complete things, and remain related on the go.for more nuances visit: office.com setup today.The need for a reliable antivirus like Norton Enrollment is increasing, you can download it by visiting the website norton.cn/setup

28. The need for a reliable antivirus like Norton Enrollment is increasing, you can download it by visiting the website norton.com/setup . Not only companies as a measure of data security, but everyone is now relying on antivirus programs that can be found on the norton.com/setup with product key page. If you have any problem you can visit our website norton.com/setup and get help.In case customer needs to use the Office office.com/setup setup on the web, by then open the web program you are using on your system and visit today.office setup is the best programming which is office.com/setup comprehensively used in globe .Mcafee antivirus is a commonly used antivirus that detects and kills PC infections, enables mail worms, Trojan programs, etc. For a more accurate visit, to save your PC or PC from infection and ensure data, download the Mcafee Antivirus by visiting the Mcafee.com/activate website.The Canon printer enhances scan functionality, and includes a robust security feature set. Using a Canon printer service phone, you can get a full installation of the CANON.COM/IJSETUP printer and go to the installed Canon printer to download the canon.com/ijsetup driver.

32. Your Article is so good and readble thanx for sahring this content. The sooner you will seek the help of a Sexologist in Delhi the faster you will start seeing the results.
Sexologist in Delhi, Sexologist in Delhi

33. Are you looking for an call girl in Islamabad for an unplanned chance meeting? If you would prefer to have a one-night stand or pleasure with a Sexy lady, have a browse through our website. We would help you find the Top Call Girls for those who need an expressive, long-term affiliated partner. We never intend that you become a call Girl in Lahore free from such a bitter experience, and our promises to our clients compel us to take appropriate steps to eliminate these risks so that our client VIP High Class Demand from Escorts Lahore that they should never be deprived of these values they deserve

34. Are you looking for an Islamabad call girl for an unplanned chance meeting? If you would prefer to have a one-night stand or pleasure with a Sexy lady, have a browse through our website.Islamabad call girl We would help you find the Top Call Girls for those who need an expressive, long-term affiliated partner. We never intend that you become a call Girl in Lahore free from such a bitter experience, and our promises to our clients compel us to take appropriate steps to eliminate these risks so that our client VIP High Class Demand from Escorts Lahore that they should never be deprived of these values they deserve

35. Are you looking for an Lahore Call Girls for an unplanned chance meeting? If you would prefer to have a one-night stand or pleasure with a Sexy lady, have a browse through our website. We would help you find the Top Call Girls for those who need an expressive, long-term affiliated partner.Lahore Call Girls We never intend that you become a call Girl in Lahore free from such a bitter experience, and our promises to our clients compel us to take appropriate steps to eliminate these risks so that our client VIP High Class Demand from Escorts Lahore that they should never be deprived of these values they deserve

36. Are you looking for an Escorts in Karachi for an unplanned chance meeting? If you would prefer to have a one-night stand or pleasure with a Sexy lady, have a browse through our website. We would help you find the Top Call Girls for those who need an expressive, long-term affiliated partner. We never intend that you become a call Girl in Lahore free from such a bitter experience, and our promises to our clients compel us to take appropriate steps to eliminate these risks so that our client VIP High Class Demand from Escorts Lahore that they should never be deprived of these values they deserve Escorts in Karachi

37. I think this is one of the best blogs I've seen. In your article, you provide such valuable content. My latest post is about How to Get Better at Using a Mouse. Read the article Computer Mouse Tips and have a good reading experience.

38. Are you looking for the best productivity suite, visit office.com/setup home and student 2019r and download Microsoft office products. In order to activate the office setup, use 25 digit office setup product key for office install and activation.

39. Go to office setup for office.com/setup. Sign In or Create a new Microsoft Account. Or go to
Officecom which is best for online work. webroot.com/safe is best Installation Guide.The security package offered by this brand is incredibly easy to setup and install.
You can download printer drivers from ij.start.canon/setup and sit at home with free mind.

40. If unit of measurement feeling you are feeling such as you have gotten lost the zeal and intimacy of your sexual life then a reliables sexologist in Delhi are a few things that you just actually would like. He has registered himself within the list of the highest purported sexologist. you've got got it here! he's Associate in Nursing honorable name within the trade of sexologist treatment. and best sexologist in Delhi or top sexologist in Faridabad.

41. Whether you're looking for a spectacular new logo or some stunning flyers, the talented global community of designers at Promote Abhi can make it happen. Promoteabhi.com prides itself on it's high quality designers who deliver only the best graphic design services. Find the right design service for you below and get design you'll love today! Promote Abhi is one of the leading and passionate graphic design service providers in the online market.
Matriculation is the formal process of entering a university, or of becoming eligible to enter by fulfilling certain academic requirements such as a matriculation examination. Matriculation means a process or the course is given for any examination. Whether the processor syllabus is for the 10th board examination
Expert recommended Top 3 Interior Designers in Gorakhpur, Uttar Pradesh. All of our interior designers actually face a rigorous 50-Point Inspection, which includes customer reviews, history, complaints, ratings, satisfaction, trust, cost and their general excellence. You deserve only the best! All Gorakhpur, Uttar Pradesh interiors designers require specific schooling and formal training. They use their specialised knowledge of interior architecture!
Real-time problems and outages for PlentyOfFish (POF). Can't log in? Is the server down? Here you see what is going on.

42. Chase asks you to verify card delivery whenever you get a new credit card in the mail. This is the same thing as activating a Chase credit card.
Emotions Interior Designer - Interior Designers in Gorakhpur, India
How to use shortcut keys for Hindi typing in Krutidev fontTo make desired Hindi character just press & hold "Alt" key on keyboard and press numeric code.
If you want to change your Netflix billing country, you actually need to close your account and then restart it in your new country.
एस्कॉर्ट सर्विस क्या है, और किस तरह इनका संचालन देश के शहरों में किया जाता है? यह एक एसी व्यवस्था है जिसमें रईस लोग एस्कॉर्ट्स यानि लड़की को लेकर घूमने निकल जाते हैं या थोड़ा समय बिताने के लिए बुला लेते हैं ।
You can try to disable Adobe Genuine Software Integrity in Services. Here is how to do that: Step 1: Type services in the Search box to open it.
Click iCloud on SMTP Server section· The Apple iCloud SMTP settings will be filled automatically. Host: smtp.mail.me.com Port: 587 Security: TLS
Having problems opening Norton? Let's download the Norton Remove & Reinstall tool to try fixing the issue. If you have Norton Family installed, uninstall it before you download the Norton Remove and Reinstall tool.

43. Promote Abhi is the best SEO company in Thane, Maharashtra, that offers complete organic SEO services for your business such as website SEO audit & keyword analysis.
The Best Online Dating Experience - Singles have more conversations on Plenty of Fish (POF) after sign Error in than any other dating app! POF is designed to help singles
Emotions Interior is one of the leading interior designing company in Gorakhpur. Their company provide a unique and creative approach to their customers.
Buy English Ivy Variegated online - Birthright's English Ivy is a common houseplant, which somewhat belies the fact that it's not particularly easy to grow
blink camera app for android Why pay more? Our store lets you in on all the best sales and discounts.Fast delivery and free shipping!
How do I get rid of Adobe software genuine integrity service Mac ? Open the Finder app on your Mac 2020 system. Click on “Go” Button.

44. The title of this blog post is something I've never heard of from blogs I've read. It's good to read your blog posts about the checklist for blogger containers. This is a real post I share with you where you can read MOUSE BUTTON DOESN'T WORK. Please refer to the article Fix The Mouse.

45. We are Delhi based SMO Company, We offer Social Media Optimization (SMO) Services in Delhi, India at reasonable price
Buy Indoor Plants Online in India at best prices only at Birthright, India's leading online shop for agriculture supplies and garden tools.
Financeatyourtip, provide updates about the best demat account for traders all over world. Its brokerage fee is extremely feasible and this assists traders and investors
F95zone Latest Games & Updates. A visual overview of the latest new games and updates.

46. I did not seen this kin post when we are talking about digital marketing edible web tech is Best seo agency in amritsar and digital marketing in amritsar service provider in amritsar

47. Buy Indoor Plants Online in India - Birthright offers indoor plants for home online in India.
As a Best Graphic Design Company in India, We have a team of talented brand shapers who have the capability, passion and knowledge to deal with clients.
Get contact details and address of Renovation Services, Renovation Works firms and ... Customoised Home Renovation Services, In Delhi Ncr, Negotiable.
Use the Blink Home Monitor app to check in on what's happening at home from anywhere at any time. The app connects your home to your phone in HD video

48. I am very impressed with your writing카지노게임 I couldn't think of this, but it's amazing! I wrote several posts similar to this one, but please come and see!

49. Very helpful and Great information 토토

50. Appreciate it for this post, I am a big fan of this internet site would like to keep updated. 경마

51. Fantastic web site. Lots of helpful info here 릴게임

52. That's a great article! The neatly organized content is good to see. Can I quote a blog and write it on my blog? My blog has a variety of communities including these articles. Would you like to visit me later? 토토사이트추천

53. In the present world many people are inclined towards using cashless life and many tech companies have come forward in this mission to help them.

They introduced a unique Cash App which makes their journey smooth and smooth.

Cash App offers its dedicated users a fair and easy-to-use Cash App Card. Users can use this Visa Debit Card anytime, anywhere in the United States.

Cash App provides standard and instant deposit options for withdrawing money. Cash Out on Cash App is a facility on Cash App where you can withdraw money from your Cash App account to bank account or debit card.

To enable bitcoin on Cash App first you need to verify your identity with Cash App. Cash App bitcoin verification process is very simple and straightforward. Actually, Cash App Bitcoin Verification involves entering some personal details like, your name, date of birth, your ID card and your social security number (SSN).

If a user wants to increase Cash App limit, they need to follow a quick and easy verification process. After the verification limits are increased automatically.

In general, Cash App to Cash App payment is done instantly. Users are responsible for any wrong payment. To be 100% sure, check your activity list to see if payment receipts are displaying the option to cancel.

Cash App Refund policies are strict, and there are specific rules that the company adheres to. If you are not aware of your payment then you can always contact the officials of Cash App support team.

54. Of course, your article is good enough, 슬롯사이트 but I thought it would be much better to see professional photos and videos together. There are articles and photos on these topics on my homepage, so please visit and share your opinions.

55. Great blog article. Really looking forward to read more.
바카라사이트

56. Many thanks for the article, I have a lot of spray lining knowledge but always learn something new. Keep up the good work and thank you again. 먹튀사이트

57. Hi there, after reading this remarkable paragraph i am too happy to share my experience here with friends. 바카라사이트

58. For a digital business, a good website serves as a platform to sell products and services across the world and therefore achieve the business goals. It is necessary to know the basics of an adequate website through experienced website developers. Caneplus Technology is one of the leading digital marketing companies in India providing high-quality website development service in Noida, India.

website development services

59. Great beat ! I wish to apprentice while you amend your web site, how can i subscribe for a blog website?
The account helped me a acceptable deal. I had been a little bit acquainted of
english stories english short stories with moral value What is the factorial of 100

60. If you accomplish to have the duration to author a report and there are no Custom Software Engineering Services, composing essays keeps the day. I appreciate how the method prevents multifarious databases. help with florida assignment is a skilled online 'Custom Software Engineering Services' assistance committed to helping high academy and institute investigators. Gratitude to our educational script.

61. Great blog article. Really looking forward to read more.
Best Programmable Paper Cutting Machine
Hydraulic Paper Cutting Machine

62. There are many ways to revise the online quran classes. Many people follow a practice of revising three Juz each day. One method is to review the first Juz of the day after Fajr, the second Juz after Asr, and the third Juz after Isha'. While this method works well for many people, it may not be the most effective method. Regardless of what method you choose, remember that the most important key to learning the Quran is self-dedication and great motivation.

63. This comment has been removed by the author.

64. Thanks for sharing such a thoughtful blog...
web development course in amritsar