CustomAvatarAnimation.htm 47 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515
  1. <html xmlns:MSHelp="http://msdn.microsoft.com/mshelp" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:xanx="http://schemas.microsoft.com/developer/xanx/2005"><head><META http-equiv="Content-Type" content="text/html; charset=utf-8"><META NAME="save" CONTENT="history"><title>Custom Avatar Animation Sample</title>
  2. <style><!--
  3. /***********************************************************
  4. * SCRIPT-SUPPORTING STYLES
  5. ***********************************************************/
  6. /* Defines the userData cache persistence mechanism. */
  7. .userDataStyle
  8. {
  9. behavior: url(#default#userData);
  10. }
  11. /* Used to save the scroll bar position when navigating away from a page. */
  12. div.saveHistory
  13. {
  14. behavior: url(#default#saveHistory);
  15. }
  16. /* Formats the expand/collapse images for all collapsible regions. */
  17. img.toggle
  18. {
  19. border: 0;
  20. margin-right: 5;
  21. }
  22. /* Formats the Language filter drop-down image. */
  23. img#languageFilterImage
  24. {
  25. border: 0;
  26. margin-left: 0;
  27. vertical-align: middle;
  28. }
  29. /* Formats the Members Options filter drop-down image. */
  30. img#membersOptionsFilterImage
  31. {
  32. border: 0;
  33. margin-left: 0;
  34. vertical-align: middle;
  35. }
  36. /* Formats the Collapse All/Expand All images. */
  37. img#toggleAllImage
  38. {
  39. margin-left: 0;
  40. vertical-align: middle;
  41. }
  42. /* Supports XLinks */
  43. MSHelp\:link
  44. {
  45. text-decoration: underline;
  46. color: #0000ff;
  47. hoverColor: #3366ff;
  48. filterString: ;
  49. }
  50. body
  51. {
  52. background: #FFFFFF;
  53. color: #000000;
  54. font-family: Verdana;
  55. font-size: medium;
  56. font-style: normal;
  57. font-weight: normal;
  58. margin-top: 0;
  59. margin-bottom: 0;
  60. margin-left: 0;
  61. margin-right: 0;
  62. width: 100%;
  63. /*font-size: 110%;*/
  64. }
  65. div.section
  66. {
  67. margin-left: 15px;
  68. }
  69. div.hxnx5
  70. {
  71. margin-left: 1.5em;
  72. }
  73. /* Font for all headings */
  74. h1, h2, h3, h4, h5, h6
  75. {
  76. font-family: Verdana, Arial, Helvetica, sans-serif;
  77. margin-top: 18;
  78. margin-bottom: 8;
  79. font-weight: bold;
  80. }
  81. h1
  82. {
  83. font-size: 130%;
  84. color: #003399;
  85. }
  86. div#scrollyes h1 /* Changes font size for full-scrolling topic */
  87. {
  88. font-size: 150%;
  89. }
  90. h2
  91. {
  92. font-size: 125%;
  93. }
  94. h3
  95. {
  96. font-size: 115%;
  97. margin-top: 9;
  98. margin-bottom: 4;
  99. }
  100. h4
  101. {
  102. font-size: 115%;
  103. margin-top: 9;
  104. margin-bottom: 4;
  105. }
  106. h5
  107. {
  108. font-size: 100%;
  109. margin-top: 9;
  110. margin-bottom: 4;
  111. }
  112. h6
  113. {
  114. font-size: 100%;
  115. margin-top: 9;
  116. margin-bottom: 4;
  117. }
  118. ul p, ol p, dl p
  119. {
  120. margin-left: 0em;
  121. }
  122. p
  123. {
  124. margin-top: .6em;
  125. margin-bottom: .6em;
  126. }
  127. td p
  128. {
  129. margin-top: 0.0em;
  130. margin-bottom: 0.6em;
  131. }
  132. dd p
  133. {
  134. margin-top: 0.0em;
  135. margin-bottom: 0.6em;
  136. }
  137. .image
  138. {
  139. text-align: center;
  140. }
  141. dl
  142. {
  143. margin-top: 0em;
  144. margin-bottom: 1.3em;
  145. }
  146. dd
  147. {
  148. margin-bottom: 0em;
  149. margin-left: 1.5em;
  150. }
  151. dl.glossary dd
  152. {
  153. margin-bottom: 0em;
  154. margin-left: 1.5em;
  155. }
  156. dt
  157. {
  158. margin-top: .6em;
  159. margin-bottom: 1;
  160. }
  161. ul, ol
  162. {
  163. margin-top: 0.6em;
  164. margin-bottom: 0.6em;
  165. }
  166. ol
  167. {
  168. margin-left: 2.5em;
  169. }
  170. ul
  171. {
  172. list-style-type: disc;
  173. margin-left: 1.9em;
  174. }
  175. li
  176. {
  177. margin-bottom: 0.4em;
  178. }
  179. ul ol, ol ol
  180. {
  181. list-style-type: lower-alpha;
  182. }
  183. pre
  184. {
  185. margin-top: .6em;
  186. margin-bottom: .6em;
  187. }
  188. pre
  189. {
  190. font: 105% Lucida, mono;
  191. color: #000066;
  192. }
  193. code
  194. {
  195. font-family: Monospace, Courier New, Courier;
  196. font-size: 105%;
  197. color: #000066;
  198. }
  199. table.userdata td
  200. {
  201. background: #ffffff;
  202. background-color: #F5F5F5;
  203. border-color: #ffffff;
  204. border: none;
  205. }
  206. table.clsWarning
  207. {
  208. background: #ffffff;
  209. padding: 0px;
  210. margin: 0px;
  211. border: none;
  212. }
  213. table.clsWarning td
  214. {
  215. padding: 0px;
  216. margin: 0px;
  217. background: #ffffff;
  218. vertical-align: middle;
  219. font-size: 70%;
  220. }
  221. div#mainSection table
  222. {
  223. width: 98%;
  224. background: #ffffff;
  225. margin-top: 5px;
  226. margin-bottom: 5px;
  227. }
  228. div#mainSection table th
  229. {
  230. padding: 5px 6px;
  231. background: #EFEFF7;
  232. text-align: left;
  233. font-size: 70%;
  234. vertical-align: bottom;
  235. border-bottom: 1px solid #C8CDDE;
  236. }
  237. div#mainSection table td
  238. {
  239. padding: 5px 5px;
  240. background: #F7F7FF;
  241. vertical-align: top;
  242. font-size: 70%;
  243. border-bottom: 1px solid #D5D5D3;
  244. }
  245. div#syntaxCodeBlocks table th
  246. {
  247. padding: 1px 6px;
  248. color: #000066;
  249. }
  250. div#syntaxCodeBlocks table td
  251. {
  252. padding: 1px 5px;
  253. }
  254. /* Applies to the running header text in the first row of the upper table in the
  255. non-scrolling header region. */
  256. span#runningHeaderText
  257. {
  258. color: #003399;
  259. font-size: 90%;
  260. padding-left: 13;
  261. }
  262. /* Applies to the topic title in the second row of the upper table in the
  263. non-scrolling header region. */
  264. span#nsrTitle
  265. {
  266. color: #003399;
  267. font-size: 120%;
  268. font-weight: 600;
  269. padding-left: 13;
  270. }
  271. /* Applies to everything below the non-scrolling header region. */
  272. div#mainSection
  273. {
  274. font-size: 70%;
  275. width: 100%;
  276. }
  277. /* Applies to everything below the non-scrolling header region, minus the footer. */
  278. div#mainBody
  279. {
  280. font-size: 90%;
  281. margin-left: 15;
  282. margin-top: 10;
  283. padding-bottom: 20;
  284. }
  285. /* Adds right padding for all blocks in mainBody */
  286. div#mainBody p, div#mainBody ol, div#mainBody ul, div#mainBody dl
  287. {
  288. padding-right: 5;
  289. }
  290. div#mainBody div.alert, div#mainBody div.code, div#mainBody div.tableSection
  291. {
  292. width:98.9%;
  293. }
  294. div.alert p, div.code p
  295. {
  296. margin-top:5;
  297. margin-bottom:8;
  298. }
  299. /*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Begin Note Styles - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
  300. div#mainSection div.alert table
  301. {
  302. border: 0;
  303. }
  304. div#mainSection div.alert table th
  305. {
  306. padding-top: 0;
  307. padding-bottom: 0;
  308. padding-left: 5;
  309. padding-right: 5;
  310. }
  311. div#mainSection div.alert table td
  312. {
  313. padding-left: 5;
  314. padding-right: 5;
  315. }
  316. img.note
  317. {
  318. border: 0;
  319. margin-left: 0;
  320. margin-right: 3;
  321. }
  322. /*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - End Note Styles - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
  323. /*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Begin Non-scrolling Header Region Styles - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
  324. /* Applies to the entire non-scrolling header region. */
  325. div#header
  326. {
  327. background-color: #D4DFFF;
  328. padding-top: 0;
  329. padding-bottom: 0;
  330. padding-left: 0;
  331. padding-right: 0;
  332. width: 100%;
  333. }
  334. /* Applies to both tables in the non-scrolling header region. */
  335. div#header table
  336. {
  337. margin-top: 0;
  338. margin-bottom: 0;
  339. border-bottom-color: #C8CDDE;
  340. border-bottom-style: solid;
  341. border-bottom-width: 1;
  342. background: #D4DFFF;
  343. width: 100%;
  344. }
  345. /* Applies to cells in both tables in the non-scrolling header region. */
  346. div#header table td
  347. {
  348. color: #0000FF;
  349. font-size: 70%;
  350. padding-right: 20;
  351. padding-top: 1;
  352. padding-bottom: 1;
  353. border: none;
  354. background: #D4DFFF;
  355. }
  356. /* Applies to the last row in the upper table of the non-scrolling header region. Text
  357. in this row includes See Also, Constructors, Methods, and Properties. */
  358. div#header table tr#headerTableRow3 td
  359. {
  360. padding-bottom: 2;
  361. padding-top: 5;
  362. padding-left: 15;
  363. }
  364. /* Applies to the lower table in the non-scrolling header region. Text in this table
  365. includes Collapse All/Expand All, Language Filter, and Members Options. */
  366. div#header table#bottomTable
  367. {
  368. border-top-color: #FFFFFF;
  369. border-top-style: solid;
  370. border-top-width: 1;
  371. text-align: left;
  372. padding-left: 15;
  373. }
  374. blockquote
  375. {
  376. margin-left: 3.8em;
  377. margin-right: 3.8em;
  378. margin-top: .6em;
  379. margin-bottom: .6em;
  380. }
  381. sup
  382. {
  383. text-decoration: none;
  384. font-size: smaller;
  385. }
  386. a:link
  387. {
  388. color: #0000FF;
  389. /* font-weight: bold */
  390. }
  391. a:visited
  392. {
  393. color: #0000AA;
  394. /* font-weight: bold */
  395. }
  396. a:hover
  397. {
  398. color: #3366FF;
  399. /* font-weight: bold */
  400. }
  401. .label
  402. {
  403. font-weight: bold;
  404. margin-top: 1em;
  405. margin-left: -26px;
  406. }
  407. .tl
  408. {
  409. margin-bottom: .75em;
  410. }
  411. .atl
  412. {
  413. padding-left: 1.5em;
  414. padding-bottom: .75em;
  415. }
  416. .cfe
  417. {
  418. font-weight: bold;
  419. }
  420. .mini
  421. {
  422. font-size: smaller;
  423. }
  424. .dt
  425. {
  426. margin-bottom: -.6em;
  427. }
  428. .indent
  429. {
  430. margin-left: 1.9em;
  431. margin-right: 1.9em;
  432. }
  433. .product
  434. {
  435. text-align: right;
  436. color: #333333;
  437. font-size: smaller;
  438. font-style: italic;
  439. }
  440. .buttonbarshade
  441. {
  442. position: relative;
  443. margin: 0;
  444. left: 0px;
  445. top: 2;
  446. width: 50%;
  447. height: 40px;
  448. }
  449. .buttonbartable
  450. {
  451. position: absolute;
  452. margin: 0;
  453. padding:0;
  454. border:0;
  455. left:0px;
  456. top: 2;
  457. width: 100%;
  458. height: 40px;
  459. }
  460. /* background color, font for header */
  461. table.buttonbartable td, table.buttonbarshade td
  462. {
  463. background: #ffffff; /*#5177B8; #80C615;*/
  464. border-left: 0px solid #80C615;
  465. margin: 0;
  466. padding: 0px 0px 0px 0px;
  467. font-family: Impact, sans-serif;
  468. font-size: 14pt;
  469. }
  470. table.buttonbartable td.button1
  471. {
  472. background: #5177B8; /*#80C615;*/;
  473. padding: 0;
  474. font-weight: bold;
  475. text-align: center;
  476. cursor: hand;
  477. }
  478. table.buttonbartable td.button2
  479. {
  480. background: #5177B8; /*#80C615;*/;
  481. font-weight: bold;
  482. text-align: center;
  483. }
  484. table.buttonbartable td.button3
  485. {
  486. background: #5177B8; /*#80C615;*/;
  487. font-weight: bold;
  488. text-align: center;
  489. }
  490. table.buttonbartable td.runninghead
  491. {
  492. padding-left: 0px;
  493. font-style: italic;
  494. text-align: left;
  495. }
  496. .version
  497. {
  498. text-align: left;
  499. color: #000000;
  500. margin-top: 3em;
  501. margin-left: -26px;
  502. font-size: smaller;
  503. font-style: italic;
  504. }
  505. .lang, .ilang
  506. {
  507. color: #0000ff;
  508. font: normal 7pt Arial, Helvetica, sans-serif;
  509. }
  510. div.langMenu
  511. {
  512. position: absolute;
  513. z-index: 1;
  514. width: 96pt;
  515. padding: 8pt;
  516. visibility: hidden;
  517. border: 1px solid #000000;
  518. background: #ffffd0;
  519. }
  520. div.langMenu ul
  521. {
  522. padding-left: 2em;
  523. margin-left: 0;
  524. }
  525. div.filtered
  526. {
  527. margin: 4pt 0 8pt -26px;
  528. padding: 4px 4px 8px 26px;
  529. width: 100%;
  530. border: 2px solid #aaaacc;
  531. background: #ffffff;
  532. }
  533. div.filtered2
  534. {
  535. margin: 4pt 0 8pt -26px;
  536. padding: 4px 4px 8px 26px;
  537. width: 100%;
  538. border: none;
  539. background: #ffffff;
  540. }
  541. div.filtered h1, div.filtered h2, div.filtered h3, div.filtered h4
  542. {
  543. margin-left: -22px;
  544. }
  545. div.filtered span.lang
  546. {
  547. position: relative;
  548. left: -22px;
  549. }
  550. div.reftip
  551. {
  552. position: absolute;
  553. z-index: 1;
  554. padding: 8pt;
  555. visibility: hidden;
  556. border: 1px solid #000000;
  557. background: #ffffd0;
  558. }
  559. a.synParam
  560. {
  561. color: #0000FF;
  562. /*color: #3F7800;*/
  563. /*color: #8DC54F;*/
  564. text-decoration: none;
  565. font-weight: normal;
  566. }
  567. a.synParam:hover
  568. {
  569. text-decoration: underline;
  570. font-weight: normal;
  571. }
  572. div.sapop
  573. {
  574. position: absolute;
  575. z-index: 1;
  576. left: 26px;
  577. width: 100%;
  578. padding: 10px 10px 10px 36px;
  579. visibility: hidden;
  580. border: 1px solid #000000;
  581. background: #ffffd0;
  582. }
  583. div.footer
  584. {
  585. width: 100%;
  586. border: none;
  587. background: #ffffff;
  588. margin-top: 18pt;
  589. padding-bottom: 12pt;
  590. color: #0000FF;
  591. /*color: #228B22; */
  592. text-align: center;
  593. font-size: 76%;
  594. }
  595. div.preliminary
  596. {
  597. margin-top: 8pt;
  598. padding-bottom: 12pt;
  599. color: #A0A0A0;
  600. }
  601. /* A procedure section. eg. 'To create a file', 'To add a value' */
  602. div.proc
  603. {
  604. margin-left: 0.5em;
  605. }
  606. /* The title of a 'procedure' section. */
  607. div.proc h3
  608. {
  609. font-family: Verdana, Arial, Helvetica, sans-serif;
  610. font-weight: bold;
  611. font-size: 115%;
  612. margin-top: 1em;
  613. margin-bottom: 0.4em;
  614. margin-left: -0.5em;
  615. color: #003399;
  616. }
  617. div.proc ul
  618. {
  619. margin-left: 1.5em;
  620. }
  621. div.proc ol
  622. {
  623. margin-left: 2.0em;
  624. }
  625. .note
  626. {
  627. margin-left: 14pt;
  628. margin-right: 12pt;
  629. }
  630. .indent1
  631. {
  632. margin-left: 12pt;
  633. }
  634. .indent2
  635. {
  636. margin-left: 24pt;
  637. }
  638. .indent3
  639. {
  640. margin-left: 36pt;
  641. }
  642. p.proch
  643. {
  644. padding-left: 16px;
  645. }
  646. p.proch img
  647. {
  648. position: relative;
  649. vertical-align: top;
  650. left: -18px;
  651. margin-right: -14px;
  652. margin-bottom: -18px;
  653. }
  654. div.clsPlatSpec
  655. {
  656. background-color:#FFF8DC;
  657. border-style:solid;
  658. border-width:1pt 0pt 0pt 1pt;
  659. border-color:#ffE4C4;
  660. margin-top:0.6em;
  661. width:100%;
  662. }
  663. /* Applies to the language labels in the Language Filter drop-down list. */
  664. .languageFilter
  665. {
  666. color: #0000FF;
  667. cursor:hand;
  668. text-decoration:underline;
  669. padding-bottom:4;
  670. }
  671. /* Dropdown areas */
  672. #languageSpan {
  673. position: absolute;
  674. visibility: hidden;
  675. border-style: solid;
  676. border-width: 1px;
  677. border-color: #C8CDDE;
  678. background: #d4dfff;
  679. padding: 4px;
  680. font-size: 70%;
  681. }
  682. #membersOptionsSpan {
  683. position: absolute;
  684. visibility: hidden;
  685. border-style: solid;
  686. border-width: 1px;
  687. border-color: #C8CDDE;
  688. background: #d4dfff;
  689. padding: 4px;
  690. font-size: 70%;
  691. }
  692. .auto-style1 {
  693. border-collapse: collapse;
  694. line-height: 115%;
  695. font-size: 11.0pt;
  696. font-family: Calibri, sans-serif;
  697. }
  698. --></style>
  699. <xml>
  700. <MSHelp:TOCTitle Title="Custom Avatar Animation Sample" />
  701. <MSHelp:RLTitle Title="Custom Avatar Animation Sample" />
  702. <MSHelp:Keyword Index="A" Term="O:Microsoft.Xna.CustomAvatarAnimation" />
  703. <MSHelp:Keyword Index="A" Term="be7846b3-fbe3-38fb-5f8f-286f967d27a6" />
  704. <MSHelp:Keyword Index="K" Term="Custom Avatar Animation Sample" />
  705. <MSHelp:Attr Name="AssetID" Value="be7846b3-fbe3-38fb-5f8f-286f967d27a6" />
  706. <MSHelp:Attr Name="Locale" Value="en-us" />
  707. <MSHelp:Attr Name="CommunityContent" Value="1" />
  708. <MSHelp:Attr Name="TopicType" Value="kbOrient" />
  709. <MSHelp:Attr Name="DocSet" Value="XNA" />
  710. <MSHelp:Attr Name="DocSet" Value="ExpressLibVS" />
  711. <MSHelp:Attr Name="DocSet" Value="C#" />
  712. <MSHelp:Attr Name="ProjType" Value="LocalProj" />
  713. <MSHelp:Attr Name="ProjType" Value="XNA_31" />
  714. <MSHelp:Attr Name="ProjType" Value="XNA_30" />
  715. <MSHelp:Attr Name="Technology" Value="XNA" />
  716. </xml>
  717. </head><body><div id="mainSection"><div id="mainBody">
  718. <h1>Custom Avatar Animation Sample</h1>
  719. This sample shows how to load and process a custom animation for an avatar by using the XNA Framework Content Pipeline.
  720. <a name="ID4EK"></a><h1 class="heading">Sample Overview</h1><div id="ID4EK" class="hxnx1">
  721. <p>
  722. This sample demonstrates how to load a custom animation from an FBX file exported from an avatar rig. A custom content processor is used to extract the animation data from the exported file and save it as a <code>CustomAvatarAnimationData</code> object. The animation data can then be loaded at run-time and played back using the <code>CustomAvatarAnimationPlayer</code>. The <code>CustomAvatarAnimationPlayer</code> exposes a number of properties similar to <code>AvatarAnimation</code>. You can use the <code>CustomAvatarAnimationPlayer.BoneTransforms</code> property to get the current bone transforms to be used with the <code>AvatarRenderer.Draw</code> method.
  723. </p>
  724. <p>Animation of the avatar&#39;s facial features such as the eyes and mouth is
  725. done using texture animations. These texture animations can be driven by an additional data file which is associated with the FBX animation through the content pipeline</p>
  726. <div class="alert"><table cellspacing="0" cellpadding="0"><tr><th>Note </th></tr><tr><td>
  727. <p> When you build this sample, you may see a number of warnings related to the FBX model files, depending on the source of the model, that are expected and can be safely ignored.</p>
  728. <p>When using animations exported from Maya, you will see these warnings during the content build process:</p>
  729. <ul>.
  730. <li>Cannot process information from FBX node Controls. The attribute type 13 is invalid. The node and all of its children have been skipped.</li>
  731. <li>UV set __DecalColorMap occurs on different layers per mesh. Textures that use this UV set will not be given a TextureCoordinate opaque data property, as they do not map to any single texture coordinate channel.</li>
  732. <li>The FBX scene contained multiple bind poses for the following node or nodes […]</li>
  733. </ul>
  734. <p>When using animations generated from Softimage, you will see this warning during the content build process:</p>
  735. <ul>
  736. <li> There were vertices which did not contain texture coordinates in the following mesh or meshes […]</li>
  737. </ul>
  738. </td></tr></table></div>
  739. <a name="ID4EWB"></a><h2 class="subHeading">Sample Controls</h2><div id="ID4EWB" class="hxnx2">
  740. <p>This sample uses the following gamepad controls.</p>
  741. <table>
  742. <tr>
  743. <th>Action</th>
  744. <th>Gamepad control</th>
  745. </tr>
  746. <tr>
  747. <td>Play jump animation</td>
  748. <td>
  749. <b>A</b>
  750. </td>
  751. </tr>
  752. <tr>
  753. <td>Play kick animation</td>
  754. <td>
  755. <b>B</b>
  756. </td>
  757. </tr>
  758. <tr>
  759. <td>Play punch animation</td>
  760. <td>
  761. <b>X</b>
  762. </td>
  763. </tr>
  764. <tr>
  765. <td>Play faint animation</td>
  766. <td>
  767. <b>Y</b>
  768. </td>
  769. </tr>
  770. <tr>
  771. <td>Load profile 1 avatar</td>
  772. <td>Left bumper</td>
  773. </tr>
  774. <tr>
  775. <td>New random avatar</td>
  776. <td>Right bumper</td>
  777. </tr>
  778. <tr>
  779. <td>Move the avatar</td>
  780. <td>Left thumb stick</td>
  781. </tr>
  782. <tr>
  783. <td>Rotate the camera</td>
  784. <td>Right thumb stick</td>
  785. </tr>
  786. <tr>
  787. <td>Zoom in</td>
  788. <td>Right trigger</td>
  789. </tr>
  790. <tr>
  791. <td>Zoom out</td>
  792. <td>Left trigger</td>
  793. </tr>
  794. <tr>
  795. <td>Reset the camera</td>
  796. <td>Right thumb stick press</td>
  797. </tr>
  798. <tr>
  799. <td>Exit the sample</td>
  800. <td>
  801. <b>BACK</b>
  802. </td>
  803. </tr>
  804. </table>
  805. </div>
  806. </div>
  807. <a name="ID4ELF"></a><h1 class="heading">Export Settings</h1><div id="ID4ELF" class="hxnx1">
  808. <p>To create a custom animation, you must use an animation rig specific to the avatar system. Avatar animation packs are available for different modeling packages such as Autodesk Maya 2008 and Softimage Mod Tool Pro 7.5. You can find these rigs on the XNA Creators Club site (<a href="http://creators.xna.com">http://creators.xna.com</a>). After creating the animation, you need to export it to the FBX format and load it using the content processor found in this sample. For instructions on how to export the animations, see the readme for each of the animation rigs.</p>
  809. </div>
  810. <a name="ID4EZF"></a><h1 class="heading">How the Sample Works</h1><div id="ID4EZF" class="hxnx1">
  811. <p>The sample contains four projects:</p>
  812. <ul>
  813. <li>
  814. <code>CustomAvatarAnimationPipeline</code> is the Content Pipeline assembly containing the new content processor that converts the avatar animation .fbx file into the <code>CustomAvatarAnimationData</code> type.</li>
  815. <li>
  816. <code>CustomAvatarAnimationWindows</code> and <code>CustomAvatarAnimationXbox</code> are shared projects that both contain the same files. They contain the classes used to store and play back the custom avatar animation. The Windows version is needed at build time by the <code>CustomAvatarAnimationPipeline</code> project, and the Xbox version is needed at run time to load the custom animation.</li>
  817. <li>
  818. <code>CustomAvatarAnimationSampleXbox</code> contains the sample's game logic that demonstrates how to load and play the custom animation.</li>
  819. </ul>
  820. <p>
  821. The <code>CustomAvatarAnimationProcessor</code> works similarly to the Skinned Model sample found on the <a href="http://creators.xna.com">http://creators.xna.com</a> site. It finds the skeleton and animations and converts them into a <code>CustomAvatarAnimationData</code> class. The skeleton contains some extra bones at the end of each part of the hierarchy that the <code>AvatarRenderer</code> doesn't use. The <code>RemoveEndBonesAndFixBoneNames</code> method removes these extra bones and also calls <code>CleanBoneName</code> to remove unneeded text from the bone names that is added as part of the export from the modeling package.
  822. </p>
  823. <p class="MsoNormal">
  824. <span style="font-size:8.5pt;
  825. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">At run time,
  826. <code>CustomAvatarAnimationData</code>
  827. </span>
  828. <span style="font-size:8.5pt;font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  829. is loaded using a Content Manager like any other asset. You can then
  830. construct a <code>CustomAnimationPlayer</code>
  831. from the data to enable playback. You then use this player like an
  832. <span style="font-size:8.5pt;font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  833. <code>AvatarAnimation</code> </span>&nbsp;to draw the avatar by using the
  834. <code>AvatarRenderer.Draw</code></span><span style="font-size:9.0pt;font-family:&quot;Courier New&quot;;
  835. color:#000066"> </span>
  836. <span style="font-size:8.5pt;
  837. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black"> method.</span><span style="font-size:
  838. 8.5pt;font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">&nbsp;
  839. In addition to CustomAvatarAnimationData, you can load an associated
  840. Avatar facial expression.&nbsp; The Avatar Facial expression is a
  841. comma-separated file that specifies facial keyframe data as enumerated
  842. values.&nbsp; Valid expression values are as follows:<o:p></o:p></span></p>
  843. <p class="MsoNormal">
  844. <o:p></o:p></p>
  845. <table border="0" cellpadding="0" cellspacing="0" class="auto-style1" style="mso-yfti-tbllook: 1184; mso-padding-alt: 0in 0in 0in 0in">
  846. <tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes;mso-yfti-lastrow:yes">
  847. <td style="width:159.6pt;border:solid windowtext 1.0pt;
  848. padding:0in 5.4pt 0in 5.4pt" valign="top" width="213">
  849. <p class="MsoNormal">
  850. <span style="font-size:8.5pt;
  851. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Eye<o:p></o:p></span></p>
  852. <table border="0" cellpadding="0" cellspacing="0" class="auto-style1" style="mso-yfti-tbllook: 1184; mso-padding-alt: 0in 0in 0in 0in">
  853. <tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes">
  854. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  855. padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  856. <p class="MsoNormal">
  857. <span style="font-size:8.5pt;
  858. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Neutral<o:p></o:p></span></p>
  859. </td>
  860. <td style="width:22.5pt;border:solid windowtext 1.0pt;
  861. border-left:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  862. <p class="MsoNormal">
  863. <span style="font-size:8.5pt;
  864. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">0<o:p></o:p></span></p>
  865. </td>
  866. </tr>
  867. <tr style="mso-yfti-irow:1">
  868. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  869. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  870. <p class="MsoNormal">
  871. <span style="font-size:8.5pt;
  872. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Sad<o:p></o:p></span></p>
  873. </td>
  874. <td style="width:22.5pt;border-top:none;border-left:
  875. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  876. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  877. <p class="MsoNormal">
  878. <span style="font-size:8.5pt;
  879. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">1<o:p></o:p></span></p>
  880. </td>
  881. </tr>
  882. <tr style="mso-yfti-irow:2">
  883. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  884. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  885. <p class="MsoNormal">
  886. <span style="font-size:8.5pt;
  887. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Angry<o:p></o:p></span></p>
  888. </td>
  889. <td style="width:22.5pt;border-top:none;border-left:
  890. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  891. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  892. <p class="MsoNormal">
  893. <span style="font-size:8.5pt;
  894. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">2<o:p></o:p></span></p>
  895. </td>
  896. </tr>
  897. <tr style="mso-yfti-irow:3">
  898. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  899. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  900. <p class="MsoNormal">
  901. <span style="font-size:8.5pt;
  902. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Confused<o:p></o:p></span></p>
  903. </td>
  904. <td style="width:22.5pt;border-top:none;border-left:
  905. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  906. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  907. <p class="MsoNormal">
  908. <span style="font-size:8.5pt;
  909. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">3<o:p></o:p></span></p>
  910. </td>
  911. </tr>
  912. <tr style="mso-yfti-irow:4">
  913. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  914. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  915. <p class="MsoNormal">
  916. <span style="font-size:8.5pt;
  917. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Laughing<o:p></o:p></span></p>
  918. </td>
  919. <td style="width:22.5pt;border-top:none;border-left:
  920. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  921. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  922. <p class="MsoNormal">
  923. <span style="font-size:8.5pt;
  924. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">4<o:p></o:p></span></p>
  925. </td>
  926. </tr>
  927. <tr style="mso-yfti-irow:5">
  928. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  929. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  930. <p class="MsoNormal">
  931. <span style="font-size:8.5pt;
  932. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Shocked<o:p></o:p></span></p>
  933. </td>
  934. <td style="width:22.5pt;border-top:none;border-left:
  935. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  936. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  937. <p class="MsoNormal">
  938. <span style="font-size:8.5pt;
  939. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">5<o:p></o:p></span></p>
  940. </td>
  941. </tr>
  942. <tr style="mso-yfti-irow:6">
  943. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  944. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  945. <p class="MsoNormal">
  946. <span style="font-size:8.5pt;
  947. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Happy<o:p></o:p></span></p>
  948. </td>
  949. <td style="width:22.5pt;border-top:none;border-left:
  950. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  951. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  952. <p class="MsoNormal">
  953. <span style="font-size:8.5pt;
  954. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">6<o:p></o:p></span></p>
  955. </td>
  956. </tr>
  957. <tr style="mso-yfti-irow:7">
  958. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  959. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  960. <p class="MsoNormal">
  961. <span style="font-size:8.5pt;
  962. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Yawning<o:p></o:p></span></p>
  963. </td>
  964. <td style="width:22.5pt;border-top:none;border-left:
  965. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  966. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  967. <p class="MsoNormal">
  968. <span style="font-size:8.5pt;
  969. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">7<o:p></o:p></span></p>
  970. </td>
  971. </tr>
  972. <tr style="mso-yfti-irow:8">
  973. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  974. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  975. <p class="MsoNormal">
  976. <span style="font-size:8.5pt;
  977. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Sleeping<o:p></o:p></span></p>
  978. </td>
  979. <td style="width:22.5pt;border-top:none;border-left:
  980. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  981. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  982. <p class="MsoNormal">
  983. <span style="font-size:8.5pt;
  984. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">8<o:p></o:p></span></p>
  985. </td>
  986. </tr>
  987. <tr style="mso-yfti-irow:9">
  988. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  989. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  990. <p class="MsoNormal">
  991. <span style="font-size:8.5pt;
  992. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">LookUp<o:p></o:p></span></p>
  993. </td>
  994. <td style="width:22.5pt;border-top:none;border-left:
  995. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  996. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  997. <p class="MsoNormal">
  998. <span style="font-size:8.5pt;
  999. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">9<o:p></o:p></span></p>
  1000. </td>
  1001. </tr>
  1002. <tr style="mso-yfti-irow:10">
  1003. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  1004. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  1005. <p class="MsoNormal">
  1006. <span style="font-size:8.5pt;
  1007. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">LookDown<o:p></o:p></span></p>
  1008. </td>
  1009. <td style="width:22.5pt;border-top:none;border-left:
  1010. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1011. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  1012. <p class="MsoNormal">
  1013. <span style="font-size:8.5pt;
  1014. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">10<o:p></o:p></span></p>
  1015. </td>
  1016. </tr>
  1017. <tr style="mso-yfti-irow:11">
  1018. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  1019. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  1020. <p class="MsoNormal">
  1021. <span style="font-size:8.5pt;
  1022. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">LookLeft<o:p></o:p></span></p>
  1023. </td>
  1024. <td style="width:22.5pt;border-top:none;border-left:
  1025. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1026. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  1027. <p class="MsoNormal">
  1028. <span style="font-size:8.5pt;
  1029. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">11<o:p></o:p></span></p>
  1030. </td>
  1031. </tr>
  1032. <tr style="mso-yfti-irow:12">
  1033. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  1034. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  1035. <p class="MsoNormal">
  1036. <span style="font-size:8.5pt;
  1037. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1038. LookRight<o:p></o:p></span></p>
  1039. </td>
  1040. <td style="width:22.5pt;border-top:none;border-left:
  1041. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1042. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  1043. <p class="MsoNormal">
  1044. <span style="font-size:8.5pt;
  1045. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">12<o:p></o:p></span></p>
  1046. </td>
  1047. </tr>
  1048. <tr style="mso-yfti-irow:13;mso-yfti-lastrow:yes">
  1049. <td style="width:112.25pt;border:solid windowtext 1.0pt;
  1050. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="150">
  1051. <p class="MsoNormal">
  1052. <span style="font-size:8.5pt;
  1053. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Blink<o:p></o:p></span></p>
  1054. </td>
  1055. <td style="width:22.5pt;border-top:none;border-left:
  1056. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1057. padding:0in 5.4pt 0in 5.4pt" valign="top" width="30">
  1058. <p class="MsoNormal">
  1059. <span style="font-size:8.5pt;
  1060. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">13<o:p></o:p></span></p>
  1061. </td>
  1062. </tr>
  1063. </table>
  1064. </td>
  1065. <td style="width:159.6pt;border:solid windowtext 1.0pt;
  1066. border-left:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="213">
  1067. <p class="MsoNormal">
  1068. <span style="font-size:8.5pt;
  1069. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Eyebrow<o:p></o:p></span></p>
  1070. <table border="0" cellpadding="0" cellspacing="0" class="auto-style1" style="mso-yfti-tbllook: 1184; mso-padding-alt: 0in 0in 0in 0in">
  1071. <tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes">
  1072. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1073. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1074. <p class="MsoNormal">
  1075. <span style="font-size:8.5pt;
  1076. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Neutral<o:p></o:p></span></p>
  1077. </td>
  1078. <td style="width:74.05pt;border:solid windowtext 1.0pt;
  1079. border-left:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1080. <p class="MsoNormal">
  1081. <span style="font-size:8.5pt;
  1082. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">0<o:p></o:p></span></p>
  1083. </td>
  1084. </tr>
  1085. <tr style="mso-yfti-irow:1">
  1086. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1087. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1088. <p class="MsoNormal">
  1089. <span style="font-size:8.5pt;
  1090. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Sad<o:p></o:p></span></p>
  1091. </td>
  1092. <td style="width:74.05pt;border-top:none;border-left:
  1093. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1094. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1095. <p class="MsoNormal">
  1096. <span style="font-size:8.5pt;
  1097. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">1<o:p></o:p></span></p>
  1098. </td>
  1099. </tr>
  1100. <tr style="mso-yfti-irow:2">
  1101. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1102. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1103. <p class="MsoNormal">
  1104. <span style="font-size:8.5pt;
  1105. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Angry<o:p></o:p></span></p>
  1106. </td>
  1107. <td style="width:74.05pt;border-top:none;border-left:
  1108. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1109. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1110. <p class="MsoNormal">
  1111. <span style="font-size:8.5pt;
  1112. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">2<o:p></o:p></span></p>
  1113. </td>
  1114. </tr>
  1115. <tr style="mso-yfti-irow:3">
  1116. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1117. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1118. <p class="MsoNormal">
  1119. <span style="font-size:8.5pt;
  1120. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Confused<o:p></o:p></span></p>
  1121. </td>
  1122. <td style="width:74.05pt;border-top:none;border-left:
  1123. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1124. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1125. <p class="MsoNormal">
  1126. <span style="font-size:8.5pt;
  1127. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">3<o:p></o:p></span></p>
  1128. </td>
  1129. </tr>
  1130. <tr style="mso-yfti-irow:4;mso-yfti-lastrow:yes">
  1131. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1132. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1133. <p class="MsoNormal">
  1134. <span style="font-size:8.5pt;
  1135. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Raised<o:p></o:p></span></p>
  1136. </td>
  1137. <td style="width:74.05pt;border-top:none;border-left:
  1138. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1139. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1140. <p class="MsoNormal">
  1141. <span style="font-size:8.5pt;
  1142. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">4<o:p></o:p></span></p>
  1143. </td>
  1144. </tr>
  1145. </table>
  1146. </td>
  1147. <td style="width:159.6pt;border:solid windowtext 1.0pt;
  1148. border-left:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="213">
  1149. <p class="MsoNormal">
  1150. <span style="font-size:8.5pt;
  1151. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1152. AvatarMouth<o:p></o:p></span></p>
  1153. <table border="0" cellpadding="0" cellspacing="0" class="auto-style1" style="mso-yfti-tbllook: 1184; mso-padding-alt: 0in 0in 0in 0in">
  1154. <tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes">
  1155. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1156. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1157. <p class="MsoNormal">
  1158. <span style="font-size:8.5pt;
  1159. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Neutral<o:p></o:p></span></p>
  1160. </td>
  1161. <td style="width:74.05pt;border:solid windowtext 1.0pt;
  1162. border-left:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1163. <p class="MsoNormal">
  1164. <span style="font-size:8.5pt;
  1165. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">0<o:p></o:p></span></p>
  1166. </td>
  1167. </tr>
  1168. <tr style="mso-yfti-irow:1">
  1169. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1170. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1171. <p class="MsoNormal">
  1172. <span style="font-size:8.5pt;
  1173. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Sad<o:p></o:p></span></p>
  1174. </td>
  1175. <td style="width:74.05pt;border-top:none;border-left:
  1176. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1177. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1178. <p class="MsoNormal">
  1179. <span style="font-size:8.5pt;
  1180. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">1<o:p></o:p></span></p>
  1181. </td>
  1182. </tr>
  1183. <tr style="mso-yfti-irow:2">
  1184. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1185. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1186. <p class="MsoNormal">
  1187. <span style="font-size:8.5pt;
  1188. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Angry<o:p></o:p></span></p>
  1189. </td>
  1190. <td style="width:74.05pt;border-top:none;border-left:
  1191. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1192. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1193. <p class="MsoNormal">
  1194. <span style="font-size:8.5pt;
  1195. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">2<o:p></o:p></span></p>
  1196. </td>
  1197. </tr>
  1198. <tr style="mso-yfti-irow:3">
  1199. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1200. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1201. <p class="MsoNormal">
  1202. <span style="font-size:8.5pt;
  1203. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Confused<o:p></o:p></span></p>
  1204. </td>
  1205. <td style="width:74.05pt;border-top:none;border-left:
  1206. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1207. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1208. <p class="MsoNormal">
  1209. <span style="font-size:8.5pt;
  1210. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">3<o:p></o:p></span></p>
  1211. </td>
  1212. </tr>
  1213. <tr style="mso-yfti-irow:4">
  1214. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1215. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1216. <p class="MsoNormal">
  1217. <span style="font-size:8.5pt;
  1218. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Laughing<o:p></o:p></span></p>
  1219. </td>
  1220. <td style="width:74.05pt;border-top:none;border-left:
  1221. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1222. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1223. <p class="MsoNormal">
  1224. <span style="font-size:8.5pt;
  1225. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">4<o:p></o:p></span></p>
  1226. </td>
  1227. </tr>
  1228. <tr style="mso-yfti-irow:5">
  1229. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1230. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1231. <p class="MsoNormal">
  1232. <span style="font-size:8.5pt;
  1233. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Shocked<o:p></o:p></span></p>
  1234. </td>
  1235. <td style="width:74.05pt;border-top:none;border-left:
  1236. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1237. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1238. <p class="MsoNormal">
  1239. <span style="font-size:8.5pt;
  1240. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">5<o:p></o:p></span></p>
  1241. </td>
  1242. </tr>
  1243. <tr style="mso-yfti-irow:6">
  1244. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1245. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1246. <p class="MsoNormal">
  1247. <span style="font-size:8.5pt;
  1248. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">Happy<o:p></o:p></span></p>
  1249. </td>
  1250. <td style="width:74.05pt;border-top:none;border-left:
  1251. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1252. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1253. <p class="MsoNormal">
  1254. <span style="font-size:8.5pt;
  1255. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">6<o:p></o:p></span></p>
  1256. </td>
  1257. </tr>
  1258. <tr style="mso-yfti-irow:7">
  1259. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1260. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1261. <p class="MsoNormal">
  1262. <span style="font-size:8.5pt;
  1263. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1264. PhoneticO<o:p></o:p></span></p>
  1265. </td>
  1266. <td style="width:74.05pt;border-top:none;border-left:
  1267. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1268. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1269. <p class="MsoNormal">
  1270. <span style="font-size:8.5pt;
  1271. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">7<o:p></o:p></span></p>
  1272. </td>
  1273. </tr>
  1274. <tr style="mso-yfti-irow:8">
  1275. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1276. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1277. <p class="MsoNormal">
  1278. <span style="font-size:8.5pt;
  1279. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1280. PhoneticAi<o:p></o:p></span></p>
  1281. </td>
  1282. <td style="width:74.05pt;border-top:none;border-left:
  1283. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1284. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1285. <p class="MsoNormal">
  1286. <span style="font-size:8.5pt;
  1287. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">8<o:p></o:p></span></p>
  1288. </td>
  1289. </tr>
  1290. <tr style="mso-yfti-irow:9">
  1291. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1292. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1293. <p class="MsoNormal">
  1294. <span style="font-size:8.5pt;
  1295. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1296. PhoneticEe<o:p></o:p></span></p>
  1297. </td>
  1298. <td style="width:74.05pt;border-top:none;border-left:
  1299. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1300. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1301. <p class="MsoNormal">
  1302. <span style="font-size:8.5pt;
  1303. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">9<o:p></o:p></span></p>
  1304. </td>
  1305. </tr>
  1306. <tr style="mso-yfti-irow:10">
  1307. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1308. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1309. <p class="MsoNormal">
  1310. <span style="font-size:8.5pt;
  1311. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1312. PhoneticFv<o:p></o:p></span></p>
  1313. </td>
  1314. <td style="width:74.05pt;border-top:none;border-left:
  1315. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1316. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1317. <p class="MsoNormal">
  1318. <span style="font-size:8.5pt;
  1319. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">10<o:p></o:p></span></p>
  1320. </td>
  1321. </tr>
  1322. <tr style="mso-yfti-irow:11">
  1323. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1324. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1325. <p class="MsoNormal">
  1326. <span style="font-size:8.5pt;
  1327. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1328. PhoneticW<o:p></o:p></span></p>
  1329. </td>
  1330. <td style="width:74.05pt;border-top:none;border-left:
  1331. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1332. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1333. <p class="MsoNormal">
  1334. <span style="font-size:8.5pt;
  1335. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">11<o:p></o:p></span></p>
  1336. </td>
  1337. </tr>
  1338. <tr style="mso-yfti-irow:12">
  1339. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1340. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1341. <p class="MsoNormal">
  1342. <span style="font-size:8.5pt;
  1343. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1344. PhoneticL<o:p></o:p></span></p>
  1345. </td>
  1346. <td style="width:74.05pt;border-top:none;border-left:
  1347. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1348. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1349. <p class="MsoNormal">
  1350. <span style="font-size:8.5pt;
  1351. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">12<o:p></o:p></span></p>
  1352. </td>
  1353. </tr>
  1354. <tr style="mso-yfti-irow:13;mso-yfti-lastrow:yes">
  1355. <td style="width:74.0pt;border:solid windowtext 1.0pt;
  1356. border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1357. <p class="MsoNormal">
  1358. <span style="font-size:8.5pt;
  1359. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">
  1360. PhoneticDth<o:p></o:p></span></p>
  1361. </td>
  1362. <td style="width:74.05pt;border-top:none;border-left:
  1363. none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  1364. padding:0in 5.4pt 0in 5.4pt" valign="top" width="99">
  1365. <p class="MsoNormal">
  1366. <span style="font-size:8.5pt;
  1367. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black">13<o:p></o:p></span></p>
  1368. </td>
  1369. </tr>
  1370. </table>
  1371. </td>
  1372. </tr>
  1373. </table>
  1374. <p class="MsoNormal">
  1375. <span style="font-size:8.5pt;
  1376. font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;color:black"><o:p>&nbsp;</o:p></span></p>
  1377. <p class="MsoNormal">
  1378. These enumerations correspond to values used by the Maya and Max Avatar
  1379. animation rigs, so this file could be potentially be generated
  1380. automatically using a script or plugin.&nbsp; The file can be manually
  1381. created as well.<o:p></o:p></p>
  1382. <p class="MsoNormal">
  1383. <o:p>
  1384. &nbsp;</o:p></p>
  1385. <p class="MsoNormal">
  1386. The facial expression file has the following format:<o:p></o:p></p>
  1387. <p class="MsoNormal">
  1388. TimeInMilliseconds,LeftEye,LeftEyebrow,Mouth,RightEye,RightEyebrow<o:p></o:p></p>
  1389. <p class="MsoNormal">
  1390. <o:p>
  1391. &nbsp;</o:p></p>
  1392. <p class="MsoNormal">
  1393. This file is associated with the CustomAvatarAnimationData in the XNA
  1394. Content Pipeline.&nbsp; Ensure that the CustomAvatarAnimationProcessor
  1395. is being used as the Content Processor for the animation.&nbsp; The
  1396. facial expression file can then be specified in the properties rollout
  1397. for the Content Processor.<o:p></o:p></p>
  1398. </div>
  1399. <a name="ID4EVH"></a><h1 class="heading">Extending the Sample</h1><div id="ID4EVH" class="hxnx1">
  1400. <p>The <code>CustomAvatarAnimationPlayer</code> class only supports playback of a single animation. One way to extend the sample would be to add support for multiple animations and blending between them. You could also add support for playback of multiple animations for different parts of the avatar. This would allow for playback of the walk animation at the same time the upper body of the avatar plays another animation, such as clapping.</p>
  1401. </div>
  1402. </div><div class="footer" id="footer"><p>© 2010 Microsoft Corporation. All rights reserved.<br>Send feedback to
  1403. <a href="mailto:[email protected]?subject=Documentation Feedback: Custom Avatar Animation Sample">
  1404. [email protected]</a>.</p></div></div></body></html>