8267 lines
No EOL
1.3 MiB
8267 lines
No EOL
1.3 MiB
{\rtf1\ansi\ansicpg1252\uc1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang3081\deflangfe1041{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
|
|
{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f4\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Helvetica;}
|
|
{\f5\fmodern\fcharset0\fprq1{\*\panose 02070409020205020404}Courier;}{\f6\froman\fcharset0\fprq2{\*\panose 02020603040505020304}Tms Rmn;}{\f7\fswiss\fcharset0\fprq2{\*\panose 020b0604020202030204}Helv;}
|
|
{\f8\froman\fcharset0\fprq2{\*\panose 02040503060506020304}New York;}{\f9\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}System;}{\f10\fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}
|
|
{\f11\fmodern\fcharset128\fprq1{\*\panose 02020609040205080304}MS Mincho{\*\falt ?l?r ??\'81\'66c};}
|
|
{\f12\froman\fcharset129\fprq2{\*\panose 02030600000101010101}Batang{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEc\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEc};}
|
|
{\f13\fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ????????\'a8\'ac????};}{\f14\froman\fcharset136\fprq2{\*\panose 02020500000000000000}PMingLiU{\*\falt !Ps2OcuAe};}
|
|
{\f15\fmodern\fcharset128\fprq1{\*\panose 020b0609070205080204}MS Gothic{\*\falt ?l?r ?S?V?b?N};}
|
|
{\f16\fswiss\fcharset129\fprq2{\*\panose 020b0600000101010101}Dotum{\*\falt \'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEcE\'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcEcIi\'a1\'cb\'a2\'e7E\'a2\'ae};}
|
|
{\f17\fmodern\fcharset134\fprq1{\*\panose 02010609060101010101}SimHei{\*\falt o?????\'a1\'ec??2?????\'a1\'ec????};}{\f18\fmodern\fcharset136\fprq1{\*\panose 02020509000000000000}MingLiU{\*\falt 2OcuAe};}
|
|
{\f19\froman\fcharset128\fprq1{\*\panose 02020609040305080305}Mincho{\*\falt ??\'81\'66c};}
|
|
{\f20\fswiss\fcharset129\fprq2{\*\panose 020b0600000101010101}Gulim{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEcE\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcE};}
|
|
{\f21\froman\fcharset0\fprq2{\*\panose 02040604050505020304}Century;}{\f22\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Angsana New;}{\f23\fswiss\fcharset0\fprq2{\*\panose 020b0304020202020204}Cordia New;}
|
|
{\f24\froman\fcharset0\fprq2{\*\panose 02040503050203030202}Mangal;}{\f25\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Latha;}{\f26\froman\fcharset0\fprq2{\*\panose 010a0502050306030303}Sylfaen;}
|
|
{\f27\fnil\fcharset0\fprq2{\*\panose 01010600010101010101}Vrinda;}{\f28\fnil\fcharset0\fprq2{\*\panose 02000500000000000000}Raavi;}{\f29\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Shruti;}
|
|
{\f30\froman\fcharset1\fprq2{\*\panose 00000400000000000000}Sendnya;}{\f31\fnil\fcharset0\fprq2{\*\panose 02000500000000000000}Gautami;}{\f32\fnil\fcharset0\fprq2{\*\panose 00000400000000000000}Tunga;}
|
|
{\f33\froman\fcharset1\fprq2{\*\panose 00000000000000000000}Estrangella Edessa;}{\f34\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Arial Unicode MS;}{\f35\froman\fcharset0\fprq0{\*\panose 00000000000000000000}??????\'a1\'a7????;}
|
|
{\f36\fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma;}{\f37\froman\fcharset0\fprq0{\*\panose 00000000000000000000}TimesNewRomanPSMT;}{\f38\froman\fcharset0\fprq0{\*\panose 00000000000000000000}TimesTen-Roman;}
|
|
{\f39\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}SPSS Marker Set;}{\f40\froman\fcharset0\fprq0{\*\panose 00000000000000000000}TimesTen-Italic;}{\f41\fnil\fcharset0\fprq0{\*\panose 00000000000000000000}Advpalatj01;}
|
|
{\f42\froman\fcharset0\fprq0{\*\panose 00000000000000000000}AGaramond-Regular;}{\f43\froman\fcharset0\fprq0{\*\panose 00000000000000000000}AGaramond-Italic;}{\f44\froman\fcharset0\fprq0{\*\panose 00000000000000000000}AGaramond-Semibold;}
|
|
{\f45\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}Marlett;}{\f46\froman\fcharset129\fprq2{\*\panose 00000000000000000000}@Batang;}{\f47\fmodern\fcharset129\fprq1{\*\panose 00000000000000000000}BatangChe;}
|
|
{\f48\fmodern\fcharset129\fprq1{\*\panose 00000000000000000000}@BatangChe;}{\f49\froman\fcharset129\fprq2{\*\panose 00000000000000000000}Gungsuh;}{\f50\froman\fcharset129\fprq2{\*\panose 00000000000000000000}@Gungsuh;}
|
|
{\f51\fmodern\fcharset129\fprq1{\*\panose 00000000000000000000}GungsuhChe;}{\f52\fmodern\fcharset129\fprq1{\*\panose 00000000000000000000}@GungsuhChe;}{\f53\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}DaunPenh;}
|
|
{\f54\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}DokChampa;}{\f55\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Estrangelo Edessa;}{\f56\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Euphemia;}
|
|
{\f57\fswiss\fcharset129\fprq2{\*\panose 00000000000000000000}@Gulim;}{\f58\fmodern\fcharset129\fprq1{\*\panose 00000000000000000000}GulimChe;}{\f59\fmodern\fcharset129\fprq1{\*\panose 00000000000000000000}@GulimChe;}
|
|
{\f60\fswiss\fcharset129\fprq2{\*\panose 00000000000000000000}@Dotum;}{\f61\fmodern\fcharset129\fprq1{\*\panose 00000000000000000000}DotumChe;}{\f62\fmodern\fcharset129\fprq1{\*\panose 00000000000000000000}@DotumChe;}
|
|
{\f63\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Impact;}{\f64\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Iskoola Pota;}{\f65\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Kalinga;}
|
|
{\f66\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Kartika;}{\f67\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}Lucida Console;}{\f68\fswiss\fcharset129\fprq2{\*\panose 00000000000000000000}Malgun Gothic;}
|
|
{\f69\fswiss\fcharset129\fprq2{\*\panose 00000000000000000000}@Malgun Gothic;}{\f70\fswiss\fcharset128\fprq2{\*\panose 00000000000000000000}Meiryo;}{\f71\fswiss\fcharset128\fprq2{\*\panose 00000000000000000000}@Meiryo;}
|
|
{\f72\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Microsoft Himalaya;}{\f73\fswiss\fcharset136\fprq2{\*\panose 00000000000000000000}Microsoft JhengHei;}{\f74\fswiss\fcharset136\fprq2{\*\panose 00000000000000000000}@Microsoft JhengHei;}
|
|
{\f75\fswiss\fcharset134\fprq2{\*\panose 00000000000000000000}Microsoft YaHei;}{\f76\fswiss\fcharset134\fprq2{\*\panose 00000000000000000000}@Microsoft YaHei;}{\f77\fmodern\fcharset136\fprq1{\*\panose 00000000000000000000}@MingLiU;}
|
|
{\f78\froman\fcharset136\fprq2{\*\panose 00000000000000000000}@PMingLiU;}{\f79\froman\fcharset136\fprq2{\*\panose 00000000000000000000}MingLiU_HKSCS;}{\f80\froman\fcharset136\fprq2{\*\panose 00000000000000000000}@MingLiU_HKSCS;}
|
|
{\f81\froman\fcharset136\fprq2{\*\panose 00000000000000000000}MingLiU-ExtB;}{\f82\froman\fcharset136\fprq2{\*\panose 00000000000000000000}@MingLiU-ExtB;}{\f83\froman\fcharset136\fprq2{\*\panose 00000000000000000000}PMingLiU-ExtB;}
|
|
{\f84\froman\fcharset136\fprq2{\*\panose 00000000000000000000}@PMingLiU-ExtB;}{\f85\froman\fcharset136\fprq2{\*\panose 00000000000000000000}MingLiU_HKSCS-ExtB;}{\f86\froman\fcharset136\fprq2{\*\panose 00000000000000000000}@MingLiU_HKSCS-ExtB;}
|
|
{\f87\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Mongolian Baiti;}{\f88\fmodern\fcharset128\fprq1{\*\panose 00000000000000000000}@MS Gothic;}{\f89\fswiss\fcharset128\fprq2{\*\panose 00000000000000000000}MS PGothic;}
|
|
{\f90\fswiss\fcharset128\fprq2{\*\panose 00000000000000000000}@MS PGothic;}{\f91\fswiss\fcharset128\fprq2{\*\panose 00000000000000000000}MS UI Gothic;}{\f92\fswiss\fcharset128\fprq2{\*\panose 00000000000000000000}@MS UI Gothic;}
|
|
{\f93\fmodern\fcharset128\fprq1{\*\panose 00000000000000000000}@MS Mincho;}{\f94\froman\fcharset128\fprq2{\*\panose 00000000000000000000}MS PMincho;}{\f95\froman\fcharset128\fprq2{\*\panose 00000000000000000000}@MS PMincho;}
|
|
{\f96\fnil\fcharset0\fprq2 MV Boli;}{\f97\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Nyala;}{\f98\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Plantagenet Cherokee;}
|
|
{\f99\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Segoe Script;}{\f100\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Segoe UI;}{\f101\fnil\fcharset134\fprq2{\*\panose 00000000000000000000}@SimSun;}
|
|
{\f102\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}NSimSun;}{\f103\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}@NSimSun;}{\f104\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}SimSun-ExtB;}
|
|
{\f105\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}@SimSun-ExtB;}{\f106\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Microsoft Yi Baiti;}{\f107\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Microsoft Sans Serif;}
|
|
{\f108\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Gisha;}{\f109\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Leelawadee;}{\f110\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Microsoft Uighur;}
|
|
{\f111\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}MoolBoran;}{\f112\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Andalus;}{\f113\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Arabic Typesetting;}
|
|
{\f114\fnil\fcharset178\fprq2{\*\panose 00000000000000000000}Simplified Arabic;}{\f115\fmodern\fcharset178\fprq1{\*\panose 00000000000000000000}Simplified Arabic Fixed;}{\f116\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Traditional Arabic;}
|
|
{\f117\fnil\fcharset177\fprq2{\*\panose 00000000000000000000}Aharoni;}{\f118\fswiss\fcharset177\fprq2{\*\panose 00000000000000000000}David;}{\f119\fswiss\fcharset177\fprq2{\*\panose 00000000000000000000}FrankRuehl;}
|
|
{\f120\fnil\fcharset177\fprq2{\*\panose 00000000000000000000}Levenim MT;}{\f121\fswiss\fcharset177\fprq2{\*\panose 00000000000000000000}Miriam;}{\f122\fmodern\fcharset177\fprq1{\*\panose 00000000000000000000}Miriam Fixed;}
|
|
{\f123\fswiss\fcharset177\fprq2{\*\panose 00000000000000000000}Narkisim;}{\f124\fmodern\fcharset177\fprq1{\*\panose 00000000000000000000}Rod;}{\f125\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}FangSong;}
|
|
{\f126\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}@FangSong;}{\f127\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}@SimHei;}{\f128\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}KaiTi;}
|
|
{\f129\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}@KaiTi;}{\f130\froman\fcharset0\fprq2{\*\panose 00000000000000000000}AngsanaUPC;}{\f131\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Browallia New;}
|
|
{\f132\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}BrowalliaUPC;}{\f133\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}CordiaUPC;}{\f134\froman\fcharset0\fprq2{\*\panose 00000000000000000000}DilleniaUPC;}
|
|
{\f135\froman\fcharset0\fprq2{\*\panose 00000000000000000000}EucrosiaUPC;}{\f136\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}FreesiaUPC;}{\f137\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}IrisUPC;}
|
|
{\f138\froman\fcharset0\fprq2{\*\panose 00000000000000000000}JasmineUPC;}{\f139\froman\fcharset0\fprq2{\*\panose 00000000000000000000}KodchiangUPC;}{\f140\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}LilyUPC;}
|
|
{\f141\fscript\fcharset136\fprq1{\*\panose 00000000000000000000}DFKai-SB;}{\f142\fscript\fcharset136\fprq1{\*\panose 00000000000000000000}@DFKai-SB;}{\f143\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Lucida Sans Unicode;}
|
|
{\f144\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Arial Black;}{\f145\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Calibri;}{\f146\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Cambria;}
|
|
{\f147\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Cambria Math;}{\f148\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Candara;}{\f149\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Comic Sans MS;}
|
|
{\f150\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}Consolas;}{\f151\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Constantia;}{\f152\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Corbel;}
|
|
{\f153\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Franklin Gothic Medium;}{\f154\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Georgia;}{\f155\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Palatino Linotype;}
|
|
{\f156\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Segoe Print;}{\f157\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Trebuchet MS;}{\f158\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Verdana;}
|
|
{\f159\froman\fcharset2\fprq2{\*\panose 00000000000000000000}Webdings;}{\f160\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Arial Narrow;}{\f161\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Book Antiqua;}
|
|
{\f162\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Bookman Old Style;}{\f163\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Century Gothic;}{\f164\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Garamond;}
|
|
{\f165\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Haettenschweiler;}{\f166\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}MS Outlook;}{\f167\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Monotype Corsiva;}
|
|
{\f168\froman\fcharset2\fprq2{\*\panose 00000000000000000000}Wingdings 2;}{\f169\froman\fcharset2\fprq2{\*\panose 00000000000000000000}Wingdings 3;}{\f170\froman\fcharset2\fprq2{\*\panose 00000000000000000000}MT Extra;}
|
|
{\f171\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}\'c1nhMinh 1.1;}{\f172\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}\'c1nhMinhH 1.1;}{\f173\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Heo May 1.1;}
|
|
{\f174\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Heo May Hoa 1.1;}{\f175\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}HoangYen 1.1;}{\f176\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}HoangYenH 1.1;}
|
|
{\f177\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}MinhQu\'e2n 1.1;}{\f178\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}MinhQu\'e2nH 1.1;}{\f179\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}PhuongThao 1.1;}
|
|
{\f180\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}PhuongThaoH 1.1;}{\f181\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}ThaHuong 1.1;}{\f182\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}ThaHuongH 1.1;}
|
|
{\f183\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}UHo\'e0i 1.1;}{\f184\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}UHo\'e0iH 1.1;}{\f185\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VNI-Aptima;}
|
|
{\f186\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VNI-Helve;}{\f187\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}VNI-Internet Mail;}{\f188\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}VPS Courier;}
|
|
{\f189\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Helv;}{\f190\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Quang Duc;}{\f191\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VNI-Times;}
|
|
{\f192\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}DejaVu Sans Condensed;}{\f193\froman\fcharset0\fprq2{\*\panose 00000000000000000000}DejaVu Serif;}{\f194\froman\fcharset0\fprq2{\*\panose 00000000000000000000}DejaVu Serif Condensed;}
|
|
{\f195\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}DejaVu Sans Mono;}{\f196\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}DejaVu Sans;}{\f197\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}DejaVu Sans Light;}
|
|
{\f198\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}OpenSymbol;}{\f199\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Eurostile BoldExtendedTwo;}{\f200\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Verdana Ref;}
|
|
{\f201\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}MS Song;}{\f202\fmodern\fcharset134\fprq1{\*\panose 00000000000000000000}@MS Song;}{\f203\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Courier EVT;}
|
|
{\f204\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}ArialEVT;}{\f205\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Arial EVT;}{\f206\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Times New Roman EVT;}
|
|
{\f207\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Jokerman LET;}{\f208\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}John Handy LET;}{\f209\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Orange LET;}
|
|
{\f210\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Academy Engraved LET;}{\f211\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}University Roman LET;}{\f212\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Victorian LET;}
|
|
{\f213\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Milano LET;}{\f214\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Smudger LET;}{\f215\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Westwood LET;}
|
|
{\f216\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Ruach LET;}{\f217\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Rage Italic LET;}{\f218\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}La Bamba LET;}
|
|
{\f219\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Quixley LET;}{\f220\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Pump Demi Bold LET;}{\f221\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Tiranti Solid LET;}
|
|
{\f222\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Mekanik LET;}{\f223\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}One Stroke Script LET;}{\f224\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Highlight LET;}
|
|
{\f225\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Odessa LET;}{\f226\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Scruff LET;}{\f227\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}Broadway BT;}
|
|
{\f228\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Square721 BT;}{\f229\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}ParkAvenue BT;}{\f230\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Staccato222 BT;}
|
|
{\f231\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Cataneo BT;}{\f232\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Blackletter686 BT;}{\f233\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Calligraph421 BT;}
|
|
{\f234\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}MisterEarl BT;}{\f235\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}OldDreadfulNo7 BT;}{\f236\fswiss\fcharset2\fprq2{\*\panose 00000000000000000000}HolidayPi BT;}
|
|
{\f237\froman\fcharset0\fprq0{\*\panose 00000000000000000000}????\'a8\'ac??;}{\f238\froman\fcharset0\fprq0{\*\panose 00000000000000000000}\'cb\'ce\'cc\'e5;}{\f239\fswiss\fcharset177\fprq2{\*\panose 00000000000000000000}David Transparent;}
|
|
{\f240\fswiss\fcharset177\fprq2{\*\panose 00000000000000000000}Miriam Transparent;}{\f241\fmodern\fcharset177\fprq1{\*\panose 00000000000000000000}Fixed Miriam Transparent;}{\f242\fmodern\fcharset177\fprq1{\*\panose 00000000000000000000}Rod Transparent;}
|
|
{\f243\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Arabic Transparent;}{\f244\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Abri Barcode39;}{\f245\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Abri Barcode39a;}
|
|
{\f246\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Abri Barcode39N;}{\f247\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Abri Barcode39Na;}{\f248\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Abri Barcode39W;}
|
|
{\f249\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Abri Barcode39Wa;}{\f250\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}ABSALOM;}{\f251\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}ALIBI;}
|
|
{\f252\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Anime Ace;}{\f253\fswiss\fcharset128\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS;}{\f254\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}.VnArial;}
|
|
{\f255\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}.VnArial Narrow;}{\f256\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}.VnArialH;}{\f257\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}.VnAvant;}
|
|
{\f258\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}.VnCentury Schoolbook;}{\f259\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}.VnMystical;}{\f260\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}.VnTime;}
|
|
{\f261\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}.VnTimeH;}{\f262\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Abadi MT Condensed Extra Bold;}{\f263\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Abadi MT Condensed Light;}
|
|
{\f264\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}Algerian;}{\f265\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}alittlev;}{\f266\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}Almanac MT;}
|
|
{\f267\fswiss\fcharset2\fprq2{\*\panose 00000000000000000000}Andale Mono IPA;}{\f268\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Anglo-Saxon, 8th c.;}{\f269\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Animorphs;}
|
|
{\f270\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Arial Rounded MT Bold;}{\f271\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Baskerville Old Face;}{\f272\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}BATAVIA;}
|
|
{\f273\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Battel Abbey, 8th c.;}{\f274\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}Bauhaus 93;}{\f275\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}Beesknees ITC;}
|
|
{\f276\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Bell MT;}{\f277\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Bernard MT Condensed;}{\f278\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}Bon Apetit MT;}
|
|
{\f279\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Bouwsma Uncial;}{\f280\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Bradley Hand ITC;}{\f281\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}Braggadocio;}
|
|
{\f282\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Britannic Bold;}{\f283\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}British Block Flourish, 10th c.;}
|
|
{\f284\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}British Museum, 14th c.;}{\f285\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}British Outline Majuscules;}{\f286\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}Brush Script MT;}
|
|
{\f287\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Calisto MT;}{\f288\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Cartoon;}{\f289\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}CASMIRA;}
|
|
{\f290\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Celtic Frames;}{\f291\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Celtic Knot;}{\f292\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}NWCV15;}
|
|
{\f293\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}ELEGANCE;}{\f294\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}ELLIS;}{\f295\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}EXCESS;}
|
|
{\f296\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}GENUINE;}{\f297\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}HELTERSKELTER;}{\f298\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}HERMAN;}
|
|
{\f299\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}ISABELLE;}{\f300\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}JOAN;}{\f301\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}JUSTICE;}
|
|
{\f302\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}MANDELA;}{\f303\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}MATTEROFFACT;}{\f304\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}MICRODOT;}
|
|
{\f305\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}NATURALBORN;}{\f306\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}NEOLITH;}{\f307\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}OPENCLASSIC;}
|
|
{\f308\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}PRETEXT;}{\f309\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}PUPPYLIKE;}{\f310\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}RADAGUND;}
|
|
{\f311\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}REALVIRTUE;}{\f312\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}SHELMAN;}{\f313\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}TRENDY;}
|
|
{\f314\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}Bitstream Vera Sans Mono;}{\f315\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Bitstream Vera Sans;}{\f316\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Bitstream Vera Serif;}
|
|
{\f317\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Lucida Sans;}{\f318\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}AmrLipi;}{\f319\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Alba;}
|
|
{\f320\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Alba Matter;}{\f321\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Alba Super;}{\f322\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Baby Kruffy;}
|
|
{\f323\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Chick;}{\f324\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Croobie;}{\f325\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Fat;}
|
|
{\f326\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Freshbot;}{\f327\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Frosty;}{\f328\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}GlooGun;}
|
|
{\f329\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Jenkins v2.0;}{\f330\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Jokewood;}{\f331\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Porky's;}
|
|
{\f332\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Pussycat;}{\f333\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Weltron Urban;}{\f334\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Digital2;}
|
|
{\f335\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Helv Hoa;}{\f336\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long An;}{\f337\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long An Hoa;}
|
|
{\f338\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Nam Dinh;}{\f339\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Nam Dinh Hoa;}{\f340\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ninh Binh;}
|
|
{\f341\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ninh Binh Hoa;}{\f342\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Times;}{\f343\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Times Hoa;}
|
|
{\f344\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Quang Duc Hoa;}{\f345\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Kien An;}{\f346\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Kien An Hoa;}
|
|
{\f347\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Cho Lon Hoa;}{\f348\froman\fcharset2\fprq2{\*\panose 00000000000000000000}Vietnm01;}{\f349\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Poornut;}
|
|
{\f350\fmodern\fcharset0\fprq2{\*\panose 00000000000000000000}Ethiopia Jiret;}{\f351\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Khmer OS System;}{\f352\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Lao New Light;}
|
|
{\f353\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Lao Phonemic;}{\f354\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}IPA;}{\f355\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}MahaSila;}
|
|
{\f356\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}TaiHeritage;}{\f357\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}SongPetburi;}{\f358\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}WHITETAI;}
|
|
{\f359\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}NDEHONG;}{\f360\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Mouth Breather BB;}{\f361\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Fanboy Hardcore;}
|
|
{\f362\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Giang;}{\f363\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Giang Hoa;}{\f364\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Loc;}
|
|
{\f365\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Loc Hoa;}{\f366\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Loc Hoa Lignt;}{\f367\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Loc Hoa Medium;}
|
|
{\f368\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Loc Light;}{\f369\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Loc Medium;}{\f370\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Xuyen;}
|
|
{\f371\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS An Xuyen Hoa;}{\f372\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ba Ria;}{\f373\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ba Ria Hoa;}
|
|
{\f374\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Bac Giang Hoa;}{\f375\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Bac Kan;}{\f376\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Bac Kan Hoa;}
|
|
{\f377\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Bac Lieu Hoa;}{\f378\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Bac Ninh;}{\f379\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Bac Ninh Hoa;}
|
|
{\f380\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ben Tre;}{\f381\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ben Tre Hoa;}{\f382\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Bien Hoa;}
|
|
{\f383\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Bien Hoa Hoa;}{\f384\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Binh Duong;}{\f385\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Binh Duong Hoa;}
|
|
{\f386\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Binh Long;}{\f387\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Binh Long Hoa;}{\f388\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Binh Tuy;}
|
|
{\f389\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Binh Tuy Hoa;}{\f390\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ca Mau;}{\f391\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ca Mau Hoa;}
|
|
{\f392\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Can Tho;}{\f393\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Can Tho Hoa;}{\f394\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Cao Bang;}
|
|
{\f395\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Cao Bang Hoa;}{\f396\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Chau Doc;}{\f397\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Chau Doc Hoa;}
|
|
{\f398\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Con Son;}{\f399\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Con Son Hoa;}{\f400\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}VPS Courier Hoa;}
|
|
{\f401\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Cu Chi;}{\f402\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Cu Chi Hoa;}{\f403\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Da Nang Hoa;}
|
|
{\f404\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dac Lac;}{\f405\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dac Lac Hoa;}{\f406\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Da;}
|
|
{\f407\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Da Hoa;}{\f408\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Ha;}{\f409\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Ha Hoa;}
|
|
{\f410\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Hoi;}{\f411\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Hoi Hoa;}{\f412\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Nai;}
|
|
{\f413\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Nai Hoa;}{\f414\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Gia Dinh Hoa;}{\f415\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Go Cong;}
|
|
{\f416\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Go Cong Hoa;}{\f417\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ha Dong;}{\f418\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ha Dong Hoa;}
|
|
{\f419\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ha Long;}{\f420\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ha Long Hoa;}{\f421\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ha Noi Medium;}
|
|
{\f422\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ha Noi Medium Hoa;}{\f423\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ha Tien;}{\f424\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ha Tien Hoa;}
|
|
{\f425\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hai Ninh;}{\f426\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hai Ninh Hoa;}{\f427\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hai Phong Hoa;}
|
|
{\f428\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hoa Binh;}{\f429\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hoa Binh Hoa;}{\f430\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hoa Lu;}
|
|
{\f431\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hoa Lu Hoa;}{\f432\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hoang Sa;}{\f433\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hoang Sa Hoa;}
|
|
{\f434\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hue;}{\f435\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hue Hoa;}{\f436\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hung Yen;}
|
|
{\f437\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Hung Yen Hoa;}{\f438\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Khanh Hoa;}{\f439\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Khanh Hoa Hoa;}
|
|
{\f440\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Khe Sanh Hoa;}{\f441\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Kien Giang;}{\f442\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Kien Giang Hoa;}
|
|
{\f443\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Kontum;}{\f444\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Kontum Hoa;}{\f445\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Lai Chau Hoa;}
|
|
{\f446\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Lang Son;}{\f447\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Lang Son Hoa;}{\f448\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Lao Kay;}
|
|
{\f449\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long Binh;}{\f450\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long Binh Hoa;}{\f451\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long Hai;}
|
|
{\f452\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long Hai Hoa;}{\f453\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long Khanh;}{\f454\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long Khanh Hoa;}
|
|
{\f455\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long Xuyen;}{\f456\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Long Xuyen Hoa;}{\f457\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS My Tho;}
|
|
{\f458\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS My Tho Hoa;}{\f459\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Nghe An;}{\f460\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Nghe An Hoa;}
|
|
{\f461\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Ninh Thuan Hoa;}{\f462\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phong Dinh;}{\f463\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phong Dinh Hoa;}
|
|
{\f464\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phu Bon Hoa;}{\f465\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phu Quoc Hoa;}{\f466\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phu Yen;}
|
|
{\f467\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phu Yen Hoa;}{\f468\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phuoc Long Hoa;}{\f469\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phuoc Thanh;}
|
|
{\f470\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Pleiku;}{\f471\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Pleiku Hoa;}{\f472\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Quang Ngai Hoa;}
|
|
{\f473\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Quang Tri;}{\f474\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Quang Tri Hoa;}{\f475\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Quang Yen Hoa;}
|
|
{\f476\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Qui Nhon;}{\f477\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Qui Nhon Hoa;}{\f478\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Sa Dec;}
|
|
{\f479\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Sa Dec Hoa;}{\f480\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Sai Gon;}{\f481\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Sai Gon Hoa;}
|
|
{\f482\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Soc Trang Hoa;}{\f483\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Son La Hoa;}{\f484\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Son Tay;}
|
|
{\f485\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Son Tay Hoa;}{\f486\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Tay Ninh;}{\f487\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Tay Ninh Hoa;}
|
|
{\f488\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Thai Nguyen;}{\f489\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Thai Nguyen Hoa;}{\f490\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Thanh Hoa;}
|
|
{\f491\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Thanh Hoa Hoa;}{\f492\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Thu Duc;}{\f493\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Thu Duc Hoa;}
|
|
{\f494\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Tra Vinh Hoa;}{\f495\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Truong Sa Light;}{\f496\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Truong Sa Light Hoa;}
|
|
{\f497\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Tuyen Duc;}{\f498\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Tuyen Duc Hoa;}{\f499\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Tuyen Quang;}
|
|
{\f500\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Tuyen Quang Hoa;}{\f501\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Vinh;}{\f502\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Vinh Hoa;}
|
|
{\f503\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Vinh Long;}{\f504\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Vinh Long Hoa;}{\f505\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Vinh Yen;}
|
|
{\f506\fscript\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Vinh Yen Hoa;}{\f507\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Vung Tau;}{\f508\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Vung Tau Hoa;}
|
|
{\f509\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Yen Bai Hoa;}{\f510\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Dang Hoa;}{\f511\froman\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Dong Dang;}
|
|
{\f512\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Lao Kay Hoa;}{\f513\fdecor\fcharset0\fprq2{\*\panose 00000000000000000000}VPS Phuoc Thanh Hoa;}{\f514\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}YorubaOK;}
|
|
{\f515\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Charis SIL;}{\f516\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Aboriginal Sans;}{\f517\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Vulcanius;}
|
|
{\f518\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Myanmar1;}{\f519\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}JG ChamVN;}{\f520\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}SWGamekeys MT;}
|
|
{\f521\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}SWGamekeys2 MT;}{\f522\fmodern\fcharset0\fprq2{\*\panose 00000000000000000000}OCR A Extended;}{\f523\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}JG Cham Ver2;}
|
|
{\f524\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}DinaminaUniWeb;}{\f525\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Malithi Web;}{\f526\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Basketcase;}
|
|
{\f527\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Bleed;}{\f528\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Blood Of Dracula;}{\f529\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Bloodgutter 99;}
|
|
{\f530\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Bloodsuckers;}{\f531\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Bloody;}{\f532\fnil\fcharset2\fprq2{\*\panose 00000000000000000000}Double Feature;}
|
|
{\f533\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Dracula;}{\f534\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}DrippingGoo;}{\f535\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Ghouly Caps;}
|
|
{\f536\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}GoreFont;}{\f537\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Green Fuz;}{\f538\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Grossout Shadow;}
|
|
{\f539\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Halloween;}{\f540\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Horror;}{\f541\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Liquidism;}
|
|
{\f542\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Liquidism part 2;}{\f543\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}PostCrypt;}{\f544\froman\fcharset0\fprq2{\*\panose 00000000000000000000}PreCrypt;}
|
|
{\f545\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}ROCKY;}{\f546\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Sanguinary\'99;}{\f547\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Shlop;}
|
|
{\f548\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}SolsticeOfSuffering;}{\f549\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}TeleText;}{\f550\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}TeleTextDH;}
|
|
{\f551\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}TeleTextLineDraw;}{\f552\fmodern\fcharset0\fprq1{\*\panose 00000000000000000000}TeleTextLineDrawDH;}
|
|
{\f553\fswiss\fcharset163\fprq2{\*\panose 00000000000000000000}Microsoft Sans Serif (Vietnames;}{\f554\fswiss\fcharset0\fprq2{\*\panose 020b0806030502040204}Swis721 BlkCn BT;}{\f555\fnil\fcharset0\fprq2{\*\panose 02000603000000020004}RussellSquare;}
|
|
{\f556\fswiss\fcharset0\fprq2{\*\panose 020b0807020203060204}BankGothic Md BT;}{\f557\fswiss\fcharset0\fprq2{\*\panose 020b0502050508020304}VU Anh Minh;}{\f558\fswiss\fcharset0\fprq2{\*\panose 020b0603050302020204}goidel;}
|
|
{\f559\fswiss\fcharset0\fprq2{\*\panose 020b0603050302020204}gothic 1;}{\f560\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Meroitic;}{\f561\fswiss\fcharset0\fprq2{\*\panose 020b0603050302020204}Mandeville Saracen;}
|
|
{\f562\fswiss\fcharset0\fprq2{\*\panose 020b0603050302020204}hPhags-pa (rotated);}{\f563\fswiss\fcharset2\fprq2{\*\panose 020b0603050302020204}\'dc-chan;}{\f564\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}Afaka;}
|
|
{\f565\fswiss\fcharset0\fprq2{\*\panose 020b0603050302020204}Bugis-Makassar;}{\f566\fnil\fcharset0\fprq2{\*\panose 02000603020000020004}Abyssinica SIL;}{\f567\fnil\fcharset0\fprq2{\*\panose 01000600020000020003}Scheherazade;}
|
|
{\f568\fnil\fcharset128\fprq2{\*\panose 00000400000000000000}SIL Yi;}{\f569\fnil\fcharset128\fprq2{\*\panose 00000400000000000000}@SIL Yi;}{\f570\fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Myanmar2ex;}
|
|
{\f571\fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Myanmar2;}{\f572\fmodern\fcharset0\fprq1{\*\panose 00000309000000000000}LCDMono2;}{\f573\fmodern\fcharset0\fprq1{\*\panose 00000309000000000000}LCDMono;}
|
|
{\f574\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}Swis721 BlkCn BT CE;}{\f575\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}Swis721 BlkCn BT Greek;}
|
|
{\f576\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}Swis721 BlkCn BT Tur;}{\f577\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}BankGothic Md BT CE;}
|
|
{\f578\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}BankGothic Md BT Greek;}{\f579\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}BankGothic Md BT Tur;}{\f580\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VU Anh Minh CE;}
|
|
{\f581\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}VU Anh Minh Greek;}{\f582\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}VU Anh Minh Tur;}{\f583\fnil\fcharset178\fprq2{\*\panose 00000000000000000000}Scheherazade (Arabic);}
|
|
{\f584\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}SIL Yi Western;}{\f585\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}SIL Yi CE;}{\f586\fnil\fcharset0\fprq2{\*\panose 00000000000000000000}@SIL Yi Western;}
|
|
{\f587\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}@SIL Yi CE;}{\f588\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}Arial Unicode MS CE;}{\f589\fswiss\fcharset204\fprq2{\*\panose 00000000000000000000}Arial Unicode MS Cyr;}
|
|
{\f590\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}Arial Unicode MS Greek;}{\f591\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}Arial Unicode MS Tur;}
|
|
{\f592\fswiss\fcharset177\fprq2{\*\panose 00000000000000000000}Arial Unicode MS (Hebrew);}{\f593\fswiss\fcharset178\fprq2{\*\panose 00000000000000000000}Arial Unicode MS (Arabic);}
|
|
{\f594\fswiss\fcharset186\fprq2{\*\panose 00000000000000000000}Arial Unicode MS Baltic;}{\f595\fswiss\fcharset163\fprq2{\*\panose 00000000000000000000}Arial Unicode MS (Vietnamese);}
|
|
{\f596\fswiss\fcharset222\fprq2{\*\panose 00000000000000000000}Arial Unicode MS (Thai);}{\f597\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS Western;}
|
|
{\f598\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS CE;}{\f599\fswiss\fcharset204\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS Cyr;}
|
|
{\f600\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS Greek;}{\f601\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS Tur;}
|
|
{\f602\fswiss\fcharset177\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS (Hebrew);}{\f603\fswiss\fcharset178\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS (Arabic);}
|
|
{\f604\fswiss\fcharset186\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS Baltic;}{\f605\fswiss\fcharset163\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS (Vietnamese);}
|
|
{\f606\fswiss\fcharset222\fprq2{\*\panose 00000000000000000000}@Arial Unicode MS (Thai);}{\f607\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}.VnArial CE;}{\f608\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}.VnArial Tur;}
|
|
{\f609\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}.VnArial Narrow CE;}{\f610\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}.VnArialH CE;}{\f611\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}.VnTimeH CE;}
|
|
{\f612\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}.VnTimeH Tur;}{\f613\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Bouwsma Uncial Greek;}{\f614\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}Cartoon CE;}
|
|
{\f615\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Cartoon Greek;}{\f616\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}Cartoon Tur;}{\f617\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Alba Greek;}
|
|
{\f618\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Alba Matter Greek;}{\f619\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Alba Super Greek;}{\f620\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Baby Kruffy Greek;}
|
|
{\f621\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Chick Greek;}{\f622\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Croobie Greek;}{\f623\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Freshbot Greek;}
|
|
{\f624\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Frosty Greek;}{\f625\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}GlooGun Greek;}{\f626\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Jenkins v2.0 Greek;}
|
|
{\f627\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Pussycat Greek;}{\f628\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Weltron Urban Greek;}{\f629\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Kien An Hoa CE;}
|
|
{\f630\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Kien An Hoa Greek;}{\f631\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Kien An Hoa Tur;}{\f632\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Cho Lon Hoa CE;}
|
|
{\f633\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Cho Lon Hoa Greek;}{\f634\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Cho Lon Hoa Tur;}{\f635\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}Khmer OS System Tur;}
|
|
{\f636\fnil\fcharset163\fprq2{\*\panose 00000000000000000000}Khmer OS System (Vietnamese);}{\f637\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}MahaSila Tur;}{\f638\fnil\fcharset163\fprq2{\*\panose 00000000000000000000}MahaSila (Vietnamese);}
|
|
{\f639\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS An Xuyen CE;}{\f640\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS An Xuyen Greek;}{\f641\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS An Xuyen Tur;}
|
|
{\f642\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS An Xuyen Hoa CE;}{\f643\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS An Xuyen Hoa Greek;}
|
|
{\f644\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS An Xuyen Hoa Tur;}{\f645\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Bac Kan Tur;}{\f646\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Bac Kan Hoa Tur;}
|
|
{\f647\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Binh Tuy CE;}{\f648\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Binh Tuy Greek;}{\f649\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Binh Tuy Tur;}
|
|
{\f650\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Binh Tuy Hoa CE;}{\f651\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Binh Tuy Hoa Greek;}
|
|
{\f652\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Binh Tuy Hoa Tur;}{\f653\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Ca Mau CE;}{\f654\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Ca Mau Tur;}
|
|
{\f655\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Ca Mau Hoa CE;}{\f656\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Ca Mau Hoa Tur;}{\f657\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Chau Doc CE;}
|
|
{\f658\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Chau Doc Greek;}{\f659\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Chau Doc Tur;}{\f660\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Cu Chi CE;}
|
|
{\f661\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Cu Chi Greek;}{\f662\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Cu Chi Tur;}{\f663\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Cu Chi Hoa CE;}
|
|
{\f664\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Cu Chi Hoa Greek;}{\f665\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Cu Chi Hoa Tur;}{\f666\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Dac Lac Hoa CE;}
|
|
{\f667\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Dac Lac Hoa Greek;}{\f668\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Dac Lac Hoa Tur;}{\f669\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Dong Ha CE;}
|
|
{\f670\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Dong Ha Greek;}{\f671\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Dong Ha Tur;}{\f672\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Dong Ha Hoa CE;}
|
|
{\f673\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Dong Ha Hoa Greek;}{\f674\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Dong Ha Hoa Tur;}{\f675\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Dong Hoi CE;}
|
|
{\f676\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Dong Hoi Greek;}{\f677\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Dong Hoi Tur;}{\f678\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Dong Hoi Hoa CE;}
|
|
{\f679\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Dong Hoi Hoa Greek;}{\f680\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Dong Hoi Hoa Tur;}{\f681\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Dong Nai CE;}
|
|
{\f682\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Dong Nai Greek;}{\f683\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Dong Nai Tur;}{\f684\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Dong Nai Hoa CE;}
|
|
{\f685\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Dong Nai Hoa Greek;}{\f686\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Dong Nai Hoa Tur;}{\f687\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Go Cong CE;}
|
|
{\f688\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Go Cong Hoa CE;}{\f689\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Ha Noi Medium CE;}{\f690\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Ha Noi Medium Greek;}
|
|
{\f691\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Ha Noi Medium Tur;}{\f692\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Ha Noi Medium Hoa CE;}
|
|
{\f693\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Ha Noi Medium Hoa Greek;}{\f694\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Ha Noi Medium Hoa Tur;}
|
|
{\f695\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Hue CE;}{\f696\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Hue Greek;}{\f697\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Hue Tur;}
|
|
{\f698\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Hue Hoa CE;}{\f699\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Hue Hoa Greek;}{\f700\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Hue Hoa Tur;}
|
|
{\f701\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Kien Giang CE;}{\f702\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Kien Giang Greek;}{\f703\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Kien Giang Tur;}
|
|
{\f704\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Long Khanh CE;}{\f705\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Long Khanh Greek;}{\f706\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Long Khanh Tur;}
|
|
{\f707\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Long Xuyen CE;}{\f708\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Long Xuyen Hoa CE;}{\f709\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Ninh Thuan Hoa Tur;}
|
|
{\f710\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Phong Dinh CE;}{\f711\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Phong Dinh Greek;}{\f712\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Phong Dinh Tur;}
|
|
{\f713\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Phong Dinh Hoa CE;}{\f714\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Phong Dinh Hoa Greek;}
|
|
{\f715\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Phong Dinh Hoa Tur;}{\f716\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Phu Bon Hoa CE;}
|
|
{\f717\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Phu Bon Hoa Greek;}{\f718\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Phu Bon Hoa Tur;}
|
|
{\f719\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Phuoc Long Hoa CE;}{\f720\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Phuoc Long Hoa Tur;}{\f721\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Sa Dec CE;}
|
|
{\f722\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Sa Dec Greek;}{\f723\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Sa Dec Tur;}{\f724\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Sa Dec Hoa CE;}
|
|
{\f725\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Sa Dec Hoa Greek;}{\f726\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Sa Dec Hoa Tur;}{\f727\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Sai Gon CE;}
|
|
{\f728\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Tay Ninh CE;}{\f729\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Tay Ninh Greek;}{\f730\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Tay Ninh Tur;}
|
|
{\f731\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Tay Ninh Hoa CE;}{\f732\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Tay Ninh Hoa Greek;}
|
|
{\f733\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Tay Ninh Hoa Tur;}{\f734\froman\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Truong Sa Light CE;}
|
|
{\f735\froman\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Truong Sa Light Greek;}{\f736\froman\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Truong Sa Light Tur;}
|
|
{\f737\froman\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Truong Sa Light Hoa CE;}{\f738\froman\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Truong Sa Light Hoa Greek;}
|
|
{\f739\froman\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Truong Sa Light Hoa Tur;}{\f740\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Tuyen Duc Hoa CE;}
|
|
{\f741\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Tuyen Duc Hoa Greek;}{\f742\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Tuyen Duc Hoa Tur;}
|
|
{\f743\fscript\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Tuyen Quang Hoa CE;}{\f744\fscript\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Tuyen Quang Hoa Greek;}
|
|
{\f745\fscript\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Tuyen Quang Hoa Tur;}{\f746\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Vinh Long CE;}{\f747\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Vinh Long Greek;}
|
|
{\f748\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Vinh Long Tur;}{\f749\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Vinh Long Hoa CE;}{\f750\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Vinh Long Hoa Greek;}
|
|
{\f751\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Vinh Long Hoa Tur;}{\f752\froman\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Vung Tau CE;}{\f753\froman\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Vung Tau Greek;}
|
|
{\f754\froman\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Vung Tau Tur;}{\f755\froman\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Vung Tau Hoa CE;}{\f756\froman\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Vung Tau Hoa Greek;}
|
|
{\f757\froman\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Vung Tau Hoa Tur;}{\f758\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Yen Bai Hoa CE;}{\f759\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Yen Bai Hoa Greek;}
|
|
{\f760\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Yen Bai Hoa Tur;}{\f761\fdecor\fcharset238\fprq2{\*\panose 00000000000000000000}VPS Phuoc Thanh Hoa CE;}
|
|
{\f762\fdecor\fcharset161\fprq2{\*\panose 00000000000000000000}VPS Phuoc Thanh Hoa Greek;}{\f763\fdecor\fcharset162\fprq2{\*\panose 00000000000000000000}VPS Phuoc Thanh Hoa Tur;}{\f764\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}YorubaOK CE;}
|
|
{\f765\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}Charis SIL CE;}{\f766\fnil\fcharset204\fprq2{\*\panose 00000000000000000000}Charis SIL Cyr;}{\f767\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}Charis SIL Tur;}
|
|
{\f768\fnil\fcharset186\fprq2{\*\panose 00000000000000000000}Charis SIL Baltic;}{\f769\fnil\fcharset163\fprq2{\*\panose 00000000000000000000}Charis SIL (Vietnamese);}{\f770\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}Aboriginal Sans CE;}
|
|
{\f771\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Aboriginal Sans Greek;}{\f772\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}Aboriginal Sans Tur;}{\f773\fnil\fcharset186\fprq2{\*\panose 00000000000000000000}Aboriginal Sans Baltic;}
|
|
{\f774\fnil\fcharset163\fprq2{\*\panose 00000000000000000000}Aboriginal Sans (Vietnamese);}{\f775\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Basketcase Greek;}{\f776\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Bleed Greek;}
|
|
{\f777\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Halloween Greek;}{\f778\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}Horror CE;}{\f779\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}Horror Greek;}
|
|
{\f780\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}Horror Tur;}{\f781\fnil\fcharset238\fprq2{\*\panose 00000000000000000000}PostCrypt CE;}{\f782\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}PostCrypt Greek;}
|
|
{\f783\fnil\fcharset162\fprq2{\*\panose 00000000000000000000}PostCrypt Tur;}{\f784\fnil\fcharset161\fprq2{\*\panose 00000000000000000000}ROCKY Greek;}{\f785\fswiss\fcharset238\fprq2{\*\panose 00000000000000000000}Shlop CE;}
|
|
{\f786\fswiss\fcharset161\fprq2{\*\panose 00000000000000000000}Shlop Greek;}{\f787\fswiss\fcharset162\fprq2{\*\panose 00000000000000000000}Shlop Tur;}{\f788\fswiss\fcharset163\fprq2{\*\panose 00000000000000000000}DejaVu Sans Condensed (Vietname;}
|
|
{\f789\froman\fcharset238\fprq2 Times New Roman CE;}{\f790\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f792\froman\fcharset161\fprq2 Times New Roman Greek;}{\f793\froman\fcharset162\fprq2 Times New Roman Tur;}
|
|
{\f794\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f795\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f796\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f797\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
|
|
{\f799\fswiss\fcharset238\fprq2 Arial CE;}{\f800\fswiss\fcharset204\fprq2 Arial Cyr;}{\f802\fswiss\fcharset161\fprq2 Arial Greek;}{\f803\fswiss\fcharset162\fprq2 Arial Tur;}{\f804\fswiss\fcharset177\fprq2 Arial (Hebrew);}
|
|
{\f805\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f806\fswiss\fcharset186\fprq2 Arial Baltic;}{\f807\fswiss\fcharset163\fprq2 Arial (Vietnamese);}{\f809\fmodern\fcharset238\fprq1 Courier New CE;}{\f810\fmodern\fcharset204\fprq1 Courier New Cyr;}
|
|
{\f812\fmodern\fcharset161\fprq1 Courier New Greek;}{\f813\fmodern\fcharset162\fprq1 Courier New Tur;}{\f814\fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f815\fmodern\fcharset178\fprq1 Courier New (Arabic);}
|
|
{\f816\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f817\fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f829\fswiss\fcharset238\fprq2 Helvetica CE;}{\f830\fswiss\fcharset204\fprq2 Helvetica Cyr;}{\f832\fswiss\fcharset161\fprq2 Helvetica Greek;}
|
|
{\f833\fswiss\fcharset162\fprq2 Helvetica Tur;}{\f834\fswiss\fcharset177\fprq2 Helvetica (Hebrew);}{\f835\fswiss\fcharset178\fprq2 Helvetica (Arabic);}{\f836\fswiss\fcharset186\fprq2 Helvetica Baltic;}
|
|
{\f837\fswiss\fcharset163\fprq2 Helvetica (Vietnamese);}{\f901\fmodern\fcharset0\fprq1 MS Mincho Western{\*\falt ?l?r ??\'81\'66c};}{\f899\fmodern\fcharset238\fprq1 MS Mincho CE{\*\falt ?l?r ??\'81\'66c};}
|
|
{\f900\fmodern\fcharset204\fprq1 MS Mincho Cyr{\*\falt ?l?r ??\'81\'66c};}{\f902\fmodern\fcharset161\fprq1 MS Mincho Greek{\*\falt ?l?r ??\'81\'66c};}{\f903\fmodern\fcharset162\fprq1 MS Mincho Tur{\*\falt ?l?r ??\'81\'66c};}
|
|
{\f906\fmodern\fcharset186\fprq1 MS Mincho Baltic{\*\falt ?l?r ??\'81\'66c};}{\f911\froman\fcharset0\fprq2 Batang Western{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEc\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEc};}
|
|
{\f909\froman\fcharset238\fprq2 Batang CE{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEc\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEc};}
|
|
{\f910\froman\fcharset204\fprq2 Batang Cyr{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEc\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEc};}
|
|
{\f912\froman\fcharset161\fprq2 Batang Greek{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEc\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEc};}
|
|
{\f913\froman\fcharset162\fprq2 Batang Tur{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEc\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEc};}
|
|
{\f916\froman\fcharset186\fprq2 Batang Baltic{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEc\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEc};}{\f921\fnil\fcharset0\fprq2 SimSun Western{\*\falt ????????\'a8\'ac????};}
|
|
{\f931\froman\fcharset0\fprq2 PMingLiU Western{\*\falt !Ps2OcuAe};}{\f941\fmodern\fcharset0\fprq1 MS Gothic Western{\*\falt ?l?r ?S?V?b?N};}{\f939\fmodern\fcharset238\fprq1 MS Gothic CE{\*\falt ?l?r ?S?V?b?N};}
|
|
{\f940\fmodern\fcharset204\fprq1 MS Gothic Cyr{\*\falt ?l?r ?S?V?b?N};}{\f942\fmodern\fcharset161\fprq1 MS Gothic Greek{\*\falt ?l?r ?S?V?b?N};}{\f943\fmodern\fcharset162\fprq1 MS Gothic Tur{\*\falt ?l?r ?S?V?b?N};}
|
|
{\f946\fmodern\fcharset186\fprq1 MS Gothic Baltic{\*\falt ?l?r ?S?V?b?N};}{\f951\fswiss\fcharset0\fprq2 Dotum Western{\*\falt \'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEcE\'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcEcIi\'a1\'cb\'a2\'e7E\'a2\'ae};}
|
|
{\f949\fswiss\fcharset238\fprq2 Dotum CE{\*\falt \'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEcE\'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcEcIi\'a1\'cb\'a2\'e7E\'a2\'ae};}
|
|
{\f950\fswiss\fcharset204\fprq2 Dotum Cyr{\*\falt \'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEcE\'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcEcIi\'a1\'cb\'a2\'e7E\'a2\'ae};}
|
|
{\f952\fswiss\fcharset161\fprq2 Dotum Greek{\*\falt \'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEcE\'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcEcIi\'a1\'cb\'a2\'e7E\'a2\'ae};}
|
|
{\f953\fswiss\fcharset162\fprq2 Dotum Tur{\*\falt \'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEcE\'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcEcIi\'a1\'cb\'a2\'e7E\'a2\'ae};}
|
|
{\f956\fswiss\fcharset186\fprq2 Dotum Baltic{\*\falt \'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcEcE\'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcEcIi\'a1\'cb\'a2\'e7E\'a2\'ae};}
|
|
{\f961\fmodern\fcharset0\fprq1 SimHei Western{\*\falt o?????\'a1\'ec??2?????\'a1\'ec????};}{\f971\fmodern\fcharset0\fprq1 MingLiU Western{\*\falt 2OcuAe};}
|
|
{\f991\fswiss\fcharset0\fprq2 Gulim Western{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEcE\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcE};}
|
|
{\f989\fswiss\fcharset238\fprq2 Gulim CE{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEcE\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcE};}
|
|
{\f990\fswiss\fcharset204\fprq2 Gulim Cyr{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEcE\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcE};}
|
|
{\f992\fswiss\fcharset161\fprq2 Gulim Greek{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEcE\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcE};}
|
|
{\f993\fswiss\fcharset162\fprq2 Gulim Tur{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEcE\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcE};}
|
|
{\f996\fswiss\fcharset186\fprq2 Gulim Baltic{\*\falt \'a2\'aeE\'a1\'cbcE\'a1\'cb\'a2\'e7EcE\'a1\'cb\'a2\'e7E\'a2\'aeEcEcE\'a1\'cb\'a2\'e7E\'a2\'aeEcE\'a2\'aeE\'a1\'cbcE};}{\f999\froman\fcharset238\fprq2 Century CE;}
|
|
{\f1000\froman\fcharset204\fprq2 Century Cyr;}{\f1002\froman\fcharset161\fprq2 Century Greek;}{\f1003\froman\fcharset162\fprq2 Century Tur;}{\f1006\froman\fcharset186\fprq2 Century Baltic;}{\f1018\froman\fcharset222\fprq2 Angsana New (Thai);}
|
|
{\f1028\fswiss\fcharset222\fprq2 Cordia New (Thai);}{\f1049\froman\fcharset238\fprq2 Sylfaen CE;}{\f1050\froman\fcharset204\fprq2 Sylfaen Cyr;}{\f1052\froman\fcharset161\fprq2 Sylfaen Greek;}{\f1053\froman\fcharset162\fprq2 Sylfaen Tur;}
|
|
{\f1056\froman\fcharset186\fprq2 Sylfaen Baltic;}{\f1149\fswiss\fcharset238\fprq2 Tahoma CE;}{\f1150\fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f1152\fswiss\fcharset161\fprq2 Tahoma Greek;}{\f1153\fswiss\fcharset162\fprq2 Tahoma Tur;}
|
|
{\f1154\fswiss\fcharset177\fprq2 Tahoma (Hebrew);}{\f1155\fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f1156\fswiss\fcharset186\fprq2 Tahoma Baltic;}{\f1157\fswiss\fcharset163\fprq2 Tahoma (Vietnamese);}{\f1158\fswiss\fcharset222\fprq2 Tahoma (Thai);}
|
|
{\f1251\froman\fcharset0\fprq2 @Batang Western;}{\f1249\froman\fcharset238\fprq2 @Batang CE;}{\f1250\froman\fcharset204\fprq2 @Batang Cyr;}{\f1252\froman\fcharset161\fprq2 @Batang Greek;}{\f1253\froman\fcharset162\fprq2 @Batang Tur;}
|
|
{\f1256\froman\fcharset186\fprq2 @Batang Baltic;}{\f1261\fmodern\fcharset0\fprq1 BatangChe Western;}{\f1259\fmodern\fcharset238\fprq1 BatangChe CE;}{\f1260\fmodern\fcharset204\fprq1 BatangChe Cyr;}{\f1262\fmodern\fcharset161\fprq1 BatangChe Greek;}
|
|
{\f1263\fmodern\fcharset162\fprq1 BatangChe Tur;}{\f1266\fmodern\fcharset186\fprq1 BatangChe Baltic;}{\f1271\fmodern\fcharset0\fprq1 @BatangChe Western;}{\f1269\fmodern\fcharset238\fprq1 @BatangChe CE;}{\f1270\fmodern\fcharset204\fprq1 @BatangChe Cyr;}
|
|
{\f1272\fmodern\fcharset161\fprq1 @BatangChe Greek;}{\f1273\fmodern\fcharset162\fprq1 @BatangChe Tur;}{\f1276\fmodern\fcharset186\fprq1 @BatangChe Baltic;}{\f1281\froman\fcharset0\fprq2 Gungsuh Western;}{\f1279\froman\fcharset238\fprq2 Gungsuh CE;}
|
|
{\f1280\froman\fcharset204\fprq2 Gungsuh Cyr;}{\f1282\froman\fcharset161\fprq2 Gungsuh Greek;}{\f1283\froman\fcharset162\fprq2 Gungsuh Tur;}{\f1286\froman\fcharset186\fprq2 Gungsuh Baltic;}{\f1291\froman\fcharset0\fprq2 @Gungsuh Western;}
|
|
{\f1289\froman\fcharset238\fprq2 @Gungsuh CE;}{\f1290\froman\fcharset204\fprq2 @Gungsuh Cyr;}{\f1292\froman\fcharset161\fprq2 @Gungsuh Greek;}{\f1293\froman\fcharset162\fprq2 @Gungsuh Tur;}{\f1296\froman\fcharset186\fprq2 @Gungsuh Baltic;}
|
|
{\f1301\fmodern\fcharset0\fprq1 GungsuhChe Western;}{\f1299\fmodern\fcharset238\fprq1 GungsuhChe CE;}{\f1300\fmodern\fcharset204\fprq1 GungsuhChe Cyr;}{\f1302\fmodern\fcharset161\fprq1 GungsuhChe Greek;}{\f1303\fmodern\fcharset162\fprq1 GungsuhChe Tur;}
|
|
{\f1306\fmodern\fcharset186\fprq1 GungsuhChe Baltic;}{\f1311\fmodern\fcharset0\fprq1 @GungsuhChe Western;}{\f1309\fmodern\fcharset238\fprq1 @GungsuhChe CE;}{\f1310\fmodern\fcharset204\fprq1 @GungsuhChe Cyr;}
|
|
{\f1312\fmodern\fcharset161\fprq1 @GungsuhChe Greek;}{\f1313\fmodern\fcharset162\fprq1 @GungsuhChe Tur;}{\f1316\fmodern\fcharset186\fprq1 @GungsuhChe Baltic;}{\f1338\fswiss\fcharset222\fprq2 DokChampa (Thai);}
|
|
{\f1361\fswiss\fcharset0\fprq2 @Gulim Western;}{\f1359\fswiss\fcharset238\fprq2 @Gulim CE;}{\f1360\fswiss\fcharset204\fprq2 @Gulim Cyr;}{\f1362\fswiss\fcharset161\fprq2 @Gulim Greek;}{\f1363\fswiss\fcharset162\fprq2 @Gulim Tur;}
|
|
{\f1366\fswiss\fcharset186\fprq2 @Gulim Baltic;}{\f1371\fmodern\fcharset0\fprq1 GulimChe Western;}{\f1369\fmodern\fcharset238\fprq1 GulimChe CE;}{\f1370\fmodern\fcharset204\fprq1 GulimChe Cyr;}{\f1372\fmodern\fcharset161\fprq1 GulimChe Greek;}
|
|
{\f1373\fmodern\fcharset162\fprq1 GulimChe Tur;}{\f1376\fmodern\fcharset186\fprq1 GulimChe Baltic;}{\f1381\fmodern\fcharset0\fprq1 @GulimChe Western;}{\f1379\fmodern\fcharset238\fprq1 @GulimChe CE;}{\f1380\fmodern\fcharset204\fprq1 @GulimChe Cyr;}
|
|
{\f1382\fmodern\fcharset161\fprq1 @GulimChe Greek;}{\f1383\fmodern\fcharset162\fprq1 @GulimChe Tur;}{\f1386\fmodern\fcharset186\fprq1 @GulimChe Baltic;}{\f1391\fswiss\fcharset0\fprq2 @Dotum Western;}{\f1389\fswiss\fcharset238\fprq2 @Dotum CE;}
|
|
{\f1390\fswiss\fcharset204\fprq2 @Dotum Cyr;}{\f1392\fswiss\fcharset161\fprq2 @Dotum Greek;}{\f1393\fswiss\fcharset162\fprq2 @Dotum Tur;}{\f1396\fswiss\fcharset186\fprq2 @Dotum Baltic;}{\f1401\fmodern\fcharset0\fprq1 DotumChe Western;}
|
|
{\f1399\fmodern\fcharset238\fprq1 DotumChe CE;}{\f1400\fmodern\fcharset204\fprq1 DotumChe Cyr;}{\f1402\fmodern\fcharset161\fprq1 DotumChe Greek;}{\f1403\fmodern\fcharset162\fprq1 DotumChe Tur;}{\f1406\fmodern\fcharset186\fprq1 DotumChe Baltic;}
|
|
{\f1411\fmodern\fcharset0\fprq1 @DotumChe Western;}{\f1409\fmodern\fcharset238\fprq1 @DotumChe CE;}{\f1410\fmodern\fcharset204\fprq1 @DotumChe Cyr;}{\f1412\fmodern\fcharset161\fprq1 @DotumChe Greek;}{\f1413\fmodern\fcharset162\fprq1 @DotumChe Tur;}
|
|
{\f1416\fmodern\fcharset186\fprq1 @DotumChe Baltic;}{\f1419\fswiss\fcharset238\fprq2 Impact CE;}{\f1420\fswiss\fcharset204\fprq2 Impact Cyr;}{\f1422\fswiss\fcharset161\fprq2 Impact Greek;}{\f1423\fswiss\fcharset162\fprq2 Impact Tur;}
|
|
{\f1426\fswiss\fcharset186\fprq2 Impact Baltic;}{\f1459\fmodern\fcharset238\fprq1 Lucida Console CE;}{\f1460\fmodern\fcharset204\fprq1 Lucida Console Cyr;}{\f1462\fmodern\fcharset161\fprq1 Lucida Console Greek;}
|
|
{\f1463\fmodern\fcharset162\fprq1 Lucida Console Tur;}{\f1471\fswiss\fcharset0\fprq2 Malgun Gothic Western;}{\f1481\fswiss\fcharset0\fprq2 @Malgun Gothic Western;}{\f1491\fswiss\fcharset0\fprq2 Meiryo Western;}
|
|
{\f1492\fswiss\fcharset161\fprq2 Meiryo Greek;}{\f1501\fswiss\fcharset0\fprq2 @Meiryo Western;}{\f1502\fswiss\fcharset161\fprq2 @Meiryo Greek;}{\f1521\fswiss\fcharset0\fprq2 Microsoft JhengHei Western;}
|
|
{\f1522\fswiss\fcharset161\fprq2 Microsoft JhengHei Greek;}{\f1531\fswiss\fcharset0\fprq2 @Microsoft JhengHei Western;}{\f1532\fswiss\fcharset161\fprq2 @Microsoft JhengHei Greek;}{\f1541\fswiss\fcharset0\fprq2 Microsoft YaHei Western;}
|
|
{\f1539\fswiss\fcharset238\fprq2 Microsoft YaHei CE;}{\f1540\fswiss\fcharset204\fprq2 Microsoft YaHei Cyr;}{\f1542\fswiss\fcharset161\fprq2 Microsoft YaHei Greek;}{\f1543\fswiss\fcharset162\fprq2 Microsoft YaHei Tur;}
|
|
{\f1551\fswiss\fcharset0\fprq2 @Microsoft YaHei Western;}{\f1549\fswiss\fcharset238\fprq2 @Microsoft YaHei CE;}{\f1550\fswiss\fcharset204\fprq2 @Microsoft YaHei Cyr;}{\f1552\fswiss\fcharset161\fprq2 @Microsoft YaHei Greek;}
|
|
{\f1553\fswiss\fcharset162\fprq2 @Microsoft YaHei Tur;}{\f1561\fmodern\fcharset0\fprq1 @MingLiU Western;}{\f1571\froman\fcharset0\fprq2 @PMingLiU Western;}{\f1581\froman\fcharset0\fprq2 MingLiU_HKSCS Western;}
|
|
{\f1591\froman\fcharset0\fprq2 @MingLiU_HKSCS Western;}{\f1601\froman\fcharset0\fprq2 MingLiU-ExtB Western;}{\f1611\froman\fcharset0\fprq2 @MingLiU-ExtB Western;}{\f1621\froman\fcharset0\fprq2 PMingLiU-ExtB Western;}
|
|
{\f1631\froman\fcharset0\fprq2 @PMingLiU-ExtB Western;}{\f1641\froman\fcharset0\fprq2 MingLiU_HKSCS-ExtB Western;}{\f1651\froman\fcharset0\fprq2 @MingLiU_HKSCS-ExtB Western;}{\f1671\fmodern\fcharset0\fprq1 @MS Gothic Western;}
|
|
{\f1669\fmodern\fcharset238\fprq1 @MS Gothic CE;}{\f1670\fmodern\fcharset204\fprq1 @MS Gothic Cyr;}{\f1672\fmodern\fcharset161\fprq1 @MS Gothic Greek;}{\f1673\fmodern\fcharset162\fprq1 @MS Gothic Tur;}{\f1676\fmodern\fcharset186\fprq1 @MS Gothic Baltic;}
|
|
{\f1681\fswiss\fcharset0\fprq2 MS PGothic Western;}{\f1679\fswiss\fcharset238\fprq2 MS PGothic CE;}{\f1680\fswiss\fcharset204\fprq2 MS PGothic Cyr;}{\f1682\fswiss\fcharset161\fprq2 MS PGothic Greek;}{\f1683\fswiss\fcharset162\fprq2 MS PGothic Tur;}
|
|
{\f1686\fswiss\fcharset186\fprq2 MS PGothic Baltic;}{\f1691\fswiss\fcharset0\fprq2 @MS PGothic Western;}{\f1689\fswiss\fcharset238\fprq2 @MS PGothic CE;}{\f1690\fswiss\fcharset204\fprq2 @MS PGothic Cyr;}{\f1692\fswiss\fcharset161\fprq2 @MS PGothic Greek;}
|
|
{\f1693\fswiss\fcharset162\fprq2 @MS PGothic Tur;}{\f1696\fswiss\fcharset186\fprq2 @MS PGothic Baltic;}{\f1701\fswiss\fcharset0\fprq2 MS UI Gothic Western;}{\f1699\fswiss\fcharset238\fprq2 MS UI Gothic CE;}
|
|
{\f1700\fswiss\fcharset204\fprq2 MS UI Gothic Cyr;}{\f1702\fswiss\fcharset161\fprq2 MS UI Gothic Greek;}{\f1703\fswiss\fcharset162\fprq2 MS UI Gothic Tur;}{\f1706\fswiss\fcharset186\fprq2 MS UI Gothic Baltic;}
|
|
{\f1711\fswiss\fcharset0\fprq2 @MS UI Gothic Western;}{\f1709\fswiss\fcharset238\fprq2 @MS UI Gothic CE;}{\f1710\fswiss\fcharset204\fprq2 @MS UI Gothic Cyr;}{\f1712\fswiss\fcharset161\fprq2 @MS UI Gothic Greek;}
|
|
{\f1713\fswiss\fcharset162\fprq2 @MS UI Gothic Tur;}{\f1716\fswiss\fcharset186\fprq2 @MS UI Gothic Baltic;}{\f1721\fmodern\fcharset0\fprq1 @MS Mincho Western;}{\f1719\fmodern\fcharset238\fprq1 @MS Mincho CE;}
|
|
{\f1720\fmodern\fcharset204\fprq1 @MS Mincho Cyr;}{\f1722\fmodern\fcharset161\fprq1 @MS Mincho Greek;}{\f1723\fmodern\fcharset162\fprq1 @MS Mincho Tur;}{\f1726\fmodern\fcharset186\fprq1 @MS Mincho Baltic;}
|
|
{\f1731\froman\fcharset0\fprq2 MS PMincho Western;}{\f1729\froman\fcharset238\fprq2 MS PMincho CE;}{\f1730\froman\fcharset204\fprq2 MS PMincho Cyr;}{\f1732\froman\fcharset161\fprq2 MS PMincho Greek;}{\f1733\froman\fcharset162\fprq2 MS PMincho Tur;}
|
|
{\f1736\froman\fcharset186\fprq2 MS PMincho Baltic;}{\f1741\froman\fcharset0\fprq2 @MS PMincho Western;}{\f1739\froman\fcharset238\fprq2 @MS PMincho CE;}{\f1740\froman\fcharset204\fprq2 @MS PMincho Cyr;}{\f1742\froman\fcharset161\fprq2 @MS PMincho Greek;}
|
|
{\f1743\froman\fcharset162\fprq2 @MS PMincho Tur;}{\f1746\froman\fcharset186\fprq2 @MS PMincho Baltic;}{\f1759\fnil\fcharset238\fprq2 Nyala CE;}{\f1763\fnil\fcharset162\fprq2 Nyala Tur;}{\f1766\fnil\fcharset186\fprq2 Nyala Baltic;}
|
|
{\f1779\fswiss\fcharset238\fprq2 Segoe Script CE;}{\f1780\fswiss\fcharset204\fprq2 Segoe Script Cyr;}{\f1782\fswiss\fcharset161\fprq2 Segoe Script Greek;}{\f1783\fswiss\fcharset162\fprq2 Segoe Script Tur;}
|
|
{\f1786\fswiss\fcharset186\fprq2 Segoe Script Baltic;}{\f1789\fswiss\fcharset238\fprq2 Segoe UI CE;}{\f1790\fswiss\fcharset204\fprq2 Segoe UI Cyr;}{\f1792\fswiss\fcharset161\fprq2 Segoe UI Greek;}{\f1793\fswiss\fcharset162\fprq2 Segoe UI Tur;}
|
|
{\f1795\fswiss\fcharset178\fprq2 Segoe UI (Arabic);}{\f1796\fswiss\fcharset186\fprq2 Segoe UI Baltic;}{\f1797\fswiss\fcharset163\fprq2 Segoe UI (Vietnamese);}{\f1801\fnil\fcharset0\fprq2 @SimSun Western;}{\f1811\fmodern\fcharset0\fprq1 NSimSun Western;}
|
|
{\f1821\fmodern\fcharset0\fprq1 @NSimSun Western;}{\f1831\fmodern\fcharset0\fprq1 SimSun-ExtB Western;}{\f1841\fmodern\fcharset0\fprq1 @SimSun-ExtB Western;}{\f1859\fswiss\fcharset238\fprq2 Microsoft Sans Serif CE;}
|
|
{\f1860\fswiss\fcharset204\fprq2 Microsoft Sans Serif Cyr;}{\f1862\fswiss\fcharset161\fprq2 Microsoft Sans Serif Greek;}{\f1863\fswiss\fcharset162\fprq2 Microsoft Sans Serif Tur;}{\f1864\fswiss\fcharset177\fprq2 Microsoft Sans Serif (Hebrew);}
|
|
{\f1865\fswiss\fcharset178\fprq2 Microsoft Sans Serif (Arabic);}{\f1866\fswiss\fcharset186\fprq2 Microsoft Sans Serif Baltic;}{\f1867\fswiss\fcharset163\fprq2 Microsoft Sans Serif (Vietnamese);}
|
|
{\f1868\fswiss\fcharset222\fprq2 Microsoft Sans Serif (Thai);}{\f1874\fswiss\fcharset177\fprq2 Gisha (Hebrew);}{\f1888\fswiss\fcharset222\fprq2 Leelawadee (Thai);}{\f1895\fnil\fcharset178\fprq2 Microsoft Uighur (Arabic);}
|
|
{\f1915\fnil\fcharset178\fprq2 Andalus (Arabic);}{\f1919\fscript\fcharset238\fprq2 Arabic Typesetting CE;}{\f1923\fscript\fcharset162\fprq2 Arabic Typesetting Tur;}{\f1925\fscript\fcharset178\fprq2 Arabic Typesetting (Arabic);}
|
|
{\f1926\fscript\fcharset186\fprq2 Arabic Typesetting Baltic;}{\f1955\fnil\fcharset178\fprq2 Traditional Arabic (Arabic);}{\f2041\fmodern\fcharset0\fprq1 FangSong Western;}{\f2051\fmodern\fcharset0\fprq1 @FangSong Western;}
|
|
{\f2061\fmodern\fcharset0\fprq1 @SimHei Western;}{\f2071\fmodern\fcharset0\fprq1 KaiTi Western;}{\f2081\fmodern\fcharset0\fprq1 @KaiTi Western;}{\f2098\froman\fcharset222\fprq2 AngsanaUPC (Thai);}{\f2108\fswiss\fcharset222\fprq2 Browallia New (Thai);}
|
|
{\f2118\fswiss\fcharset222\fprq2 BrowalliaUPC (Thai);}{\f2128\fswiss\fcharset222\fprq2 CordiaUPC (Thai);}{\f2138\froman\fcharset222\fprq2 DilleniaUPC (Thai);}{\f2148\froman\fcharset222\fprq2 EucrosiaUPC (Thai);}
|
|
{\f2158\fswiss\fcharset222\fprq2 FreesiaUPC (Thai);}{\f2168\fswiss\fcharset222\fprq2 IrisUPC (Thai);}{\f2178\froman\fcharset222\fprq2 JasmineUPC (Thai);}{\f2188\froman\fcharset222\fprq2 KodchiangUPC (Thai);}
|
|
{\f2198\fswiss\fcharset222\fprq2 LilyUPC (Thai);}{\f2201\fscript\fcharset0\fprq1 DFKai-SB Western;}{\f2211\fscript\fcharset0\fprq1 @DFKai-SB Western;}{\f2219\fswiss\fcharset238\fprq2 Lucida Sans Unicode CE;}
|
|
{\f2220\fswiss\fcharset204\fprq2 Lucida Sans Unicode Cyr;}{\f2222\fswiss\fcharset161\fprq2 Lucida Sans Unicode Greek;}{\f2223\fswiss\fcharset162\fprq2 Lucida Sans Unicode Tur;}{\f2224\fswiss\fcharset177\fprq2 Lucida Sans Unicode (Hebrew);}
|
|
{\f2226\fswiss\fcharset186\fprq2 Lucida Sans Unicode Baltic;}{\f2229\fswiss\fcharset238\fprq2 Arial Black CE;}{\f2230\fswiss\fcharset204\fprq2 Arial Black Cyr;}{\f2232\fswiss\fcharset161\fprq2 Arial Black Greek;}
|
|
{\f2233\fswiss\fcharset162\fprq2 Arial Black Tur;}{\f2236\fswiss\fcharset186\fprq2 Arial Black Baltic;}{\f2239\fswiss\fcharset238\fprq2 Calibri CE;}{\f2240\fswiss\fcharset204\fprq2 Calibri Cyr;}{\f2242\fswiss\fcharset161\fprq2 Calibri Greek;}
|
|
{\f2243\fswiss\fcharset162\fprq2 Calibri Tur;}{\f2246\fswiss\fcharset186\fprq2 Calibri Baltic;}{\f2249\froman\fcharset238\fprq2 Cambria CE;}{\f2250\froman\fcharset204\fprq2 Cambria Cyr;}{\f2252\froman\fcharset161\fprq2 Cambria Greek;}
|
|
{\f2253\froman\fcharset162\fprq2 Cambria Tur;}{\f2256\froman\fcharset186\fprq2 Cambria Baltic;}{\f2259\froman\fcharset238\fprq2 Cambria Math CE;}{\f2260\froman\fcharset204\fprq2 Cambria Math Cyr;}{\f2262\froman\fcharset161\fprq2 Cambria Math Greek;}
|
|
{\f2263\froman\fcharset162\fprq2 Cambria Math Tur;}{\f2266\froman\fcharset186\fprq2 Cambria Math Baltic;}{\f2269\fswiss\fcharset238\fprq2 Candara CE;}{\f2270\fswiss\fcharset204\fprq2 Candara Cyr;}{\f2272\fswiss\fcharset161\fprq2 Candara Greek;}
|
|
{\f2273\fswiss\fcharset162\fprq2 Candara Tur;}{\f2276\fswiss\fcharset186\fprq2 Candara Baltic;}{\f2279\fscript\fcharset238\fprq2 Comic Sans MS CE;}{\f2280\fscript\fcharset204\fprq2 Comic Sans MS Cyr;}{\f2282\fscript\fcharset161\fprq2 Comic Sans MS Greek;}
|
|
{\f2283\fscript\fcharset162\fprq2 Comic Sans MS Tur;}{\f2286\fscript\fcharset186\fprq2 Comic Sans MS Baltic;}{\f2289\fmodern\fcharset238\fprq1 Consolas CE;}{\f2290\fmodern\fcharset204\fprq1 Consolas Cyr;}{\f2292\fmodern\fcharset161\fprq1 Consolas Greek;}
|
|
{\f2293\fmodern\fcharset162\fprq1 Consolas Tur;}{\f2296\fmodern\fcharset186\fprq1 Consolas Baltic;}{\f2299\froman\fcharset238\fprq2 Constantia CE;}{\f2300\froman\fcharset204\fprq2 Constantia Cyr;}{\f2302\froman\fcharset161\fprq2 Constantia Greek;}
|
|
{\f2303\froman\fcharset162\fprq2 Constantia Tur;}{\f2306\froman\fcharset186\fprq2 Constantia Baltic;}{\f2309\fswiss\fcharset238\fprq2 Corbel CE;}{\f2310\fswiss\fcharset204\fprq2 Corbel Cyr;}{\f2312\fswiss\fcharset161\fprq2 Corbel Greek;}
|
|
{\f2313\fswiss\fcharset162\fprq2 Corbel Tur;}{\f2316\fswiss\fcharset186\fprq2 Corbel Baltic;}{\f2319\fswiss\fcharset238\fprq2 Franklin Gothic Medium CE;}{\f2320\fswiss\fcharset204\fprq2 Franklin Gothic Medium Cyr;}
|
|
{\f2322\fswiss\fcharset161\fprq2 Franklin Gothic Medium Greek;}{\f2323\fswiss\fcharset162\fprq2 Franklin Gothic Medium Tur;}{\f2326\fswiss\fcharset186\fprq2 Franklin Gothic Medium Baltic;}{\f2329\froman\fcharset238\fprq2 Georgia CE;}
|
|
{\f2330\froman\fcharset204\fprq2 Georgia Cyr;}{\f2332\froman\fcharset161\fprq2 Georgia Greek;}{\f2333\froman\fcharset162\fprq2 Georgia Tur;}{\f2336\froman\fcharset186\fprq2 Georgia Baltic;}{\f2339\froman\fcharset238\fprq2 Palatino Linotype CE;}
|
|
{\f2340\froman\fcharset204\fprq2 Palatino Linotype Cyr;}{\f2342\froman\fcharset161\fprq2 Palatino Linotype Greek;}{\f2343\froman\fcharset162\fprq2 Palatino Linotype Tur;}{\f2346\froman\fcharset186\fprq2 Palatino Linotype Baltic;}
|
|
{\f2347\froman\fcharset163\fprq2 Palatino Linotype (Vietnamese);}{\f2349\fnil\fcharset238\fprq2 Segoe Print CE;}{\f2350\fnil\fcharset204\fprq2 Segoe Print Cyr;}{\f2352\fnil\fcharset161\fprq2 Segoe Print Greek;}
|
|
{\f2353\fnil\fcharset162\fprq2 Segoe Print Tur;}{\f2356\fnil\fcharset186\fprq2 Segoe Print Baltic;}{\f2359\fswiss\fcharset238\fprq2 Trebuchet MS CE;}{\f2360\fswiss\fcharset204\fprq2 Trebuchet MS Cyr;}{\f2362\fswiss\fcharset161\fprq2 Trebuchet MS Greek;}
|
|
{\f2363\fswiss\fcharset162\fprq2 Trebuchet MS Tur;}{\f2366\fswiss\fcharset186\fprq2 Trebuchet MS Baltic;}{\f2369\fswiss\fcharset238\fprq2 Verdana CE;}{\f2370\fswiss\fcharset204\fprq2 Verdana Cyr;}{\f2372\fswiss\fcharset161\fprq2 Verdana Greek;}
|
|
{\f2373\fswiss\fcharset162\fprq2 Verdana Tur;}{\f2376\fswiss\fcharset186\fprq2 Verdana Baltic;}{\f2377\fswiss\fcharset163\fprq2 Verdana (Vietnamese);}{\f2389\fswiss\fcharset238\fprq2 Arial Narrow CE;}{\f2390\fswiss\fcharset204\fprq2 Arial Narrow Cyr;}
|
|
{\f2392\fswiss\fcharset161\fprq2 Arial Narrow Greek;}{\f2393\fswiss\fcharset162\fprq2 Arial Narrow Tur;}{\f2396\fswiss\fcharset186\fprq2 Arial Narrow Baltic;}{\f2399\froman\fcharset238\fprq2 Book Antiqua CE;}
|
|
{\f2400\froman\fcharset204\fprq2 Book Antiqua Cyr;}{\f2402\froman\fcharset161\fprq2 Book Antiqua Greek;}{\f2403\froman\fcharset162\fprq2 Book Antiqua Tur;}{\f2406\froman\fcharset186\fprq2 Book Antiqua Baltic;}
|
|
{\f2409\froman\fcharset238\fprq2 Bookman Old Style CE;}{\f2410\froman\fcharset204\fprq2 Bookman Old Style Cyr;}{\f2412\froman\fcharset161\fprq2 Bookman Old Style Greek;}{\f2413\froman\fcharset162\fprq2 Bookman Old Style Tur;}
|
|
{\f2416\froman\fcharset186\fprq2 Bookman Old Style Baltic;}{\f2419\fswiss\fcharset238\fprq2 Century Gothic CE;}{\f2420\fswiss\fcharset204\fprq2 Century Gothic Cyr;}{\f2422\fswiss\fcharset161\fprq2 Century Gothic Greek;}
|
|
{\f2423\fswiss\fcharset162\fprq2 Century Gothic Tur;}{\f2426\fswiss\fcharset186\fprq2 Century Gothic Baltic;}{\f2429\froman\fcharset238\fprq2 Garamond CE;}{\f2430\froman\fcharset204\fprq2 Garamond Cyr;}{\f2432\froman\fcharset161\fprq2 Garamond Greek;}
|
|
{\f2433\froman\fcharset162\fprq2 Garamond Tur;}{\f2436\froman\fcharset186\fprq2 Garamond Baltic;}{\f2439\fswiss\fcharset238\fprq2 Haettenschweiler CE;}{\f2440\fswiss\fcharset204\fprq2 Haettenschweiler Cyr;}
|
|
{\f2442\fswiss\fcharset161\fprq2 Haettenschweiler Greek;}{\f2443\fswiss\fcharset162\fprq2 Haettenschweiler Tur;}{\f2446\fswiss\fcharset186\fprq2 Haettenschweiler Baltic;}{\f2459\fscript\fcharset238\fprq2 Monotype Corsiva CE;}
|
|
{\f2460\fscript\fcharset204\fprq2 Monotype Corsiva Cyr;}{\f2462\fscript\fcharset161\fprq2 Monotype Corsiva Greek;}{\f2463\fscript\fcharset162\fprq2 Monotype Corsiva Tur;}{\f2466\fscript\fcharset186\fprq2 Monotype Corsiva Baltic;}
|
|
{\f2659\fmodern\fcharset238\fprq1 VNI-Internet Mail CE;}{\f2663\fmodern\fcharset162\fprq1 VNI-Internet Mail Tur;}{\f2709\fswiss\fcharset238\fprq2 DejaVu Sans Condensed CE;}{\f2710\fswiss\fcharset204\fprq2 DejaVu Sans Condensed Cyr;}
|
|
{\f2712\fswiss\fcharset161\fprq2 DejaVu Sans Condensed Greek;}{\f2713\fswiss\fcharset162\fprq2 DejaVu Sans Condensed Tur;}{\f2714\fswiss\fcharset177\fprq2 DejaVu Sans Condensed (Hebrew);}{\f2715\fswiss\fcharset178\fprq2 DejaVu Sans Condensed (Arabic);}
|
|
{\f2716\fswiss\fcharset186\fprq2 DejaVu Sans Condensed Baltic;}{\f2717\fswiss\fcharset163\fprq2 DejaVu Sans Condensed (Vietnamese);}{\f2719\froman\fcharset238\fprq2 DejaVu Serif CE;}{\f2720\froman\fcharset204\fprq2 DejaVu Serif Cyr;}
|
|
{\f2722\froman\fcharset161\fprq2 DejaVu Serif Greek;}{\f2723\froman\fcharset162\fprq2 DejaVu Serif Tur;}{\f2726\froman\fcharset186\fprq2 DejaVu Serif Baltic;}{\f2729\froman\fcharset238\fprq2 DejaVu Serif Condensed CE;}
|
|
{\f2730\froman\fcharset204\fprq2 DejaVu Serif Condensed Cyr;}{\f2732\froman\fcharset161\fprq2 DejaVu Serif Condensed Greek;}{\f2733\froman\fcharset162\fprq2 DejaVu Serif Condensed Tur;}{\f2736\froman\fcharset186\fprq2 DejaVu Serif Condensed Baltic;}
|
|
{\f2739\fmodern\fcharset238\fprq1 DejaVu Sans Mono CE;}{\f2740\fmodern\fcharset204\fprq1 DejaVu Sans Mono Cyr;}{\f2742\fmodern\fcharset161\fprq1 DejaVu Sans Mono Greek;}{\f2743\fmodern\fcharset162\fprq1 DejaVu Sans Mono Tur;}
|
|
{\f2745\fmodern\fcharset178\fprq1 DejaVu Sans Mono (Arabic);}{\f2746\fmodern\fcharset186\fprq1 DejaVu Sans Mono Baltic;}{\f2749\fswiss\fcharset238\fprq2 DejaVu Sans CE;}{\f2750\fswiss\fcharset204\fprq2 DejaVu Sans Cyr;}
|
|
{\f2752\fswiss\fcharset161\fprq2 DejaVu Sans Greek;}{\f2753\fswiss\fcharset162\fprq2 DejaVu Sans Tur;}{\f2754\fswiss\fcharset177\fprq2 DejaVu Sans (Hebrew);}{\f2755\fswiss\fcharset178\fprq2 DejaVu Sans (Arabic);}
|
|
{\f2756\fswiss\fcharset186\fprq2 DejaVu Sans Baltic;}{\f2757\fswiss\fcharset163\fprq2 DejaVu Sans (Vietnamese);}{\f2759\fswiss\fcharset238\fprq2 DejaVu Sans Light CE;}{\f2760\fswiss\fcharset204\fprq2 DejaVu Sans Light Cyr;}
|
|
{\f2762\fswiss\fcharset161\fprq2 DejaVu Sans Light Greek;}{\f2763\fswiss\fcharset162\fprq2 DejaVu Sans Light Tur;}{\f2766\fswiss\fcharset186\fprq2 DejaVu Sans Light Baltic;}{\f2767\fswiss\fcharset163\fprq2 DejaVu Sans Light (Vietnamese);}
|
|
{\f2789\fswiss\fcharset238\fprq2 Verdana Ref CE;}{\f2790\fswiss\fcharset204\fprq2 Verdana Ref Cyr;}{\f2792\fswiss\fcharset161\fprq2 Verdana Ref Greek;}{\f2793\fswiss\fcharset162\fprq2 Verdana Ref Tur;}{\f2796\fswiss\fcharset186\fprq2 Verdana Ref Baltic;}
|
|
{\f2797\fswiss\fcharset163\fprq2 Verdana Ref (Vietnamese);}{\f2833\fswiss\fcharset162\fprq2 ArialEVT Tur;}{\f2862\fnil\fcharset161\fprq2 Jokerman LET Greek;}{\f2872\fnil\fcharset161\fprq2 John Handy LET Greek;}
|
|
{\f2882\fnil\fcharset161\fprq2 Orange LET Greek;}{\f2892\fnil\fcharset161\fprq2 Academy Engraved LET Greek;}{\f2902\fnil\fcharset161\fprq2 University Roman LET Greek;}{\f2912\fnil\fcharset161\fprq2 Victorian LET Greek;}
|
|
{\f2922\fnil\fcharset161\fprq2 Milano LET Greek;}{\f2932\fnil\fcharset161\fprq2 Smudger LET Greek;}{\f2942\fnil\fcharset161\fprq2 Westwood LET Greek;}{\f2952\fnil\fcharset161\fprq2 Ruach LET Greek;}{\f2962\fnil\fcharset161\fprq2 Rage Italic LET Greek;}
|
|
{\f2972\fnil\fcharset161\fprq2 La Bamba LET Greek;}{\f2982\fnil\fcharset161\fprq2 Quixley LET Greek;}{\f2992\fnil\fcharset161\fprq2 Pump Demi Bold LET Greek;}{\f3002\fnil\fcharset161\fprq2 Tiranti Solid LET Greek;}
|
|
{\f3012\fnil\fcharset161\fprq2 Mekanik LET Greek;}{\f3022\fnil\fcharset161\fprq2 One Stroke Script LET Greek;}{\f3032\fnil\fcharset161\fprq2 Highlight LET Greek;}{\f3042\fnil\fcharset161\fprq2 Odessa LET Greek;}
|
|
{\f3052\fnil\fcharset161\fprq2 Scruff LET Greek;}{\f3059\fdecor\fcharset238\fprq2 Broadway BT CE;}{\f3062\fdecor\fcharset161\fprq2 Broadway BT Greek;}{\f3063\fdecor\fcharset162\fprq2 Broadway BT Tur;}{\f3069\fswiss\fcharset238\fprq2 Square721 BT CE;}
|
|
{\f3072\fswiss\fcharset161\fprq2 Square721 BT Greek;}{\f3073\fswiss\fcharset162\fprq2 Square721 BT Tur;}{\f3079\fscript\fcharset238\fprq2 ParkAvenue BT CE;}{\f3082\fscript\fcharset161\fprq2 ParkAvenue BT Greek;}
|
|
{\f3083\fscript\fcharset162\fprq2 ParkAvenue BT Tur;}{\f3089\fscript\fcharset238\fprq2 Staccato222 BT CE;}{\f3092\fscript\fcharset161\fprq2 Staccato222 BT Greek;}{\f3093\fscript\fcharset162\fprq2 Staccato222 BT Tur;}
|
|
{\f3099\fscript\fcharset238\fprq2 Cataneo BT CE;}{\f3102\fscript\fcharset161\fprq2 Cataneo BT Greek;}{\f3103\fscript\fcharset162\fprq2 Cataneo BT Tur;}{\f3109\fscript\fcharset238\fprq2 Blackletter686 BT CE;}
|
|
{\f3112\fscript\fcharset161\fprq2 Blackletter686 BT Greek;}{\f3113\fscript\fcharset162\fprq2 Blackletter686 BT Tur;}{\f3119\fscript\fcharset238\fprq2 Calligraph421 BT CE;}{\f3122\fscript\fcharset161\fprq2 Calligraph421 BT Greek;}
|
|
{\f3123\fscript\fcharset162\fprq2 Calligraph421 BT Tur;}{\f3129\fscript\fcharset238\fprq2 MisterEarl BT CE;}{\f3132\fscript\fcharset161\fprq2 MisterEarl BT Greek;}{\f3133\fscript\fcharset162\fprq2 MisterEarl BT Tur;}
|
|
{\f3139\fdecor\fcharset238\fprq2 OldDreadfulNo7 BT CE;}{\f3142\fdecor\fcharset161\fprq2 OldDreadfulNo7 BT Greek;}{\f3143\fdecor\fcharset162\fprq2 OldDreadfulNo7 BT Tur;}{\f3219\fswiss\fcharset238\fprq2 Arabic Transparent CE;}
|
|
{\f3220\fswiss\fcharset204\fprq2 Arabic Transparent Cyr;}{\f3222\fswiss\fcharset161\fprq2 Arabic Transparent Greek;}{\f3223\fswiss\fcharset162\fprq2 Arabic Transparent Tur;}{\f3224\fswiss\fcharset177\fprq2 Arabic Transparent (Hebrew);}
|
|
{\f3225\fswiss\fcharset178\fprq2 Arabic Transparent (Arabic);}{\f3226\fswiss\fcharset186\fprq2 Arabic Transparent Baltic;}{\f3227\fswiss\fcharset163\fprq2 Arabic Transparent (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;
|
|
\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;
|
|
\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \snext0 Normal;}{
|
|
\s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \styrsid12010334 heading 1;}{
|
|
\s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \slink27 \styrsid1604366 heading 2;}{
|
|
\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \styrsid6360730 heading 3;}{\*\cs10 \additive
|
|
\ssemihidden Default Paragraph Font;}{\*
|
|
\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
|
|
\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs20\lang1024\langfe1024\cgrid\langnp1024\langfenp1024 \snext11 \ssemihidden Normal Table;}{\*\cs15 \additive \ul\cf2 \sbasedon10 \styrsid4926635 Hyperlink;}{
|
|
\s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid5865126 toc 1;}{
|
|
\s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid5865126 toc 2;}{
|
|
\s18\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid1983755 toc 3;}{
|
|
\s19\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid1983755 toc 4;}{
|
|
\s20\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid1983755 toc 5;}{
|
|
\s21\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid1983755 toc 6;}{
|
|
\s22\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid1983755 toc 7;}{
|
|
\s23\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid1983755 toc 8;}{
|
|
\s24\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden \styrsid1983755 toc 9;}{\s25\ql \li0\ri0\widctlpar
|
|
\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 \sbasedon0 \snext25 \styrsid2049854 footer;}{\*\cs26 \additive \sbasedon10 \styrsid2049854 page number;}{\*\cs27
|
|
\additive \b\i\f1\fs28\lang3081\langfe1033\langnp3081\langfenp1033 \sbasedon10 \slink2 \styrsid12133867 Heading 2 Char;}{\*\cs28 \additive \fs19\chshdng0\chcfpat0\chcbpat0 \sbasedon10 \styrsid11340906 st1;}}{\*\listtable{\list\listtemplateid-2095910606
|
|
\listhybrid{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698703\'02\'00.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel
|
|
\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698713\'02\'01.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2
|
|
\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698715\'02\'02.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-180\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0
|
|
\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698703\'02\'03.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
\levelspace360\levelindent0{\leveltext\leveltemplateid67698713\'02\'04.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0
|
|
{\leveltext\leveltemplateid67698715\'02\'05.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-180\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid67698703\'02\'06.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698713
|
|
\'02\'07.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698715\'02\'08.;}{\levelnumbers
|
|
\'01;}\hres0\chhres0 \fi-180\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid289944503}{\list\listtemplateid49730866\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698693
|
|
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698689
|
|
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698691
|
|
\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698693
|
|
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698689
|
|
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698691
|
|
\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67698693
|
|
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1230532028}{\list\listtemplateid1637151600\listhybrid{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
\levelspace360\levelindent0{\leveltext\leveltemplateid201916431\'02\'00.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360
|
|
\levelindent0{\leveltext\leveltemplateid201916441\'02\'01.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0
|
|
{\leveltext\leveltemplateid201916443\'02\'02.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-180\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid201916431\'02\'03.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid201916441\'02\'04.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid201916443\'02\'05.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-180\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid201916431\'02\'06.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid201916441\'02\'07.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
|
|
\leveltemplateid201916443\'02\'08.;}{\levelnumbers\'01;}\hres0\chhres0 \fi-180\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1653440408}}{\*\listoverridetable{\listoverride\listid1230532028\listoverridecount0\ls1}{\listoverride\listid289944503
|
|
\listoverridecount0\ls2}{\listoverride\listid1653440408\listoverridecount0\ls3}}{\*\revtbl {Unknown;}}{\*\rsidtbl \rsid29091\rsid65929\rsid82040\rsid94003\rsid96524\rsid148429\rsid152544\rsid155358\rsid203509\rsid222623\rsid268768\rsid281599\rsid285219\rsid288235\rsid336356
|
|
\rsid351740\rsid353053\rsid403405\rsid422073\rsid467261\rsid477651\rsid490673\rsid534534\rsid535811\rsid538645\rsid545430\rsid546095\rsid592153\rsid597128\rsid622247\rsid721398\rsid727225\rsid738360\rsid744561\rsid814760\rsid854924\rsid856588\rsid860613
|
|
\rsid874058\rsid876133\rsid877281\rsid934633\rsid935787\rsid942937\rsid948543\rsid1009632\rsid1066551\rsid1120687\rsid1136376\rsid1259544\rsid1261146\rsid1331161\rsid1447344\rsid1458350\rsid1527529\rsid1530045\rsid1534021\rsid1584750\rsid1595637
|
|
\rsid1604366\rsid1655232\rsid1730733\rsid1784813\rsid1848921\rsid1853914\rsid1916076\rsid1983755\rsid2046867\rsid2049854\rsid2061501\rsid2106830\rsid2173800\rsid2192189\rsid2302009\rsid2360435\rsid2426436\rsid2428558\rsid2503973\rsid2510693\rsid2520064
|
|
\rsid2559918\rsid2644779\rsid2696905\rsid2704263\rsid2714939\rsid2763386\rsid2773025\rsid2778173\rsid2828343\rsid2830245\rsid2836244\rsid2846394\rsid2849943\rsid2888614\rsid3027867\rsid3038337\rsid3102386\rsid3112173\rsid3151937\rsid3165024\rsid3220567
|
|
\rsid3294694\rsid3308455\rsid3363284\rsid3367089\rsid3370413\rsid3415323\rsid3431359\rsid3437399\rsid3494457\rsid3540885\rsid3553509\rsid3558370\rsid3561877\rsid3628814\rsid3630813\rsid3636861\rsid3880321\rsid3880873\rsid3888645\rsid3892958\rsid3944772
|
|
\rsid3950243\rsid4001801\rsid4008452\rsid4008458\rsid4009840\rsid4012407\rsid4024245\rsid4024379\rsid4081528\rsid4152096\rsid4155411\rsid4155809\rsid4156345\rsid4205215\rsid4325625\rsid4350233\rsid4352271\rsid4354912\rsid4356586\rsid4415928\rsid4523222
|
|
\rsid4535543\rsid4603617\rsid4619909\rsid4655191\rsid4676548\rsid4792824\rsid4797246\rsid4856871\rsid4869462\rsid4922511\rsid4926635\rsid4983546\rsid4985634\rsid5011882\rsid5073134\rsid5122824\rsid5137387\rsid5180709\rsid5181768\rsid5312957\rsid5316775
|
|
\rsid5334121\rsid5375889\rsid5448924\rsid5456406\rsid5463831\rsid5526621\rsid5528763\rsid5640278\rsid5653980\rsid5664910\rsid5667402\rsid5769272\rsid5786284\rsid5860762\rsid5865126\rsid5908870\rsid5965402\rsid5969929\rsid5971363\rsid6035348\rsid6046040
|
|
\rsid6099543\rsid6113937\rsid6233452\rsid6234254\rsid6247202\rsid6252887\rsid6255399\rsid6295016\rsid6308141\rsid6316658\rsid6360730\rsid6363932\rsid6364245\rsid6425973\rsid6434367\rsid6443485\rsid6445895\rsid6514582\rsid6520537\rsid6554115\rsid6572936
|
|
\rsid6574099\rsid6767498\rsid6825663\rsid6882724\rsid6898166\rsid6901694\rsid6977743\rsid7026797\rsid7105692\rsid7159408\rsid7163606\rsid7172758\rsid7226931\rsid7281959\rsid7306894\rsid7353286\rsid7363366\rsid7365065\rsid7416266\rsid7433640\rsid7479214
|
|
\rsid7498408\rsid7543692\rsid7552277\rsid7559003\rsid7628239\rsid7628774\rsid7634216\rsid7747608\rsid7800154\rsid7801339\rsid7826626\rsid7872106\rsid7879575\rsid7885733\rsid8016440\rsid8087115\rsid8087607\rsid8093643\rsid8135899\rsid8144473\rsid8204422
|
|
\rsid8261370\rsid8281341\rsid8331238\rsid8410455\rsid8411714\rsid8413703\rsid8456040\rsid8464437\rsid8519705\rsid8546000\rsid8602720\rsid8615196\rsid8653446\rsid8734553\rsid8801260\rsid8808373\rsid8810871\rsid8860331\rsid8864237\rsid8869108\rsid8869651
|
|
\rsid8913539\rsid8924119\rsid8925860\rsid8928437\rsid8940270\rsid8994108\rsid8995982\rsid9008473\rsid9046899\rsid9048038\rsid9053514\rsid9054819\rsid9114211\rsid9123779\rsid9134557\rsid9175199\rsid9189977\rsid9204827\rsid9205223\rsid9248426\rsid9306648
|
|
\rsid9312423\rsid9321631\rsid9329300\rsid9336935\rsid9440993\rsid9458590\rsid9520219\rsid9530927\rsid9573049\rsid9576412\rsid9577944\rsid9582688\rsid9594416\rsid9641119\rsid9652555\rsid9766451\rsid9780345\rsid9780913\rsid9834901\rsid9836931\rsid9845013
|
|
\rsid9918381\rsid9927540\rsid9971688\rsid9979784\rsid10037298\rsid10111954\rsid10179789\rsid10190762\rsid10303981\rsid10308617\rsid10356195\rsid10359310\rsid10359353\rsid10383376\rsid10427906\rsid10486978\rsid10553984\rsid10558540\rsid10564066
|
|
\rsid10565010\rsid10566292\rsid10572247\rsid10617254\rsid10635391\rsid10647622\rsid10696222\rsid10698633\rsid10698787\rsid10758058\rsid10767741\rsid10816170\rsid10834487\rsid10843544\rsid10945022\rsid10950032\rsid10957471\rsid10963779\rsid11034995
|
|
\rsid11075626\rsid11076293\rsid11146190\rsid11149598\rsid11155331\rsid11210738\rsid11217177\rsid11224077\rsid11274579\rsid11274612\rsid11340906\rsid11413716\rsid11427262\rsid11478483\rsid11485012\rsid11493825\rsid11497689\rsid11607387\rsid11666037
|
|
\rsid11673226\rsid11683326\rsid11684647\rsid11739209\rsid11747059\rsid11806663\rsid11822458\rsid11873135\rsid11883494\rsid12002879\rsid12010334\rsid12065226\rsid12133235\rsid12133867\rsid12134953\rsid12148407\rsid12156476\rsid12190166\rsid12204237
|
|
\rsid12206336\rsid12207742\rsid12216738\rsid12265351\rsid12270691\rsid12397645\rsid12405394\rsid12455009\rsid12482909\rsid12483605\rsid12532295\rsid12545886\rsid12588165\rsid12594830\rsid12595373\rsid12650684\rsid12666776\rsid12668523\rsid12716895
|
|
\rsid12730882\rsid12745068\rsid12799356\rsid12803364\rsid12932360\rsid12938053\rsid12940214\rsid12996761\rsid13043907\rsid13121272\rsid13133920\rsid13137566\rsid13139205\rsid13173557\rsid13196591\rsid13239901\rsid13254174\rsid13258629\rsid13267684
|
|
\rsid13307535\rsid13373289\rsid13382478\rsid13395556\rsid13400356\rsid13504646\rsid13507760\rsid13521539\rsid13568773\rsid13571256\rsid13580318\rsid13584488\rsid13589072\rsid13590556\rsid13597350\rsid13706231\rsid13708946\rsid13709112\rsid13785436
|
|
\rsid13789401\rsid13834693\rsid13838275\rsid13851157\rsid13909937\rsid13921813\rsid13967550\rsid13989829\rsid14027689\rsid14042496\rsid14042664\rsid14091597\rsid14120939\rsid14162355\rsid14165351\rsid14173907\rsid14176006\rsid14182810\rsid14249833
|
|
\rsid14253548\rsid14292408\rsid14295034\rsid14296656\rsid14371540\rsid14376927\rsid14432614\rsid14499167\rsid14502825\rsid14506655\rsid14555290\rsid14632155\rsid14636774\rsid14822985\rsid14880089\rsid14898071\rsid14901482\rsid14955642\rsid14955885
|
|
\rsid14963874\rsid15022740\rsid15077622\rsid15083971\rsid15145772\rsid15171330\rsid15233222\rsid15235155\rsid15302560\rsid15366571\rsid15367405\rsid15472096\rsid15478467\rsid15492009\rsid15553161\rsid15555354\rsid15561222\rsid15563611\rsid15600611
|
|
\rsid15601759\rsid15628828\rsid15629807\rsid15742361\rsid15746049\rsid15798465\rsid15799068\rsid15930272\rsid15930740\rsid15951857\rsid15953647\rsid16014799\rsid16019734\rsid16123643\rsid16127199\rsid16144528\rsid16188731\rsid16189989\rsid16264857
|
|
\rsid16274356\rsid16319789\rsid16320946\rsid16391730\rsid16392086\rsid16408641\rsid16415098\rsid16454628\rsid16459398\rsid16470200\rsid16536908\rsid16663892\rsid16671412\rsid16722553\rsid16730358}{\*\generator Microsoft Word 10.0.6856;}{\info
|
|
{\title GlovePIE GUI}{\author Kenner}{\operator Carl}{\creatim\yr2010\mo1\dy21\hr22\min11}{\revtim\yr2010\mo1\dy21\hr22\min39}{\version7}{\edmins28}{\nofpages149}{\nofwords41158}{\nofchars234605}{\nofcharsws275213}{\vern16393}{\*\password 00000000}}
|
|
{\*\xmlnstbl {\xmlns1 urn:schemas-microsoft-com:office:smarttags}}\paperw11907\paperh16834\margl1134\margr1134\margt1134\margb1701\gutter0
|
|
\widowctrl\ftnbj\aenddoc\grfdocevents0\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\formshade\horzdoc\dgmargin\dghspace120\dgvspace163\dghorigin1134\dgvorigin1134\dghshow0\dgvshow2
|
|
\jexpand\viewkind4\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\viewnobound1\snaptogridincell\allowfieldendsel
|
|
\ApplyBrkRules\wrppunct\asianbrkrule\rsidroot5965402 \fet0{\*\wgrffmtfilter 013f}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\footerr \pard\plain \s25\ql \li0\ri0\widctlpar
|
|
\tqc\tx4320\tqr\tx8640\pvpara\phmrg\posxr\posy0\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2049854 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field{\*\fldinst {\cs26\insrsid12799356 PAGE }}{\fldrslt {
|
|
\cs26\lang1024\langfe1024\noproof\insrsid5456406 87}}}\sectd \linex0\endnhere\sectdefaultcl\sftnbj {\cs26\insrsid12799356
|
|
\par }\pard \s25\ql \li0\ri360\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin360\lin0\itap0\pararsid2049854 {\insrsid12799356
|
|
\par }}{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}
|
|
{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8
|
|
\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \qc \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476
|
|
\fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\f1\fs32\lang1024\langfe1024\noproof\insrsid2049854\charrsid2696905 GlovePIE }{\f1\fs32\lang1024\langfe1024\noproof\insrsid14173907 0.4}{\f1\fs32\lang1024\langfe1024\noproof\insrsid9766451 3}{
|
|
\f1\fs32\lang1024\langfe1024\noproof\insrsid2049854\charrsid2696905 Documentation}{\f1\fs32\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905
|
|
\par }\pard \qc \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2049854 {\f1\fs32\lang1024\langfe1024\noproof\insrsid2049854\charrsid2696905
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905 TOC \\o "1-2" \\h \\z \\u }}{\fldrslt {\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK
|
|
\\l "_Toc251216618"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield
|
|
08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360031003800000000}}}{\fldrslt {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Copyright}{
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216618 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield
|
|
08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360031003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 6}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216619"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360031003900000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Vista (and Windows 7)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216619 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360031003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 7}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216620"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003000000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Languages}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216620 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 8}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216621"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003100000001}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 GlovePIE Scripts}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216621 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 9}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216622"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Commands and other Statements}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216622 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003200000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 9}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj
|
|
{\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216623"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Functions}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216623 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 13}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216624"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Operators}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216624 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 16}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216625"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003500000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 GlovePIE GUI}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216625 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 21}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216626"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Getting Started with the GUI}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216626 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003600000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 21}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216627"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Overview}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216627 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003700000078}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 21}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216628"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Output Device}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216628 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 22}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216629"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Channel Box}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216629 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360032003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 23}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216630"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Category Box}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216630 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003000000001}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 23}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216631"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f00630032003500310032003100360036003300310000006c}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 The Item List}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216631 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 25}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216632"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 The Right Side}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216632 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 25}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216633"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 The Format Box}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216633 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 25}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216634"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Limit Output To Range}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216634
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 25}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216635"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Input Source}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216635 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 26}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216636"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 More\'85 Button}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216636 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 27}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216637"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f0063003200350031003200310036003600330037000000ff}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Apply Button}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216637 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003700000009}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 28}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216638"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Delete Button}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216638 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 29}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216639"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 How to use the GUI with other features}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216639 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360033003900000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 29}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216640"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003000000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 GlovePIE OSC (Open Sound Control)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216640 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 30}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216641"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Using the SendOsc and BroadcastOsc functions}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216641 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003100000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 30}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216642"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Using the OSC objects}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216642
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 31}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216643"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Receiving OSC Messages}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216643 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003300000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 32}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216644"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003400000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 3D Visualisation}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216644 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003400000001}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 33}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216645"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Camera Position}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216645 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 33}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216646"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Background colour}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216646 \\h
|
|
}{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 34}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216647"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003700000076}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Stereoscopic 3D}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216647 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 34}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216648"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Camera Lens}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216648 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 34}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216649"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003900000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216649 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360034003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 35}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216650"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.DirectInputX and Mouse.DirectInputY}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216650 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 35}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216651"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f00630032003500310032003100360036003500310000000a}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NEW! FakeMouse.DirectInputX and RealMouse.DirectInputX}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216651 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield
|
|
08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 36}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216652"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.DirectInput2D}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216652 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 37}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216653"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 The Scroll Wheel}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216653 \\h }
|
|
{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 37}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216654"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.CursorPosX and Mouse.CursorPosY}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216654 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003400000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 39}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216655"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.CursorPos}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216655 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 40}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216656"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.X and Mouse.Y}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216656 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 40}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216657"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.ScreenFraction}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216657
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 41}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216658"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.VirtualDesktopX and Mouse.VirtualDesktopY}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216658 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield
|
|
08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 41}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216659"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.DesktopFraction}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216659
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360035003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 41}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216660"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse Buttons}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216660 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 41}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216661"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003100000008}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.DoubleClickTime}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216661
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003100000001}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 42}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216662"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.IsDragging}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216662 \\h }
|
|
{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 42}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216663"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.Count}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216663 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 42}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216664"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.CursorVisible}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216664 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 43}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216665"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.Cursor}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216665 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 43}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216666"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.PermanentCursor}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216666
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 43}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216667"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Swallowing the Mouse}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216667
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 44}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216668"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Mouse.Present}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216668 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 44}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216669"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003900000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Fake Cursors}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216669 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360036003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 46}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216670"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor2.visible}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216670 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 46}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216671"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor2.Roll}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216671 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 46}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216672"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor2.Colour}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216672 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 47}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216673"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor2.WhiteColour}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216673 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 47}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216674"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor2.Caption}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216674 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003400000004}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 47}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216675"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003500000002}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor2.PermanentCursor = -2}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216675 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003500000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 47}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216676"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor2.Image}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216676 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 47}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216677"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor2.Shift and Cursor2.Ctrl}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216677 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003700000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 47}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216678"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003800000001}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Touchpad}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216678 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 49}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216679"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003900000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Keyboard}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216679 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360037003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 50}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216680"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Special Keyboard Fields}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216680 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 51}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216681"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Multiple Keyboards}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216681 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003100000001}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 51}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216682"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Keys that can\rquote t be used}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216682 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003200000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 52}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216683"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Keys that sort of work}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216683 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003300000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 52}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216684"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Unicode Characters}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216684 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 52}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216685"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Number Keys}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216685 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 53}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216686"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Top Row}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216686 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 53}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216687"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Number Row}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216687 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 53}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216688"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003800000078}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Qwerty Row}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216688 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 53}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216689"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Next Row}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216689 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360038003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 53}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216690"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Next Row}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216690 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 53}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216691"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003100000002}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Space Bar Row}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216691 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f00630032003500310032003100360036003900310000006c}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 54}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216692"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Cursor Pad}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216692 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 54}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216693"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Numeric Key Pad}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216693 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 54}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216694"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Stupid Bloody F-Lock Function Keys}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216694 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003400000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 54}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216695"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Multimedia Keys}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216695 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 54}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216696"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Acer laptop Euro and Dollar keys}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216696 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003600000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 55}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216697"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Other Keys}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216697 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f0063003200350031003200310036003600390037000000ff}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 55}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216698"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003800000009}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Left, Right or Don\rquote t Care}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216698 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003800000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 55}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216699"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003900000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 PPJoy}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216699 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600360039003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 56}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216700"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003000000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Joystick}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216700 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 57}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216701"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Force Feedback}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216701 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 57}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216702"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Buttons}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216702 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 57}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216703"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Axes}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216703 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 57}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216704"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 POV Hats}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216704 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 58}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216705"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003500000001}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Joystick Information}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216705
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 58}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216706"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Multiple Joysticks}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216706 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 59}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216707"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003700000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Motion Controls for Wiimote, Nunchuk and Sixaxis}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216707 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield
|
|
08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003700000076}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 61}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216708"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Gestures}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216708 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 61}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216709"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Motion Sensing Theory}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216709
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370030003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 65}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216710"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Rotations}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216710 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 67}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216711"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003100000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 The \'93Any\'94 object, for any kind of gamepad}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216711 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f00630032003500310032003100360037003100310000000a}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 69}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216712"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 The Joysticks and DPads}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216712 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003200000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 69}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216713"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 The Trigger Buttons}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216713 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 70}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216714"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Select and Start buttons}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216714 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003400000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 71}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216715"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 The main buttons}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216715 \\h }
|
|
{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 71}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216716"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Vibration}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216716 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 72}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216717"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Any Motion}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216717 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 73}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216718"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003800000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Wiimote (Nintendo Wii Remote)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216718 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003800000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 74}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216719"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Bluetooth}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216719 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370031003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 74}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216720"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Using the Wiimote in GlovePIE}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216720 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 75}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216721"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Buttons}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216721 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003100000008}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 75}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216722"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003200000002}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Sensor Bar}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216722 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 76}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216723"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 LEDs}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216723 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 76}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216724"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Force Feedback}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216724 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 76}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216725"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Speaker}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216725 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 77}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216726"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Nunchuck, Classic Controller, Guitar, Balance Board, etc.}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216726 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield
|
|
08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 77}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216727"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Motion Plus}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216727 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 79}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216728"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Nunchuk}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216728 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 80}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216729"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Classic Controller}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216729 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370032003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 82}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216730"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Guitar Hero Controllers (for Wii)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216730 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 83}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216731"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NEW! Wii Fit Balance Board}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216731 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003100000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 84}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216732"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NEW! Drum Kit (for Wii)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216732 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003200000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 86}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216733"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NEW! DJ Hero Turntable (for Wii)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216733 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003300000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 87}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216734"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Low level stuff}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216734 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 87}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216735"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003500000004}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Multiple Wiimotes}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216735 \\h
|
|
}{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 88}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216736"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003600000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 P5 Glove}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216736 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 90}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216737"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Buttons}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216737 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 90}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216738"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Fingers}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216738 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 90}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216739"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Location}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216739 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370033003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 92}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216740"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Rotation}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216740 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 95}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216741"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003100000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 MIDI}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216741 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 101}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216742"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 MIDI Ports}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216742 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 101}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216743"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 MIDI Channels}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216743 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 102}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216744"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Playing notes}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216744 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 103}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216745"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Playing Percussion}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216745 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 104}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216746"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Reading Notes}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216746 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 105}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216747"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Setting the instrument}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216747 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003700000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 105}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216748"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Pitch Wheel}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216748 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 105}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216749"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Controls and Change Control messages}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216749 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370034003900000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 106}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216750"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 RPN (Registered Parameter Numbers)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216750 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 106}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216751"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NRPN (Non Registered Parameter Numbers)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216751 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003100000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 107}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216752"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 SysEx (System Exclusive)}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216752 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003200000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 107}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216753"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003300000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Speech}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216753 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 108}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216754"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Making GlovePIE talk}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216754
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 108}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216755"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Speech Recognition}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216755 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 109}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216756"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Push-to-talk}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216756 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 110}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216757"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Other Microphone Stuff}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _To
|
|
c251216757 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003700000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 111}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216758"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003800000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Virtual Reality HMDs}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216758 \\h
|
|
}{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 112}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216759"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 VR920}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216759 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370035003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 112}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216760"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Z800}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216760 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 114}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216761"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Trimersion}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216761 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 114}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216762"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003200000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 TrackIR}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216762 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 116}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216763"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 TrackIR emulation}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216763 \\h
|
|
}{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 116}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216764"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Reading TrackIR like a game}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216764 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003400000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 118}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216765"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Raw TrackIR camera input}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216765 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003500000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 118}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216766"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003600000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NEW! HAT-Track}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216766 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 120}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216767"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Reading from HAT-Track in GlovePIE}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216767 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003700000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 120}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216768"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003800000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Emulating TrackIR}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216768 \\h
|
|
}{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 121}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216769"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Emulating HAT-Track}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216769 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370036003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 121}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216770"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003000000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Novint Falcon}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216770 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003000000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 122}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216771"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003100000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 3DConnexion SpaceNavigator, etc.}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216771 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003100000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 124}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216772"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003200000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 PlayStation 3 SIXAXIS}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216772 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 126}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216773"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Installation}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216773 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 126}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216774"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Using SIXAXIS in GlovePIE}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216774 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003400000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 127}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216775"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Bluetooth}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216775 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 128}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216776"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Sometimes it stops working}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216776 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003600000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 129}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216777"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003700000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 PlayStation 3 BDRemote}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216777 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 130}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216778"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003800000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 XBox360 Controller}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216778 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 131}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216779"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003900000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Concept 2 Rowing Machine}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216779
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370037003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 133}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216780"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003000000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NEW! Wild Divine Lightstone}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216780 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 134}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216781"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003100000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NEW! Mind Reading with Neurosky ThinkGear}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216781 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003100000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 135}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216782"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003200000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 NEW! Mind Reading with Emotiv Epoc}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216782 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003200000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 136}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216783"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Running}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216783 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 136}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216784"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Reading thoughts}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216784 \\h }
|
|
{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 136}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216785"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Emotions}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216785 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 137}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216786"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Facial Expressions}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216786 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 138}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216787"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003700000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Other}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216787 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 138}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216788"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003800000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Screen}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216788 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 139}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s17\qc \li0\ri0\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\scaps\fs22\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216789"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003900000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Orientation}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216789 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370038003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 139}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216790"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003000000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Scrolling the entire screen}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216790 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 139}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216791"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003100000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Size}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216791 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 139}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216792"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003200000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Position}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216792 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 140}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216793"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003300000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Plug & Play Monitor Stuff}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216793 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003300000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 140}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216794"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003400000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 ScreenSaver stuff}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216794 \\h
|
|
}{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003400000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 140}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216795"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003500000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 GlovePIE stuff}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216795 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003500000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 140}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216796"}{\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457
|
|
}{\ul\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003600000000}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Other Stuff}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216796 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003600000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 140}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\scaps0\fs24\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s16\qc \li0\ri0\sb360\sa360\widctlpar\tqr\tx8303\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \b\caps\fs22\ul\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\field\fldedit{\*\fldinst {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216797"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003700000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Window}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216797 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003700000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 141}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216798"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003800000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 FakeSpace Pinch Gloves}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216798 \\
|
|
h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003800000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 142}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216799"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003900000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 5DT Data Glove}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216799 \\h }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600370039003900000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 143}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216800"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600380030003000000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Polhemus Fastrack and compatible trackers}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762
|
|
PAGEREF _Toc251216800 \\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600380030003000000000}}}{\fldrslt {
|
|
\lang1024\langfe1024\noproof\webhidden\insrsid10190762 146}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216801"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600380030003100000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 Ascension Flock of Birds}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216801
|
|
\\h }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600380030003100000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 147}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216802"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600380030003200000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 InterSense trackers}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216802 \\h }
|
|
{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600380030003200000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 148}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }{\field\fldedit{\*\fldinst {\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{\lang1024\langfe1024\noproof\insrsid10190762 HYPERLINK \\l "_Toc251216803"}{\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 }{
|
|
\cf2\lang1024\langfe1024\noproof\insrsid4008458\charrsid3494457 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600380030003300000000}}}{\fldrslt {
|
|
\cs15\cf2\lang1024\langfe1024\noproof\insrsid10190762\charrsid3494457 WorldViz PPT Tracker}{\lang1024\langfe1024\noproof\webhidden\insrsid10190762 \tab }{\field{\*\fldinst {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 PAGEREF _Toc251216803 \\h
|
|
}{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield 08d0c9ea79f9bace118c8200aa004ba90b02000000080000000e0000005f0054006f006300320035003100320031003600380030003300000000}}}{\fldrslt {\lang1024\langfe1024\noproof\webhidden\insrsid10190762 149}}}
|
|
\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj }}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\b0\caps0\fs24\ulnone\lang1024\langfe1024\dbch\af13\noproof\langfenp1041\insrsid10190762
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid12010334 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 }}\pard\plain
|
|
\s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid12010334 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 \sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par }\pard \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid12010334 {\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905 \page }{
|
|
\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905 {\*\bkmkstart _Toc251216618}Copyright{\*\bkmkend _Toc251216618}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11493825 {\lang1024\langfe1024\noproof\insrsid1458350 GlovePIE is Copyright 2010}{\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905
|
|
by Carl Kenner}{\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905 , except for the scripts by other authors}{\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905 . }{\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905
|
|
By using this software you agree to obey the following license conditions:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11493825 {\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11493825 {\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905
|
|
* You may not use this software directly or indirectly for any military purpose. This includes, but is not limited to, training, research and development, controlling military hardware, directing military }{
|
|
\lang1024\langfe1024\noproof\insrsid11340906\charrsid2696905 personnel}{\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905
|
|
, or troop entertainment. You may not use this software anywhere on a military base or vessel. This applies to all versions of PIE.}{\lang1024\langfe1024\noproof\insrsid11340906\charrsid2696905 You may also not use it for playing \'93games\'94
|
|
produced by the military to recruit players as real soldiers, including {\*\xmlopen\xmlns1{\factoidname place}}{\*\xmlopen\xmlns1{\factoidname country-region}}America{\*\xmlclose}{\*\xmlclose}\rquote s Army. }{\lang1024\langfe1024\noproof\insrsid7543692
|
|
You may not use this software to play detailed military simulation games such as ArmA unless you plan to never be a soldier. }{\lang1024\langfe1024\noproof\insrsid11340906\charrsid2696905 Sorry.}{
|
|
\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11493825 {\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11493825 {\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905 * You may not export this software to Israel, or use it in
|
|
Israel (including the occupied territories), until Israel has ended its occupation of the West Bank, Gaza Strip, Lebanon, Syria, }{\lang1024\langfe1024\noproof\insrsid11340906\charrsid2696905 and anywhere else it may occupy,}{
|
|
\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid11340906\charrsid2696905 or until Israel abolishes apartheid (granting all Jews and non-Jews in its territories equal rights). }{
|
|
\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905 If you try to run it in {\*\xmlopen\xmlns1{\factoidname place}}{\*\xmlopen\xmlns1{\factoidname country-region}}Israel{\*\xmlclose}{\*\xmlclose} }{
|
|
\lang1024\langfe1024\noproof\insrsid11340906\charrsid2696905 before then, }{\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905 it will give you an error.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11493825 {\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11493825 {\lang1024\langfe1024\noproof\insrsid11493825\charrsid2696905
|
|
* You may not use this software to cheat at online or multiplayer games. What constitutes cheating depends on the game and the server. Just using a different input device shou
|
|
ldn't be considered cheating, but complex scripted actions to make things easier may be considered cheating. Don't get GlovePIE banned, or you will hurt everyone who wants to play with a VR glove. But feel free to cheat at single player!
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid546095 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905 {\*\bkmkstart _Toc251216619}{\*\xmlopen\xmlns1{\factoidname place}}Vista}{\lang1024\langfe1024\noproof\insrsid7543692 {\*\xmlclose} (and Windows 7)}{
|
|
\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905 {\*\bkmkend _Toc251216619}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\cf6\lang1024\langfe1024\noproof\insrsid12799356\charrsid12799356 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\cf6\lang1024\langfe1024\noproof\insrsid12799356 }{\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905 GlovePIE }{\lang1024\langfe1024\noproof\insrsid9594416 0.43 will run }{\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905
|
|
as administrator }{\lang1024\langfe1024\noproof\insrsid9594416 by default. You can run it as a normal user by editing or deleting the external manifest files. But i}{\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905
|
|
f you want to emulate keys and the mouse in fullscreen games on Windows Vista}{\lang1024\langfe1024\noproof\insrsid7543692 or above}{\lang1024\langfe1024\noproof\insrsid9594416 then you need administrator access}{
|
|
\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905 . If you don\rquote t run it as administrator, the keys and mouse will not be emulate}{\lang1024\langfe1024\noproof\insrsid7543692 d. This is a security feature of}{
|
|
\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905 Windows Vista.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid3630813\charrsid2696905
|
|
\par If you use the \'93Rower\'94 object you also need to run it as administrator.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905 Note that running programs as adminis
|
|
trator is less secure, since it allows them to do whatever they want to your system.}{\lang1024\langfe1024\noproof\insrsid3630813\charrsid2696905 But it is no less secure than running them on XP.}{
|
|
\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905 On {\*\xmlopen\xmlns1{\factoidname place}}Vista{\*\xmlclose}, you can\rquote
|
|
t install the Mike and }{\lang1024\langfe1024\noproof\insrsid7543692 Mary speech synthesis voices, so don\rquote t try. }{\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905 You also won\rquote t have access to the \'93Sam\'94
|
|
voice. You only have Anna, unless you bought Windows Ultimate in which case you might be able to get Lili.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid9594416 In recent versions of GlovePIE}{\lang1024\langfe1024\noproof\insrsid7543692
|
|
, Speech recognition should }{\lang1024\langfe1024\noproof\insrsid9594416 now }{\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905 work the same on {\*\xmlopen\xmlns1{\factoidname place}}Vista{\*\xmlclose}
|
|
as it did on XP. The speech recognition window will no longer appear, and you will no longer execute random windows commands and randomly delete files, etc. while you are playing a game. }{\lang1024\langfe1024\noproof\insrsid12716895\charrsid2696905
|
|
It will however waste resources if you are also using other speech programs at the same time. }{\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905 If you want the speech recognitio
|
|
n window to appear, and to randomly execute dangerous commands, you can choose \'93Vista Shared Speech Recogniser\'94 from the Troubleshooter menu.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\cf6\lang1024\langfe1024\noproof\insrsid12799356\charrsid12799356 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid12799356 The}{\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905 minimize-to-tray }{\lang1024\langfe1024\noproof\insrsid12799356 button is no longer in the }{
|
|
\lang1024\langfe1024\noproof\insrsid12190166\charrsid2696905 caption}{\lang1024\langfe1024\noproof\insrsid12799356 . It has been moved down to the menu bar. So you should be able to run GlovePIE properly with themes enabled now.}{
|
|
\lang1024\langfe1024\noproof\insrsid12190166
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid12799356
|
|
\par GlovePIE has not been tested on Windows 7 yet.}{\lang1024\langfe1024\noproof\insrsid12799356\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6308141 {\lang1024\langfe1024\noproof\insrsid546095\charrsid2696905 \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid546095 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 {\*\bkmkstart _Toc251216620}Languages}{\lang1024\langfe1024\noproof\insrsid1983755 {\*\bkmkend _Toc251216620}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid7543692
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 {\cf6\insrsid8869108\charrsid8869108 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\insrsid8869108 }{\insrsid12799356
|
|
GlovePIE 0.43}{\insrsid7543692 now features full Unicode support on Windows 2000/XP/{\*\xmlopen\xmlns1{\factoidname place}}Vista{\*\xmlclose}. }{\insrsid9046899 Files are saved as UTF-8.}{\insrsid7543692
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 {\insrsid7543692
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 {\cf6\insrsid12799356\charrsid8869108 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\insrsid12799356 If your currency settin
|
|
gs, or your chosen language, are set to use the comma instead of the full stop for a decimal point, then you can use either a full stop or a comma as a decimal point in GlovePIE scripts. But when you want to put a real comma after a number, make sure you
|
|
put a space after the comma (or before it).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 {\insrsid12799356
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 {\cf6\insrsid12799356\charrsid8869108 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\insrsid12799356
|
|
Variables can now have non-latin names. But they can\rquote t begin with a number, even if it is a non-western number.}{\insrsid12799356\charrsid12799356
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 {\insrsid12799356
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 {\cf6\insrsid12799356\charrsid8869108 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\insrsid12799356
|
|
Numbers can be written in Chinese characters, but currently only when they are 2 characters or shorter.}{\insrsid12799356\charrsid12799356
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7543692 {\insrsid12799356\charrsid7543692
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid4415928 GlovePIE can}{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905
|
|
be translated into other languages}{\lang1024\langfe1024\noproof\insrsid4415928 , but no sample ini files are included, so it will be hard for you to work out if you don\rquote t have files from an earlier version. Sorry}{
|
|
\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 . This will }{\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 not only }{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 translate the menus}{
|
|
\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 , but unlike other programming languages,}{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 it can also translate the scripting language. }{
|
|
\lang1024\langfe1024\noproof\insrsid13521539\charrsid2696905 So language keywords, names of objects and names of propertie
|
|
s of objects can all be translated. You can also translate some of the punctuation. Some languages can use commas as decimal points. So be careful. Those languages still use commas as commas to}{\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
o}{\lang1024\langfe1024\noproof\insrsid13521539\charrsid2696905 . So they (usually) need a space after the comma if it is not a decimal point and it is not obvious.}{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid13521539\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid13521539\charrsid2696905
|
|
You can change the translation, or add translations for other languages, by changing the .inilng files or creating new ones. You also need to change the languages.ini file}{\lang1024\langfe1024\noproof\insrsid29091\charrsid2696905 to add your language}{
|
|
\lang1024\langfe1024\noproof\insrsid13521539\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid29091\charrsid2696905 Both these files must be saved as UTF8. }{\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905 It is best to use Notepad }{
|
|
\lang1024\langfe1024\noproof\insrsid7543692 or GlovePIE }{\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905 to edit them. }{\lang1024\langfe1024\noproof\insrsid29091\charrsid2696905 If }{
|
|
\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905 your language has non-E}{\lang1024\langfe1024\noproof\insrsid29091\charrsid2696905 nglish letters you should give the language name in those letters (before the = ), but the file name}{
|
|
\lang1024\langfe1024\noproof\insrsid7363366\charrsid2696905 (after the = )}{\lang1024\langfe1024\noproof\insrsid29091\charrsid2696905 in English letters only. }{\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905 If you see anything
|
|
in the user interface, or the scripting language that you want to translate, you can add it to the .inilng file in the appropriate section. }{\lang1024\langfe1024\noproof\insrsid9046899\charrsid2696905 Identifiers are the names of things in the scripts.
|
|
}{\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905 It doesn\rquote t matter if it already exists or not. Some items don\rquote t exist yet, so you should add them. Because it is a programming language, you can\rquote
|
|
t have two translations that are the same, but for different things, or the computer will not be able to understand. }{\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 You can add multiple foreign terms for each English term
|
|
if you want. The first one will be chosen when translating into the foreign language, but when translating from the foreign language, any of the multiple terms will work.}{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905 When you post a script on a forum, it is very important that you translate it back t
|
|
o English first, by choosing English from the Language menu. Also if you cut and paste an English script FROM a forum, you also need to change GlovePIE\rquote s language back to English first.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid6445895\charrsid2696905 When you save a script, it is always saved in English automatically.
|
|
When you load a script, it is always assumed to be in English and translated into your current language.
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid12156476 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 {\*\bkmkstart _Toc251216621}GlovePIE Scripts}{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905
|
|
{\*\bkmkend _Toc251216621}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
Here is the syntax for GlovePIE scripts:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid12002879 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 {\*\bkmkstart _Toc251216622}Commands and other Statements{\*\bkmkend _Toc251216622}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 Comments}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 Comments are text which does nothing. They only
|
|
help the human who is trying to read your script (usually you).
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 The computer ignores them.
|
|
\par
|
|
\par Comments can have the following syntax:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 //}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 This is a comment}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par
|
|
\par }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 /*}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 This is a multi-line comment
|
|
\par It goes over multiple lines
|
|
\par like this}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 */
|
|
\par
|
|
\par \rquote }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 This is a BASIC style comment
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 REM}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
This is also a BASIC style comment
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\b\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 %}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 This is a MATLAB style comment
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 Assignment statements}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par
|
|
\par The most common kind of statement in GlovePIE is the assignment statement.
|
|
\par
|
|
\par It has one of the following forward syntaxes:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 LValue }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 =}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 expression }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par
|
|
\par LValue }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 :=}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 expression }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par or the following backwards syntax:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 expression}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 => }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 LValue }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par
|
|
\par These statements all set the LValue to the value of the expression.
|
|
\par If it is inside an IF statement then it will always set the value.
|
|
\par If it is not inside an IF statement then it will ONLY set the LValue when the expression changes.
|
|
\par This means you can set a variable, such as a key, several times:
|
|
\par
|
|
\par Ctrl = var.a
|
|
\par Ctrl = var.b
|
|
\par
|
|
\par Which has a similar effect to: Ctrl = var.a or var.b
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid4001801\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid4001801\charrsid2696905 The expressions can be any complicated mathematics that you want, or just another value.
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid4001801\charrsid2696905 Mathematical assignment statements}{\b\f1\fs20\cf6\lang1024\langfe1024\noproof\insrsid4001801\charrsid2696905
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid4001801\charrsid2696905
|
|
\par If you want to add something to a value, you have always been able to say:
|
|
\par LValue = LValue + expression
|
|
\par
|
|
\par But now you can write the same thing a shorter way, like in C and Java:
|
|
\par
|
|
\par LValue += expression
|
|
\par
|
|
\par Both ways change LValue by adding expression onto it.
|
|
\par There are also other ways to increase a value, see the \'93Increment statements\'94 section below.
|
|
\par
|
|
\par You can also do subtraction, multiplication, or division by using -=}{\f1\fs20\lang1024\langfe1024\noproof\insrsid3892958\charrsid2696905 ,}{\f1\fs20\lang1024\langfe1024\noproof\insrsid4001801\charrsid2696905 *= or /=
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 IF statements
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par Sometimes you will want to only do a set of commands when some condition is true.
|
|
\par
|
|
\par You can do that with IF statements.
|
|
\par
|
|
\par If statements can have one of the following syntaxes:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 then}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par
|
|
\par }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ( }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 )}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 then}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 then}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{ }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]] [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 then}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{ }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 else}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]] [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 then}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{ }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] (}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 else}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 |}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 elseif}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ) }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition2}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 then}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] (}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 else}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 |}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 elseif}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ) }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition3}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 then}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 else}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 if}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]] [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 WHILE loops
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par While loops are NOT very useful in PIE because PIE is not a linear language.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 A P
|
|
IE script continuously loops through the entire script, even while IF statements are running in the background.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 If you think you need a while loop then you are probably looking at the problem the wrong way.
|
|
\par
|
|
\par Nevertheless, PIE does support while loops in the unlikely event that you do need them.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
The entire while loop will be executed in one go. You can't use it to wait for some condition triggered elsewhere (yet).
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par The syntax is one of the following:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 while}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 do}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par
|
|
\par }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 while}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ( }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 )}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 do}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par
|
|
\par }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 while}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 do}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{ }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 while}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]] [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
If you make a mistake and create an infinite loop, then it will give up after a fifth of a second and speak "infinite loop".
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 FOR loops
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par For loops aren't as useful in PIE as they are in other languages, because PIE is not a linear language.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
A PIE script continuously loops through the entire script, even while IF statements are running in the background.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 If you think you need a for loop then you may be looking at the problem the wrong way.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
The entire for loop will be executed in one go. You can't use it to wait for some condition triggered elsewhere (yet).
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par The syntax is one of the following:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 for}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 variable}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 (}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 =}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 |}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 :=}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ) }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 InitialValue }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 (}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 to}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 |}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 downto}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ) }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 FinalValue}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 step }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 amount}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 do}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 for}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 variable}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 (}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 =}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 |}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 :=}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ) }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 InitialValue }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 (}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 to}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 |}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 downto}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ) }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 FinalValue}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 step }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 amount}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 do}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 for}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]]
|
|
\par
|
|
\par }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 for}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ( }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 initialization }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ;}{\b\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 increment }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 )}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 do}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 for}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ( }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 initialization }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 condition}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ;}{\b\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 increment }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 )}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{
|
|
\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 do}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 begin}{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \{}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 statement }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par statement }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{
|
|
\i\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par ...}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \} }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ] [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 end }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [}{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 for}{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]]
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
If you make a mistake and create an infinite loop, then it will give up after a fifth of a second and speak "infinite loop".
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 Wait command
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par Wait commands are for use in macros. Everything inside an IF statement is considered a macro.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
A wait command will pause only the macro it is inside of, while the rest of the script will keep going in the background.
|
|
\par If you have nested if statements inside each other, then it will only pause the innermost if statement.}{\f1\fs20\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 So don\rquote
|
|
t use it inside an if statement which is already inside an if statement itself.}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par The syntax is either:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 wait}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 }{
|
|
\i\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 duration }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 wait( }{\i\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 duration }{
|
|
\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ) }{\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 [ }{\b\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ; }{
|
|
\f2\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 ]}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 You shoul
|
|
d normally specify the units for the duration. Valid units are: milliseconds (ms), seconds (s), minutes, hours, days.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par eg.
|
|
\par wait 100 ms
|
|
\par wait 1 second
|
|
\par wait(500 milliseconds);
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 Increment statements
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 You can add one to something using one of these syntaxes:
|
|
\par
|
|
\par var.x++
|
|
\par ++var.x
|
|
\par Inc(var.x)
|
|
\par These are commands, not functions like in C. So you can\rquote t set something else to equal var.x++.
|
|
\par
|
|
\par You can subtract one from something like this:
|
|
\par
|
|
\par var.x--
|
|
\par --var.x
|
|
\par Dec(var.x)
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid4001801\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 SHR and SHL statements
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par You can shift a value\rquote s bits to the left or right with the SHR and SHL commands:
|
|
\par eg.
|
|
\par
|
|
\par shr var.x, 1
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 Say command}{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 You can use the Say command to make GlovePIE speak:
|
|
\par
|
|
\par Say \'93hello world\'94
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 or
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12002879 {\f1\fs20\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
\par Say(\'93hello world\'94)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\b\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 Other Commands
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
\par The following other commands also exist:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14955642 {\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 ExitProgram, ExitPIE,
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14955642 {\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 Execute}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (filename)}{
|
|
\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 , Chain}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (filename)}{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 ,
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 Display}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (text)}{
|
|
\lang1024\langfe1024\noproof\insrsid3892958\charrsid2696905 , DebugPrint(text) }{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14955642 {\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 AddCode}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (text)}{
|
|
\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 ,
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
ControlPanel, ControlPanelKeyboard, ControlPanelJoystick, ControlPanelMouse, ControlPanelP5, ControlPanelPPJoy, ControlPanelSpeech, ControlPanelMidi, ControlPanelDisplay,
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
\par PlaySound}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (filename)}{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 ,
|
|
\par Beep}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 ([freq, duration])}{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 , BeepAsterisk, BeepExclamation, BeepHand, BeepQuestion, BeepDefault,
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
FlashPieWindow, HidePie, ShowPie, MinimizePie, MaximizePie, RestorePie, UnMinimizePie, UnMaximizePie,
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12002879 {\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
\par Press}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (x)}{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 , Release}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (x)}{
|
|
\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 , Toggle}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (x)}{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 ,
|
|
\par
|
|
\par Type}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (text)}{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 , TypeUnicode}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (text)}{
|
|
\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 ,
|
|
\par
|
|
\par SendOsc}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905 (ip, port, address, [p1, p2, p3\'85])}{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905 , BroadcastOsc}{\lang1024\langfe1024\noproof\insrsid9053514\charrsid2696905
|
|
(port, address, [p1, p2, p3\'85])}{\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 WiimotePoke([wiimote number], address, value)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 WiimoteSend(wiimote number, report number, [p1, p2, p3\'85]) }{
|
|
\lang1024\langfe1024\noproof\insrsid14955642\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid12483605 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 {\*\bkmkstart _Toc251216623}Functions{\*\bkmkend _Toc251216623}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Here are some of the functions that exist in GlovePIE
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12666776\charrsid2696905 Pixel colour Functions
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12666776\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12666776\charrsid2696905 ScreenPixel(x, y): colour of screen pixel at (x, y)}{
|
|
\f1\fs20\lang1024\langfe1024\noproof\insrsid11075626\charrsid2696905 as an integer, in hexadecimal it looks like 0xRRGGBB. }{\f1\fs20\lang1024\langfe1024\noproof\insrsid14880089\charrsid2696905
|
|
This is the opposite of the way the windows DLLs do it, but it is the way the internet and DirectX do it. }{\f1\fs20\lang1024\langfe1024\noproof\insrsid11075626\charrsid2696905 To display it:}{
|
|
\f1\fs20\lang1024\langfe1024\noproof\insrsid12666776\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid11075626\charrsid2696905
|
|
\par Debug = \'930x\'94+ IntToHex(ScreenPixel(0, 0), 6)
|
|
\par
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid14880089\charrsid2696905 You can also treat it like a vector:}{\f1\fs20\lang1024\langfe1024\noproof\insrsid11075626\charrsid2696905
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid14880089\charrsid2696905
|
|
\par [var.r, var.g, var.b] = ScreenPixel(0, 0)
|
|
\par
|
|
\par debug = var.r+\rquote , \lquote +var.g+\rquote , \lquote +var.b
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid14880089\charrsid2696905 That will set var.r, var.g, and var.b to the values between 0 a
|
|
nd 1 corresponding to the amount of red, green, and blue in the colour. The (0, 0) coordinates could be any pixel coordinates.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12666776\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Trigonometry Functions
|
|
\par
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 All angles are measured in degrees by default.
|
|
\par The following trigonometry functions are implemented:
|
|
\par
|
|
\par Standard trig functions: sin, cos, tan, sec, cosec, cotan
|
|
\par Hyperbolic trig functions: SinH, CosH, TanH, SecH, CosecH, CotH
|
|
\par
|
|
\par Inverse trig functions: aSin, aCos, aTan, aSec, aCosec, aCotan
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Inverse Hyperbolic trig functions: aSinH, aCosH, aTanH, aSecH, aCosecH, aCotanH
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par 2D inverse tan function: atan2
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Rounding Functions}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par
|
|
\par These functions preserve the units of their parameters.
|
|
\par
|
|
\par ceil: Rounds towards infinity
|
|
\par floor: Rounds towards negative infinity
|
|
\par trunc, int: Rounds towards zero
|
|
\par round: Rounds towards nearest integer. .5 rounds to nearest even number (Bankers' Rounding)
|
|
\par
|
|
\par frac: Returns signed fractional component. eg Frac(-1.32) = -0.32
|
|
\par
|
|
\par RoundTo(x, digits): If digits is negative, rounds to that many decimal places using Banker's Rounding
|
|
\par If digits is positive, rounds to that power of ten using Banker's Rounding.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
SimpleRoundTo(x [, digits]): Same as RoundTo except 0.5 always rounds up. Unfortunately -1.5 rounds up to 1.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 digits defaults to -2 (meaning 2 decimal places).
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Sign Functions}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par
|
|
\par Sign: returns the sign of a number. 1 if it is positive, 0 if it is zero, -1 if it is negative
|
|
\par Abs: returns the modulus or absolute value. Removes the sign of a number. Preserves units.
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Exponential and Square Root Functions
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Raising things to the power of something:
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 sqr(x): caculates x^2}{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 sqrt(x): calculates the square root of x. x^(1/2)
|
|
\par power(x,y): calculates x^y
|
|
\par intPower(x,y): calculates x^y where x and y are integers (the result is not an integer if y is negative)
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\langnp1036\insrsid12483605\charrsid9594416 exp(x): calculates e^x. }{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 e is 2.71828. The derivative of e^x is e^x.
|
|
\par Ldexp(s,p): calculates s * (2^p)
|
|
\par
|
|
\par Poly(x, a0, [a1, [a2, [a3, [a4, [a5, [a6]]]]]]): returns a0 + a1*x + a2*(x^2) + a3*(x^3) + a4*(x^4) + ...
|
|
\par
|
|
\par
|
|
\par Logarithms (undoing raising something to some power):
|
|
\par
|
|
\par Log10(x): returns the number you have to raise 10 to the power of, in order to get x. eg. Log10(1000) = 3
|
|
\par Log2(x): returns the number you have to raise 2 to the power of, in order to get x. eg. Log2(256) = 8
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
LogN(N, x): returns the number you have to raise N to the power of, in order to get x. eg. LogN(10, 1000) = 3
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Ln(x): returns the number you have to raise e (2.71828) to the power of, in order to get x
|
|
\par LnXP1(x): the same as above, but for x+1 instead of x
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Comparison functions}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par
|
|
\par IsZero(x): returns true if x is zero
|
|
\par IsInfinite(x): returns true if x is infinite
|
|
\par IsNaN(x): returns true if x is not a number
|
|
\par
|
|
\par SameValue(a, b [, epsilon]): returns true if a and b are the same, or differ by no more than epsilon
|
|
\par InSet(x,a,b,c,d,e,f,g,...): returns true if x matches one of the values following it.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 max(a,b): returns the maximum of two values. Preserves units.
|
|
\par min(a,b): returns the minimum of two values. Preserves units.
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Range functions}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par
|
|
\par EnsureRange(x, a, b): Returns the closest value to x which is within the range [a, b]. Preserves units.
|
|
\par InRange(x, a, b): Returns true if x is within the range [a, b].
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
MapRange(x, a, b, c, d): Returns value x converted from the range [a, b] to the range [c, d]. Values outside the original range will map to the appropriate values outside the new range.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 EnsureMapRange(x, a, b, c, d): The
|
|
same as MapRange except values outside the range are mapped to the closest values inside the range.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid3892958\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\b\f1\fs20\cf6\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905 }{\f1\fs20\lang1024\langfe1024\noproof\insrsid3892958\charrsid2696905 De}{\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905 adZ}{
|
|
\f1\fs20\lang1024\langfe1024\noproof\insrsid3892958\charrsid2696905 one(x, a): Returns value x between -1 and 1, but with a deadzone around zero, so that values within the range [-a, a] of the zero point become 0,
|
|
and other values between -1 and 1 are scaled to compensate. }{\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905 You should only use this function for values roughly between -1 and 1, like joystick values.}{
|
|
\f1\fs20\lang1024\langfe1024\noproof\insrsid3892958\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Random functions}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par
|
|
\par Random: Returns a random fractional number between 0 and 1.
|
|
\par Random(n): Returns a random whole number between 0 and n-1.
|
|
\par RandomRange(a,b): Returns a random whole number between a and b.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
RandG(mean, StandDev): Returns a random number from gaussian distribution around mean. Preserves units.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Ordinal functions}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par
|
|
\par odd(n): Returns true if n is odd
|
|
\par pred(n): Returns n-1
|
|
\par succ(n): Returns n+1
|
|
\par
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Date/Time functions}{\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905
|
|
TimeStamp or GetTimeStamp: A precise timestamp measured in seconds, from an arbitrary starting point. Much more accurate than the other time functions (which are measured in days).
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 Now: Current time and date (in days since {\*\xmlopen\xmlns1{\factoidname stockticker}}
|
|
{\*\xmlopen\xmlns1{\factoidname date}{\xmlattr\xmlattrns0{\xmlattrname Month}{\xmlattrvalue 12}}{\xmlattr\xmlattrns0{\xmlattrname Day}{\xmlattrvalue 30}}{\xmlattr\xmlattrns0{\xmlattrname Year}{\xmlattrvalue 1899}}}December 30, 1899{\*\xmlclose}
|
|
{\*\xmlclose})
|
|
\par Time: Current time (in fractions of a day)
|
|
\par Date: Current date (in days since {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname date}{\xmlattr\xmlattrns0{\xmlattrname Month}{\xmlattrvalue 12}}{\xmlattr\xmlattrns0{\xmlattrname Day}{\xmlattrvalue 30}}{\xmlattr\xmlattrns0
|
|
{\xmlattrname Year}{\xmlattrvalue 1899}}}December 30, 1899{\*\xmlclose}{\*\xmlclose})
|
|
\par
|
|
\par Tomorrow: Tomorrow's date (in days since {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname date}{\xmlattr\xmlattrns0{\xmlattrname Month}{\xmlattrvalue 12}}{\xmlattr\xmlattrns0{\xmlattrname Day}{\xmlattrvalue 30}}
|
|
{\xmlattr\xmlattrns0{\xmlattrname Year}{\xmlattrvalue 1899}}}December 30, 1899{\*\xmlclose}{\*\xmlclose})
|
|
\par Yesterday: Yesterday's date (in days since {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname date}{\xmlattr\xmlattrns0{\xmlattrname Month}{\xmlattrvalue 12}}{\xmlattr\xmlattrns0{\xmlattrname Day}{\xmlattrvalue 30}}
|
|
{\xmlattr\xmlattrns0{\xmlattrname Year}{\xmlattrvalue 1899}}}December 30, 1899{\*\xmlclose}{\*\xmlclose})
|
|
\par
|
|
\par CurrentYear: Current year of the Gregorian calendar (in years).
|
|
\par
|
|
\par DateOf(x): Returns the date part of the date and time in x (in days since {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname date}{\xmlattr\xmlattrns0{\xmlattrname Month}{\xmlattrvalue 12}}{\xmlattr\xmlattrns0{\xmlattrname Day}
|
|
{\xmlattrvalue 30}}{\xmlattr\xmlattrns0{\xmlattrname Year}{\xmlattrvalue 1899}}}December 30, 1899{\*\xmlclose}{\*\xmlclose})
|
|
\par TimeOf(x): Returns the time part of the date and time in x (in fractions of a day)
|
|
\par
|
|
\par
|
|
\par Dayofthemonth(x), dayoftheweek(x), dayoftheyear(x), dayofweek(x),
|
|
\par Daysbetween(x, y),
|
|
\par Daysinamonth(x, y), daysinayear(x), daysinmonth(x), daysinyear(x), DaySpan(x, y),
|
|
\par HourOfTheDay(x), HourOfTheMonth(x), HourOfTheWeek(x), HourOfTheYear(x),
|
|
\par HoursBetween(x, y), HourSpan(x, y),
|
|
\par IncDay(x, [y])
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid1983755 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905 Temporal functions
|
|
\par }\pard\plain \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905 Delta(x)
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905 How much x has changed since the previous GlovePIE frame. It will be negative if x has decreased.
|
|
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\b\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905 Smooth(x, [ExtraFrames, [DeadbandDistance]])
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905 Smooths out the value of x by averaging with the previous ExtraFrames frames. If it hasn\rquote
|
|
t changed by more than DeadbandDistance it doesn\rquote t count as changed at all. By default DeadbandDistance is 0.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905 Kalman(x, noise1, noise2)
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905 Smooths using a Kalman filter, in theory. It has a tendency to diverge
|
|
if you get the noise values wrong. Don\rquote t ask me what the correct noise values are.
|
|
\par }\pard \ql \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12483605 {\f1\fs20\lang1024\langfe1024\noproof\insrsid942937\charrsid2696905
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905 Pressed(x), Clicked(x), SingleClicked(x), DoubleClicked(x)
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par Returns true or false.
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905 HeldDown(x, MinTime)
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par Returns true if x has been held down for at least MinTime.
|
|
\par
|
|
\par }{\b\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905 KeepDown(x, MinTime)
|
|
\par }{\f1\fs20\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par Keeps the result being true after x has stopped being true, until MinTime is up.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid12483605 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 {\*\bkmkstart _Toc251216624}Operators{\*\bkmkend _Toc251216624}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
There are lots of different operators you can use in GlovePIE. All of them allow you to mix different units together and rely on GlovePIE to automatically convert the units.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 a + b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a plus b
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
If a and b are numbers they will be added together. If a and b are strings of text then they will be concatenated together. If a and b are true/false values then they must both be true for it to be true (the same as \'93and\'94)}{
|
|
\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 . If a is a vector, but b isn\rquote t, it will extend the length of the vector without changing the direction (not implemented yet).}{
|
|
\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 a and b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a but b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
Will only be true if a is true and b is also true (anything greater than 0.5 or less than -0.5 is considered true). This only does logical and. If you want to {\*\xmlopen\xmlns1{\factoidname stockticker}}AND{\*\xmlclose} the binary bits together, use }{
|
|
\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 &}{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 instead.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 a & b}{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
If a and b are numbers, then it will only include in the answer the binary bits that are 1 in bot}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 h a and b for that position. If a and b are not
|
|
whole numbers, they will be rounded off first. If a and b are strings, they will be concatenated.}{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 a - b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a minus b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
If a and b are numbers they will be subtracted. If a and b are true/false values then they must both be true for it to be true (the same as \'93and\'94).}{\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 If a is a vector, but b isn\rquote
|
|
t, it will decrease the length of the vector without changing the direction (not implemented yet).}{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 -b}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par
|
|
\par Will swap the sign of b.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 not b}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par
|
|
\par Will be true if b is false, and vice-versa
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 a x b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 a * b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a times b
|
|
\par a multiplied by b
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\b\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 a cross b
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par Multiplies a and b together.}{\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 If a and b are vectors it will do cross multiplication.}{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 a . b
|
|
\par a dot b
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 If a and b are vectors it will do dot multiplication. Otherwise it does normal multiplication.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 a / b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a divided by b}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 If a and b are numbers th
|
|
ey will be divided properly, not like in C where you always get a whole number. 1 / 2 will give you 0.5. If you want integer division, you need to use }{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 div}{
|
|
\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 instead. If a and b are true/false values, then it will be true if either of them are true (the same as \'93}{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 or}{
|
|
\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905 \'94)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a div b}{\b\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
Will give you the whole-number answer of a / b minus the remainder. IMPORTANT: a and b do }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 not}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
have to be integers. They can have decimals. 7.5 div 3.5 gives you the answer 2.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a mod b}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a % b
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 These both give you the remainder of a divided
|
|
by b. a, b, and the answer may all contain decimals. They don\rquote t have to be whole numbers. For example, 7.5 mod 3.5 gives you 0.5.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a or b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 either a or b}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
This is true if either a or b is true, or both. This only does logical or. If you want to manipulate the binary bits, use }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 |}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
instead.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 neither a nor b}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 This is true if both a and b are false.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a | b}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par
|
|
\par This includes in the answer the binary bits that are 1 in a or b or both.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 a xor b}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par This is true if a or b is true, }{\b\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905 but not both.}{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 a ^ b
|
|
\par a ** b}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\b\lang1024\langfe1024\noproof\insrsid7879575\charrsid7879575 a}{\b\lang1024\langfe1024\super\noproof\insrsid7879575\charrsid7879575 b}{
|
|
\b\lang1024\langfe1024\sub\noproof\insrsid7879575 }{\b\cf6\lang1024\langfe1024\noproof\insrsid7879575\charrsid7879575 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\b\lang1024\langfe1024\sub\noproof\insrsid13568773\charrsid7879575
|
|
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid7879575\charrsid7879575 a}{\b\lang1024\langfe1024\super\noproof\insrsid7879575\charrsid7879575 b}{\b\lang1024\langfe1024\super\noproof\insrsid7879575 1+b2}{
|
|
\b\cf6\lang1024\langfe1024\noproof\insrsid7879575\charrsid7879575 }{\b\cf6\lang1024\langfe1024\noproof\insrsid7879575 }{\b\cf6\lang1024\langfe1024\noproof\insrsid7879575\charrsid7879575 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid7879575\charrsid7879575
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7879575 {\b\lang1024\langfe1024\noproof\insrsid7879575\charrsid7879575 a}{\b\lang1024\langfe1024\noproof\insrsid7879575 ^}{
|
|
\b\lang1024\langfe1024\super\noproof\insrsid7879575\charrsid7879575 b}{\b\lang1024\langfe1024\sub\noproof\insrsid7879575 }{\b\cf6\lang1024\langfe1024\noproof\insrsid7879575\charrsid7879575 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!
|
|
}{\b\lang1024\langfe1024\sub\noproof\insrsid7879575\charrsid7879575
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid7879575\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 This is a raise}{\lang1024\langfe1024\noproof\insrsid7879575 d to the power of b
|
|
, ie.}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 a}{\lang1024\langfe1024\super\noproof\insrsid13568773\charrsid2696905 b}{\lang1024\langfe1024\noproof\insrsid7879575 . You can write the number
|
|
using unicode superscript characters if you prefer.}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid7879575
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 a ^^ b
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 This is a tetration b. Don\rquote t ask.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 b!}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par
|
|
\par This is b factorial. b + (b-1) + (b-2) + \'85 + 1
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 b!!}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par
|
|
\par This is b double-factorial. IT IS NOT (b!)!
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 a shl b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid3112173\charrsid2696905 a << b}{\lang1024\langfe1024\noproof\insrsid3112173\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 This is the binary bits of a shifted to the left b bits. It is the sam
|
|
e as a * (2^b).
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 a shr b
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid3112173\charrsid2696905 a >> b}{\lang1024\langfe1024\noproof\insrsid3112173\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par This is the binary bits of a shifted to the right b bits. It is the same as a div (2^b).
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 |b|
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 This is the modulus}{\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905
|
|
(otherwise known as absolute value)}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905 of b, if b is a number, or the }{\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 length of b if b is a vector, or the deri
|
|
vative of b if b is a matrix.}{\lang1024\langfe1024\noproof\insrsid13568773\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 a%
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 This is a divided by 100.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 a% of b
|
|
\par a % of b
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905 This is a divided by 100 then multiplied by b.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a = b}{\b\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a == b
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 True if a and b are the same (once converted to the same type and units).
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a != b
|
|
\par a <> b
|
|
\par a isn\rquote t b
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a is not b
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 True if a and b are different (once converted to the same type and units).
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a ~= b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
True if a and b are approximately equal. If they are numbers, they must be within PIE.Epsilon of each other, when converted to the units of b. If they are strings then they must be the same except for case and leading and trailing spaces.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a !~= b
|
|
\par a ~!= b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
\par True if a and b are not approximately equal.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a > b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
\par True if a is greater than b. False if a is equal to b.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a < b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
\par True if a is less than b. False if a is equal to b.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a >= b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
\par True if a is greater than or equal to b
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 a <= b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905 T}{\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905 rue if a is less than or equal to b
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\b\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905 b <= a <= c}{\b\lang1024\langfe1024\noproof\insrsid14042496\charrsid2696905
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\b\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905 c >= a >= b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905
|
|
\par True if a is between b and c inclusive.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9175199 {\b\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905 b < a < c
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9175199 {\b\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905 c > a > b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905
|
|
\par True if a is between b and c, but is not b or c.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905 b <= a < c
|
|
\par c > a >= b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905
|
|
\par True if a is between b and c, but is not c.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9175199 {\b\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905 b < a <= c
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9175199 {\b\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905 c >= a > b
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9175199\charrsid2696905
|
|
\par True if a is between b and c, but is not b.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid13590556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12483605 {\lang1024\langfe1024\noproof\insrsid1983755\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid353053\charrsid2696905
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12483605\charrsid2696905
|
|
\par
|
|
\par
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid12002879 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12002879\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid12010334\charrsid2696905 {\*\bkmkstart _Toc251216625}GlovePIE GUI}{\lang1024\langfe1024\noproof\insrsid14898071\charrsid2696905
|
|
{\*\bkmkend _Toc251216625}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12010334\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid12010334\charrsid2696905
|
|
GlovePIE has three tabs. The first tab is the script tab, and shows the name of the script file. You can write any script you want here.}{\lang1024\langfe1024\noproof\insrsid4354912\charrsid2696905
|
|
The third tab is the Variables tab which only works while your script is running, and shows the values of all the variables.}{\lang1024\langfe1024\noproof\insrsid12010334\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid12010334\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10565010 {\lang1024\langfe1024\noproof\insrsid12010334\charrsid2696905 The second tab is the G}{
|
|
\lang1024\langfe1024\noproof\insrsid4354912\charrsid2696905 UI tab. }{\lang1024\langfe1024\noproof\insrsid10565010 It can }{\b\lang1024\langfe1024\noproof\insrsid10565010\charrsid10565010 automatically generate a script}{
|
|
\lang1024\langfe1024\noproof\insrsid10565010 using gesture recognition, or you can edit a script manually with the Graphical User Interface. Pretty cool! Once upon a time, GlovePIE\rquote s}{\lang1024\langfe1024\noproof\insrsid10565010\charrsid2696905
|
|
GUI was just for {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI}{\lang1024\langfe1024\noproof\insrsid10565010 {\*\xmlclose}{\*\xmlclose}, but not anymore, n}{
|
|
\lang1024\langfe1024\noproof\insrsid10565010\charrsid2696905 ow it works for everything. Well, most of the main things.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid10565010
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 The GUI is }{\b\lang1024\langfe1024\noproof\insrsid1009632\charrsid10565010 not}{
|
|
\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 the recommended }{\lang1024\langfe1024\noproof\insrsid10565010 way to make scripts, because it }{\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 can som}{
|
|
\lang1024\langfe1024\noproof\insrsid10565010 etimes be as hard to use as }{\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 writing scripts manually and it is less powerful. Please don\rquote
|
|
t be afraid of writing scripts manually. Scripts are easier than you think.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid4354912\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905 You can also sw}{\lang1024\langfe1024\noproof\insrsid2888614 ap tabs by using the View menu.}{\lang1024\langfe1024\noproof\insrsid4081528
|
|
\par }{\lang1024\langfe1024\noproof\insrsid2888614
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid2888614 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2888614 {\*\bkmkstart _Toc251216626}Getting Started with the GUI{\*\bkmkend _Toc251216626}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2888614 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid2888614
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid2888614 \hich\af0\dbch\af0\loch\f0 1.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin720\itap0\pararsid2888614 {
|
|
\insrsid2888614 Plug in any devices you want to use.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid2888614 \hich\af0\dbch\af0\loch\f0 2.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin720\itap0\pararsid2888614 {
|
|
\insrsid2888614 Click on the GUI tab.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid2888614 \hich\af0\dbch\af0\loch\f0 3.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin720\itap0\pararsid2888614 {
|
|
\insrsid2888614 If you want to use any Wii Remotes, hold down the 1 and 2 buttons together on all of them. They will automatically connect (if you have MS Bluetooth).
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid2888614 \hich\af0\dbch\af0\loch\f0 4.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin720\itap0\pararsid2888614 {
|
|
\insrsid2888614 Wait a few seconds while the devices are detected and started.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid2888614 \hich\af0\dbch\af0\loch\f0 5.\tab}Click on \'93Detect Output To Emulate\'94.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid2888614 \hich\af0\dbch\af0\loch\f0 6.\tab}Press a key, mouse button, or joystick button that the game normally uses.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid2888614 \hich\af0\dbch\af0\loch\f0 7.\tab}Click on \'93Detect Input\'94.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid13838275 \hich\af0\dbch\af0\loch\f0 8.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin720\itap0\pararsid2888614 {
|
|
\insrsid13838275 Do any gesture, or press any combination of buttons, or both, (with double-clicks or holding-down if you want) that you want to use to control the game instead.}{\insrsid2888614
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid13838275 \hich\af0\dbch\af0\loch\f0 9.\tab}}{\insrsid13838275 Wait until the answer appears (if it doesn\rquote
|
|
t appear, turn the Wii Remotes up the right way), and check that what it says is what you wanted.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid13838275 \hich\af0\dbch\af0\loch\f0 10.\tab}If it is correct, click Apply. A star }{\lang1024\langfe1024\noproof\insrsid8864237\charrsid2696905 (*)}{\lang1024\langfe1024\noproof\insrsid8864237
|
|
}{\insrsid13838275 will appear on the left next to what you chose, to show it has been set.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid13838275 \hich\af0\dbch\af0\loch\f0 11.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin720\itap0\pararsid2888614 {
|
|
\insrsid13838275 Go back to step 5 to }{\insrsid8864237 either }{\insrsid13838275 set the next button}{\insrsid8864237 or fix this one}{\insrsid13838275 , unless you are finished.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid13838275 \hich\af0\dbch\af0\loch\f0 12.\tab}Save your script.
|
|
\par {\listtext\pard\plain\lang3081\langfe1033\langfenp1033\insrsid13838275 \hich\af0\dbch\af0\loch\f0 13.\tab}Click the Run button to test or use your script.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid2888614\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid1604366 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905 {\*\bkmkstart _Toc251216627}Overview{\*\bkmkend _Toc251216627}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905 The GUI is what is called a two-way tool, much like the graphical form designer in {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}Delphi{\*\xmlclose}{\*\xmlclose}, C#, or Visual Basic. It is an al}{\lang1024\langfe1024\noproof\insrsid2888614 ternate view of the same script}{
|
|
\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905 , which you can edit with either the GUI, or the script editor, or both, swapping between the two as much as you want. }{\lang1024\langfe1024\noproof\insrsid2888614
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid2888614
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905 Some complex script
|
|
elements, and anything inside IF statements, will just not appear in the GUI. The GUI won\rquote t delete those things, it just won\rquote
|
|
t let you see them or change them until you switch back to the script view. The Script view will show everything you created in the GUI or the script editor and let you modify everything to your heart\rquote s content.}{
|
|
\lang1024\langfe1024\noproof\insrsid10758058\charrsid2696905 But all lines which are similar to \'93}{\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905 something = something}{\lang1024\langfe1024\noproof\insrsid10758058\charrsid2696905 \'94}{
|
|
\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905 , or }{\lang1024\langfe1024\noproof\insrsid10758058\charrsid2696905 \'93}{\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905 something => something}{
|
|
\lang1024\langfe1024\noproof\insrsid10758058\charrsid2696905 \'94}{\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905 will be shown in the GUI.}{\lang1024\langfe1024\noproof\insrsid10758058\charrsid2696905 Even lines like \'93x++\'94
|
|
will be shown in the GUI (although they don\rquote t make a lot of sense outsid}{\lang1024\langfe1024\noproof\insrsid15742361\charrsid2696905 e IF}{\lang1024\langfe1024\noproof\insrsid10758058\charrsid2696905 statements).}{
|
|
\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905
|
|
You can create, load or save your whole program using only the GUI. It will switch back to script view when you run it, but that is just because the GUI window chews through lots of memory and CPU. But yo
|
|
u can switch straight back to GUI to edit it again. You don\rquote t need to do any scripting to create GlovePIE scripts, or even to load other people\rquote s.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid14176006\charrsid2696905
|
|
The left hand side of the GUI is a list of all the output values that can be set with the GUI. This includes {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
output, keyboard emulation, mouse emulation, joystick emulation (using PPJoy), and fake mouse cursors.}{\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905
|
|
Output values that have already been set to something, are marked with an asterisk (*). If you need to click on the drop-down button of a drop-down box to see the items that have been set, then it will be marked with the drop-down symbol (-v-).}{
|
|
\lang1024\langfe1024\noproof\insrsid4354912\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid14176006\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid14176006\charrsid2696905 The right hand side of the GUI specifies what }{
|
|
\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905 input values }{\lang1024\langfe1024\noproof\insrsid14176006\charrsid2696905 you wan}{\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905
|
|
t to set the selected value to. You can set it to a constant value or mathematical expression by typing it in, or you can choose parts of the input devices from drop-down boxes.}{\lang1024\langfe1024\noproof\insrsid4081528\charrsid2696905
|
|
You can also choose what range you want the input to be mapped from or to, or, if you are more advanced, what functions you want to apply to it.}{\lang1024\langfe1024\noproof\insrsid14176006\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid1604366 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905 {\*\bkmkstart _Toc251216628}Output Device{\*\bkmkend _Toc251216628}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905 You need to start from the top of the left hand side. }{\lang1024\langfe1024\noproof\insrsid8864237
|
|
You can choose \'93Detect Output to Emulate\'94 if you want to automatically detect it, or you can set it manually.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid8864237
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905 The top drop-down box lists all the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1
|
|
{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} output devices followed by the keyboard, mouse, joystick and fake cursors. The {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
output devices show both the number and the name. Choose a device from this list. You can see which output devices have something set in them already by the * symbol.}{\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905 }{
|
|
\lang1024\langfe1024\noproof\insrsid8864237 If the chosen device doesn\rquote t have anything set yet, but other devices do, you will see \'93-v-\'94 after it, which means you can click on the drop down box to see which ones have *s.}{
|
|
\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905 If you want to use {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname
|
|
place}}MIDI{\*\xmlclose}{\*\xmlclose} then I recommend choosing \'93Default MIDI\'94. }{\lang1024\langfe1024\noproof\insrsid15555354\charrsid2696905 That way you can choose later what the default {\*\xmlopen\xmlns1{\factoidname stockticker}}
|
|
{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} device will be, without having to change your whole file. Another alternative is to choose the MIDI Mapper device. The MIDI Mapper was a complicated {\*\xmlopen\xmlns1{\factoidname
|
|
stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} mapping device in Windows 3.1, but these days it is a mere shadow of its former self. From Windows 95 onwards the MIDI Mapper
|
|
is just a single setting in Control Panel which chooses which {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} device {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1
|
|
{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} playback should go to. You can go to the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} page of Control Panel, by choosing
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} from the CP-Settings menu in GlovePIE. }{\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905 Unlike \'93Default MIDI\'94
|
|
, which can be changed by GlovePIE settings, }{\lang1024\langfe1024\noproof\insrsid15555354\charrsid2696905 the Mapper is considered }{\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905 to be }{
|
|
\lang1024\langfe1024\noproof\insrsid15555354\charrsid2696905 just another }{\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905 {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
device. If you need to output to more than one {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} device at once, choose the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1
|
|
{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} device in this box, otherwise use the default.}{\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid12010334\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905 If you chose Key}{\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905
|
|
board or Mouse then the two drop-down boxes underneath will disappear. That is because you can only emulate the combined system mouse or combined system keyboard, not multiple keyboards or multiple mice individually. Very few programs }{
|
|
\lang1024\langfe1024\noproof\insrsid8864237 (eg. MAME) }{\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905 distinguish between multiple mice or keyboards. Also GlovePIE doesn\rquote
|
|
t group the keyboard and mouse values into categories yet. There is only a single category for all the keyboard and mouse values.}{\lang1024\langfe1024\noproof\insrsid3363284\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid12010334\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid1604366 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905 {\*\bkmkstart _Toc251216629}Channel Box{\*\bkmkend _Toc251216629}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905 If you chose PPJoy Virtual Joystick, or Fake Cursor, then there will be a drop-down box underneath
|
|
, listing all 16 possible Virtual Joysticks numbered 1 to 16, or listing 17 possible fake cursors, numbered from 0 to 16. You need to install PPJoy, and configure PPJoy to add virtual joysticks before they will work in GlovePIE, but they will all be liste
|
|
d here whether they have been installed or not.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid11822458\charrsid2696905 If you chose a {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}
|
|
MIDI{\*\xmlclose}{\*\xmlclose} output device, then there will be two drop-down boxes underneath. The first drop-down box lists all the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
channels, plus the default channel. }{\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905 You should choose \'93Default Channel\'94 so you
|
|
can change it later without changing your entire file, unless you need to output on multiple channels at once. }{\lang1024\langfe1024\noproof\insrsid1604366\charrsid2696905
|
|
There are 16 channels, but if your device uses General Midi then Channel 10 will always be percussion. But all the other channels have their own individual settings, such as instrument}{\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905
|
|
and volume, and each channel can play multiple notes at once (of the same instrument).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16392086 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905 {\*\bkmkstart _Toc251216630}Category Box{\*\bkmkend _Toc251216630}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16392086 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16392086 {\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905 The category box only appears for {\*\xmlopen\xmlns1{\factoidname stockticker}}
|
|
{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}. Everything else just uses a single category, because I was lazy. }{\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905 So skip to the next section if you don\rquote
|
|
t care about {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}. }{\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905 But because {\*\xmlopen\xmlns1{\factoidname stockticker}}
|
|
{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} has so many things you can set, I have grouped them into categories. There is obviously no default category, because that makes no sense.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16392086 {\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16392086 {\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905 You need to choose a category. The first category y
|
|
ou should choose should probably be \'93Other Controls\'94}{\lang1024\langfe1024\noproof\insrsid6360730\charrsid2696905 because it allows you to change general settings, like which device is the default, and which channel is the default.}{
|
|
\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16392086 {\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6360730\charrsid2696905 The categories are:
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid6360730 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid6360730\charrsid2696905 14-bit Controls 0..31
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6360730 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905
|
|
These set main parameters such as volume. They apply separately to each channel. }{\lang1024\langfe1024\noproof\insrsid6360730\charrsid2696905 These are the combined Coarse and Fine controls for the first 32 {\*\xmlopen\xmlns1{\factoidname stockticker}}
|
|
{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} controls. The controls in this category will set both the coarse and fine settings at once, giving you 14-bits of precision (16 thousand possible l
|
|
evels). This is the recommended way to set these controls}{\lang1024\langfe1024\noproof\insrsid12803364\charrsid2696905 , (unless your {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
system interprets the coarse and fine values as separate things)}{\lang1024\langfe1024\noproof\insrsid6360730\charrsid2696905 . Some of them have pre-defined names and functions, some of them don\rquote t. But you can set any of them that you like.}{
|
|
\lang1024\langfe1024\noproof\insrsid12803364\charrsid2696905 It will set the coarse value using cc0 to cc31 messages and it will set the fine value using cc32 to cc63 messages.}{\lang1024\langfe1024\noproof\insrsid6360730\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid12803364 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12803364\charrsid2696905 7-bit Controls 64..95
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16392086 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12803364\charrsid2696905
|
|
Other controls have no separate coarse and fine settings. These ones just have a single value for 7 bits of precision
|
|
(only 128 possible levels). This is the only way to set these controls. These are often used for pedals, buttons and things like that. They can control effects like Hold, Sustenuto, Portamento, Legato, Chorus, AttackTime, etc.}{
|
|
\lang1024\langfe1024\noproof\insrsid16392086\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid7885733 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905 7-bit Controls 96..127}{\lang1024\langfe1024\noproof\insrsid12803364\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16392086 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905 These controls don
|
|
\rquote t really do anything much. I think most of the later ones actually correspond to other {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} messages, like All Notes Off, so it doesn
|
|
\rquote t make much sense to set them. But you can set all these ones anyway if you want, just for completeness.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid7885733 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905 Coarse Controls 0..31
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16392086 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905
|
|
These controls set only the coarse half of the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
value. Since the coarse half is 128 times as significant as the fine half, sometimes it makes sense to only use the coarse half. Some devices (particularly software ones) use the coarse
|
|
and fine values separately for different things. The coarse control is set with cc0 to cc31 messages.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid7885733 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905 Fine Controls 0..31
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7885733 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905
|
|
These controls set only the fine half of the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} value. Some devices (particularly software ones) use the coarse and fine values sep
|
|
arately for different things. The coarse control is set with cc0 to cc31 messages.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid7885733 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905 Other Controls
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7885733 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905
|
|
This is where you set other important controls. }{\lang1024\langfe1024\noproof\insrsid12134953\charrsid2696905 It includes the important DeviceIn, DeviceOut, and DefaultChannel defaults. Set DeviceOut to a constant value of the {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} output device you want to use. Set DefaultChannel to a constant value of the channel you want to use.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7885733 {\lang1024\langfe1024\noproof\insrsid12134953\charrsid2696905 Of the other controls, s}{
|
|
\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905 ome apply to the channel like what instrument to use, what the overall channel pressure is, and what the Pitch Wheel
|
|
is set to. Others apply to every channel, and use RPN messages, like Master Tuning, }{\lang1024\langfe1024\noproof\insrsid12134953\charrsid2696905 and }{\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905 {\*\xmlopen\xmlns1{\factoidname
|
|
stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}{\*\xmlopen\xmlns1{\factoidname PlaceName}}Pitch{\*\xmlclose} {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname PlaceName}}Bend{\*\xmlclose}{\*\xmlclose} {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname PlaceType}}Range{\*\xmlclose}{\*\xmlclose}{\*\xmlclose}{\*\xmlclose}.}{\lang1024\langfe1024\noproof\insrsid12134953\charrsid2696905
|
|
Others use SysEx messages, like GeneralMidi, and SetupFile. You can set SetupFile to the name of a SysEx file (in quotation marks) that you want to send to the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI
|
|
{\*\xmlclose}{\*\xmlclose} device at the start of your program. This is useful for all SysEx messages GlovePIE doesn\rquote t support.}{\lang1024\langfe1024\noproof\insrsid7885733\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid12134953 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12134953\charrsid2696905 Percussion
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7885733 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12134953\charrsid2696905
|
|
These are the drum beats, symbol clashes, and other percussion sounds supported by General MIDI devices. These don\rquote t change the instrument, they just turn a specific sound on or off. They }{
|
|
\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905 all play on channel 10, no matter which channel you set them on, so it is best to set them on the default channel. You should set your {\*\xmlopen\xmlns1{\factoidname stockticker}}
|
|
{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} device to General MIDI mode before using these, by setting GeneralMidi to true in \'93Other Controls\'94.}{\lang1024\langfe1024\noproof\insrsid12134953\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7885733 {\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid2778173 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905 Notes Octaves 0..4
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2778173 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905
|
|
These are all the notes below Middle C. Octave 0 being the lowest (If you need a note deeper than C 0, use pitch bend). The octaves go from C to B. The notes are either true or false, represent
|
|
ing On and Off. Setting a note to On this way will be like you hit the key with a velocity of 64/127 (50%). Setting a note to Off this way will be like you released the key with a velocity of 50%. You can also turn notes On and Off by setting their veloci
|
|
ties using the categories below, if you want more control.}{\lang1024\langfe1024\noproof\insrsid8734553\charrsid2696905 If it is channel 10 on a General MIDI device then these play percussion rather than notes.}{
|
|
\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid2778173 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905 Notes Octaves 5..10
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2778173 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8734553\charrsid2696905
|
|
These are all the notes from}{\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905 Middle C}{\lang1024\langfe1024\noproof\insrsid8734553\charrsid2696905 (octave 5) upwards}{\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905
|
|
. Octave 10 is the highest, but it is incomplete, since {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} devices only support 128 keys (If you need notes higher than G 10, use pitch bend).
|
|
}{\lang1024\langfe1024\noproof\insrsid8734553\charrsid2696905 See above for the velocities.}{\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8734553 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8734553\charrsid2696905 Note Velocity o0..o4 and Note Velocity o5..o10
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8734553 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8734553\charrsid2696905
|
|
These are the key hit velocities for all the notes. Set the hit velocity to 0 to switch off the note (although the release velocity will always be 50% in GlovePIE). Set the hit veloc}{\lang1024\langfe1024\noproof\insrsid16663892\charrsid2696905
|
|
ity to anything else to turn on}{\lang1024\langfe1024\noproof\insrsid8734553\charrsid2696905 the note with that velocity.}{\lang1024\langfe1024\noproof\insrsid9312423\charrsid2696905
|
|
This is the better way to turn notes on and off when you need fine control over how hard they are struck.}{\lang1024\langfe1024\noproof\insrsid8734553\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid9312423 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\langnp1040\insrsid9312423\charrsid13785436 Note Pressure o0..o4 and Note Pressure o5..o10
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9312423 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9312423\charrsid2696905
|
|
These are the key aftertouch, or note pressure. It is how much force you want holding down the key after it has been triggered.}{\lang1024\langfe1024\noproof\insrsid4156345\charrsid2696905 Most devices probably don\rquote t support this.}{
|
|
\lang1024\langfe1024\noproof\insrsid2778173\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9312423 {\lang1024\langfe1024\noproof\insrsid4156345\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15083971 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7172758\charrsid2696905 {\*\bkmkstart _Toc251216631}The Item List}{\lang1024\langfe1024\noproof\insrsid4156345\charrsid2696905 {\*\bkmkend _Toc251216631}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7172758\charrsid2696905
|
|
Once you have chosen which }{\lang1024\langfe1024\noproof\insrsid934633\charrsid2696905
|
|
device, channel and category you want, there will be a list of items you can set for that category of that device. Items that have already been set to something will have an asterisk beside them.}{
|
|
\lang1024\langfe1024\noproof\insrsid7172758\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 {\lang1024\langfe1024\noproof\insrsid336356\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 {\lang1024\langfe1024\noproof\insrsid336356\charrsid2696905 When you have clicked on som
|
|
ething here, the right hand side will show what it is set to, so you can modify it, or show a blank form you can fill in. Make sure you click Apply before you choose another item in this list, or whatever changes you made will be lost.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 {\lang1024\langfe1024\noproof\insrsid336356
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4024379 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4024379\charrsid2696905 {\*\bkmkstart _Toc251216632}The }{\lang1024\langfe1024\noproof\insrsid4024379 Right Side}{\lang1024\langfe1024\noproof\insrsid4024379\charrsid2696905 {\*\bkmkend _Toc251216632}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4024379 The right side is for the }{
|
|
\b\lang1024\langfe1024\noproof\insrsid4024379\charrsid4024379 input}{\lang1024\langfe1024\noproof\insrsid4024379 action that you will do. This could be anything, Wii Remote gestures, buttons, keys, mouse, joystick, gamepad, etc.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 {\lang1024\langfe1024\noproof\insrsid4024379
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 {\lang1024\langfe1024\noproof\insrsid4024379 You can click on the \'93Detect Input\'94
|
|
button to automatically detect the gestures, button clicks, or whatever that you want to use. You can use any combination of things such as holding down a keyboard key and a mouse button while you shake the Wii Remote.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 {\lang1024\langfe1024\noproof\insrsid4024379
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 {\lang1024\langfe1024\noproof\insrsid4024379 Or you can choose manually from the drop-down boxes. Some things can\rquote
|
|
t be detected yet, so you need to choose those things manually.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7172758 {\lang1024\langfe1024\noproof\insrsid4024379\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid336356 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid336356\charrsid2696905 {\*\bkmkstart _Toc251216633}The Format Box{\*\bkmkend _Toc251216633}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid336356\charrsid2696905
|
|
The first thing on the right hand side is the Format box. You don\rquote t have to change it. It is purely a matter of preference. For some {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
items}{\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905 , and all non-MIDI}{\lang1024\langfe1024\noproof\insrsid336356\charrsid2696905 items, the format box will be locked to a particular format.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid336356\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid336356\charrsid2696905
|
|
The format box specifies what format you want to specify the value in. If you prefer to think of the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
value as being between 0 and 127 then choose that. If you prefer to think of the {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} value as being between 0 and 1 then choose that. Or choose
|
|
any other format. Whichever one you choose is going to be how you have to specify the value in the boxes underneath, unless you use the \'93Convert From Source Range\'94 button. Even if you choose \'93Convert From Source Range\'94
|
|
, you still need to use the format you choose in the \'93Limit Output to Range\'94 box.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905
|
|
But whatever format you specify the value in, the computer will later convert it into the correct format for {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} messages when it sends them.
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905 The default format is 0..1, which means you specify everything as
|
|
a fraction between 0 and 1. Like 0.75 for 75%.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14632155 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905 {\*\bkmkstart _Toc251216634}Limit Output To Range{\*\bkmkend _Toc251216634}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905
|
|
If you never want to set the value to the maximum or minimum possible, but just want to adjust it within a certain range, then tick this \'93Limit Output To Range\'94 check-box. When it is che
|
|
cked two more boxes appear specifying the maximum and minimum values (in whatever format you chose). So if you chose the format 0..1, but you don\rquote
|
|
t want the volume or whatever you are setting to go above 90%, check the box and put 0.9 in the maximum box. O
|
|
n the other hand, if you chose the format 0..127, then you need to put 114.3 in the box instead to stop it going over 90%. Note that decimals are allowed, and often necessary. The maximum and minimum values you choose here are what the source range will b
|
|
e converted to, if you choose \'93Convert From Source Range\'94 below.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905 You don\rquote t need to choose anything here, most of the time.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15145772 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15145772\charrsid2696905 {\*\bkmkstart _Toc251216635}Input Source}{\lang1024\langfe1024\noproof\insrsid14632155\charrsid2696905 {\*\bkmkend _Toc251216635}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15145772\charrsid2696905 In the \'93Input Source
|
|
\'94 area, you need to choose where the input is going to come from, that you are using to contr}{\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905 ol the output. Or you can choose}{\lang1024\langfe1024\noproof\insrsid15145772\charrsid2696905
|
|
a constant, or a mathematical expression}{\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905 that you want the output to be set to.}{\lang1024\langfe1024\noproof\insrsid15145772\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905 If you want to set it to a constant value, just type it into the \'93
|
|
Part of device, or numeric value, or expression\'94 box. Or choose a constant from the
|
|
drop down box. If you want to set it to a string (text) value, then you need to put it in quotation marks. For example, file names need quotation marks around them. Then you just need to click \'93Apply\'94.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid12730882 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905 Input Device
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905
|
|
On the other hand, if you want to use a device to control the output, then choose which kind of device in the first drop-down box called \'93Input Device\'94. The \'93Remote\'94 device only works on {\*\xmlopen\xmlns1{\factoidname stockticker}}
|
|
{\*\xmlopen\xmlns1{\factoidname place}}{\*\xmlopen\xmlns1{\factoidname PlaceName}}COM{\*\xmlclose} {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname PlaceType}}Port{\*\xmlclose}{\*\xmlclose}{\*\xmlclose}{\*\xmlclose}
|
|
2, and only if you enable it from the Troubleshooter menu, and only for a few remotes, like the one that comes with the Pinnacle PCTV card. The Screen and Window devices only return constant values, and aren\rquote
|
|
t much use in most cases. But the other input devices work for most occasions.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid336356 {\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905 If you don\rquote t want to use any of the devices in the list, just leave
|
|
it blank, and type what value you want to set it to in the next box.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid11217177 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11217177\charrsid2696905 Number}{\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11217177 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid11217177\charrsid2696905
|
|
Once you have selected a device, the number box appears next to it. You normally leave it blank to just use the default device, but if you want to use a specific joystick, or a spe
|
|
cific glove, or a specific mouse or keyboard, then choose the number here, starting from 1 being the first device of that kind. Sometimes there is a special 0 device for keyboards or mouses, which represents a virtual software device used for Remote Deskt
|
|
op in Windows XP Pro. {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose}
|
|
device 0 is the MIDI Mapper, which you can set in Control Panel. But normal devices are numbered starting from 1, with 1 being the first device of that type.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11217177 {\lang1024\langfe1024\noproof\insrsid11217177\charrsid2696905 Reading multiple mice and keyboards independently is currently only impl
|
|
emented on Windows XP (or possibly {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}Vista{\*\xmlclose}{\*\xmlclose}, which isn\rquote
|
|
t tested). To use all the mice combined into 1 virtual mouse, like Windows normally does, just leave the number box blank. The same applies to keyboards.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid10816170 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10816170\charrsid2696905 Part of device, or numeric value, or expression}{\lang1024\langfe1024\noproof\insrsid12730882\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid285219\charrsid2696905 I
|
|
n this box will be a list of all the different parts or values that device supports. It may be a long list, and some of them make no sense to use, so choose wisely.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid285219
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid490673 By default, only the most useful or common values will be listed. Click on the \'93More\'85\'94 but
|
|
ton to add more values to the list (in addition to showing extra boxes). Click the \'93Less\'85\'94 button to only show the most useful.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid490673\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid285219\charrsid2696905
|
|
You can also type something in the box. For example, to use a glove gesture to control something, you should select \'93Glove\'94 in the device box, and type in the five letter code in the \'93part of device\'94
|
|
box, with one letter representing each finger like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid285219\charrsid2696905
|
|
\par xlrnn
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid285219\charrsid2696905 In this case, x means don\rquote t care (about the thumb), l (that\rquote
|
|
s the letter L) means the finger is straight (the index finger in this case), r means the finger is partly bent (the middle finger here) and n means the finger is very bent. The shape of the letter corresponds to its function.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid285219\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid285219\charrsid2696905 Or if you leave the \'93device\'94
|
|
box blank, you can type in any expression that GlovePIE understands in the \'93part of device\'94 box.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid9845013\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid9845013\charrsid2696905 For midi }{\b\lang1024\langfe1024\noproof\insrsid9845013\charrsid2696905 input}{
|
|
\lang1024\langfe1024\noproof\insrsid9845013\charrsid2696905 , if you need to specify the channel, there is no box for it. So you need to add the channel to the front of this \'93part of device\'94
|
|
box. Specify the channel like this: channel4.volume (where \'93volume\'94 could be any part of the device).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid285219 {\lang1024\langfe1024\noproof\insrsid285219\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid14371540 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14371540\charrsid2696905 Convert From {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}{\*\xmlopen\xmlns1{\factoidname PlaceName}}Source{\*\xmlclose} {\*\xmlopen\xmlns1{\factoidname
|
|
stockticker}}{\*\xmlopen\xmlns1{\factoidname PlaceType}}Range}{\lang1024\langfe1024\noproof\insrsid285219\charrsid2696905 {\*\xmlclose}{\*\xmlclose}{\*\xmlclose}{\*\xmlclose}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14371540 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14371540\charrsid2696905 The \'93
|
|
Convert From Source Range\'94 box is used to convert the input device value from whatever range it uses (for example 0 to 63 for glove finger bends) into the correct values for}{\lang1024\langfe1024\noproof\insrsid3027867\charrsid2696905
|
|
your chosen forma
|
|
t and output range. This box is automatically activated for some common device parts, but you can still turn it on or off manually if you want. When it is checked, two more boxes appear for the minimum and maximum. You should specify the minimum and maxim
|
|
um for the range in these boxes, using whatever units you choose in the \'93Units\'94 box.}{\lang1024\langfe1024\noproof\insrsid14371540\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14371540 {\lang1024\langfe1024\noproof\insrsid3027867\charrsid2696905
|
|
If you want the range to be backwards, for example because the screen and glove use opposite directions for \'93y\'94, then just swap the min and max values around. So that max is smaller than min.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14371540 {\lang1024\langfe1024\noproof\insrsid3027867\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid3027867 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3027867\charrsid2696905 Units
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3027867 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid3027867\charrsid2696905
|
|
Choose the units that you are using for the source value in the \'93Units\'94 box. If there are no units for that particular value, then just leave it set to \'93Units\'94. The Units box is mostly used with the \'93Convert From Source Range\'94 ra
|
|
nge, but it can also be used by itself to specify what units the value in the \'93part of device\'94
|
|
box will use. Make sure you use appropriate units for the value you choose, for example speeds should be in meters per second or kilometres per hour rather than
|
|
in something nonsensical for a speed, like degrees. Of course you can use degrees per second for angular velocities.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3027867 {\lang1024\langfe1024\noproof\insrsid3027867\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8615196 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8615196\charrsid2696905 {\*\bkmkstart _Toc251216636}More\'85 Button}{\lang1024\langfe1024\noproof\insrsid3027867\charrsid2696905 {\*\bkmkend _Toc251216636}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8615196\charrsid2696905 The \'93More\'85\'94
|
|
button is used to show extra, more complicated, information for advanced users. It allows you to choose a function to apply to the value (like Smooth), or to do arithmetic or other operations on the value. }{\lang1024\langfe1024\noproof\insrsid490673
|
|
It also adds more values to the drop down box. }{\lang1024\langfe1024\noproof\insrsid8615196\charrsid2696905 To hide the extra options again, click \'93Less\'85\'94
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8615196 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8615196\charrsid2696905 Maths
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8615196\charrsid2696905
|
|
The Maths box (when you click \'93More\'85\'94) lets you choose what you want to do to the value. It includes standard maths, like add or subtract, and it includes comparisons for comparing a value and returning true or false, and it also includes \'93and
|
|
\'94 and \'93or\'94 for when you want to use multiple inputs. Note that in GlovePIE, \'93*\'94 means multiplied by, \'93/\'94 means divided by, \'93^\'94 means raised to the power of, \'93>=\'94 means is greater than or equal to, \'93<=\'94
|
|
means is less than or equal to, \'93!=\'94 means is not equal to, \'93xor\'94 means either a or b but not both, \'93&\'94 means only include the binary bits that are the same}{\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905 in both}{
|
|
\lang1024\langfe1024\noproof\insrsid8615196\charrsid2696905 , \'93|\'94 means include }{\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905 all binary bits that are true in either value, \'93div\'94 means the whole number part of the division,
|
|
\'93mod\'94 means the remainder of dividing the two, \'93shl\'94 means shift all the binary bits of the value left by some amount, and \'93shr\'94 means shifting all the bits of the value right by some amount.}{
|
|
\lang1024\langfe1024\noproof\insrsid8615196\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 {\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 {\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905 Note that \'93div\'94 and \'93mod\'94 don\rquote t just work on whole numbers. \'93
|
|
Div\'94 always returns a whole number result, but \'93mod\'94 doesn\rquote t, since the remainder of dividing decimal numbers will include decimals. If you have been brainwashed into thinking that \'93div\'94 and \'93mod\'94
|
|
, or the C language equivalents, only make sense for integers, think again. Actually they are extremely useful for decimals, especially with real world units.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 {\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 {\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 PIE is
|
|
unusually in the way it handles + and / of values that are both either true or false. In that case \'93+\'94 means \'93and\'94 and \'93/\'94 means \'93or\'94. That is useful for keyboard commands like Shift+A which means \'93Shift and A\'94
|
|
. But be careful because that doesn\rquote t work on some things that aren\rquote t considered true or false even if they normally return a value of 0 or 1.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid12650684 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905 Right Hand Side of Maths Expression
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905
|
|
This box sort of speaks for itself. Just type in whatever you want to add, subtract, compare it to, etc. once you have selected an operator in the \'93maths\'94 box.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 {\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 {\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905 You have to type it in manually, which shouldn\rquote
|
|
t be a problem if you are advanced enough to want to use it. Note that you can type anything here, even complex mathematical equations and other device inputs like Glove2.x}{\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 }{
|
|
\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905 . Remember strings should be in quotation marks, but nothing else should.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8615196 {\lang1024\langfe1024\noproof\insrsid12650684\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8810871 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 Function
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8810871 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905
|
|
The function box lets you choose one of the \'93temporal\'94 functions to apply to the value. It doesn\rquote t include normal maths functions yet like }{\lang1024\langfe1024\noproof\insrsid4856871\charrsid2696905 \'93}{
|
|
\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 Sin}{\lang1024\langfe1024\noproof\insrsid4856871\charrsid2696905 \'94}{\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 or }{
|
|
\lang1024\langfe1024\noproof\insrsid4856871\charrsid2696905 \'93}{\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}Cos}{
|
|
\lang1024\langfe1024\noproof\insrsid4856871\charrsid2696905 {\*\xmlclose}{\*\xmlclose}\'94}{\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 , it only includes functions that change over time. These include the }{
|
|
\lang1024\langfe1024\noproof\insrsid4856871\charrsid2696905 \'93}{\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 Smooth}{\lang1024\langfe1024\noproof\insrsid4856871\charrsid2696905 \'94}{
|
|
\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 function, which smooths out random noise or sudden bumps. They also include the \'93Pressed\'94 and \'93Released\'94
|
|
functions which only return true for a single frame when the value is first activated or finally returns to 0 or false. There are other functions like \'93Clicked\'94, \'93DoubleClicked\'94 and \'93SingleClicked\'94
|
|
which only return true when the button has been pressed and released the right number of times. And then there is the \'93HeldDown\'94 function which only returns true once it has been held down for a certain length of time.}{
|
|
\lang1024\langfe1024\noproof\insrsid4856871\charrsid2696905 Then there is the easily confused \'93KeepDown\'94 function, which actually keeps the value as true for a while even after the button itself has been released. It is good for values that
|
|
are normally only true for an instant (like Said() for microphone) but which you want to keep activating the output for longer. }{\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8810871 {\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8810871 {\lang1024\langfe1024\noproof\insrsid8810871\charrsid2696905 If you want normal maths functions instead, you need to set the \'93device\'94
|
|
box to blank and type the whole function call in the \'93DevicePart\'94 box instead.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid3220567 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3220567\charrsid2696905 {\*\bkmkstart _Toc251216637}Apply Button{\*\bkmkend _Toc251216637}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3220567 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid3220567\charrsid2696905
|
|
You need to click the Apply Button once you have made changes, or the changes will be lost when you choose a different output item to set.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3220567 {\lang1024\langfe1024\noproof\insrsid3220567\charrsid2696905 You can still edit it after you click the Apply button.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3220567 {\lang1024\langfe1024\noproof\insrsid3220567\charrsid2696905 Once you have clicked
|
|
Apply, an asterisk (*) will appear beside the name of the item to show that it is set to something.
|
|
\par If you added a new item, a line will be added to the end of your script. If you edited an existing item, that line of the script will be changed.
|
|
\par Your entire script is reprocessed by the GUI every time you click Apply, which means you can instantly tell how GlovePIE understood and interpreted your changes.
|
|
\par There is no Cancel button. If you don\rquote t want to keep your changes, just choose a different output item to set and when you come back your changes will be gone.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3220567 {\lang1024\langfe1024\noproof\insrsid203509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3220567 {\lang1024\langfe1024\noproof\insrsid203509\charrsid2696905 Don\rquote t forget, the Apply button doesn\rquote
|
|
t save your script, it just adds that line to it. You need to use the \'93File > Save\'94 menu item after you have applied if you want to save your script to disk.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid3220567 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3220567\charrsid2696905 {\*\bkmkstart _Toc251216638}Delete Button{\*\bkmkend _Toc251216638}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3220567 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid3220567\charrsid2696905
|
|
If you have started creating a new item that you don\rquote t want to Apply, or if you want to delete an existing item, use the Delete button. You can\rquote
|
|
t use it to revert your changes, it will just delete that item rather than restoring it to how it was before.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3220567 {\lang1024\langfe1024\noproof\insrsid15742361\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15742361 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15742361\charrsid2696905 {\*\bkmkstart _Toc251216639}How to use the GUI with other features{\*\bkmkend _Toc251216639}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15742361 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15742361\charrsid2696905 You can also use the
|
|
\'93Search > Find\'94 menu from the GUI. It will search for the }{\lang1024\langfe1024\noproof\insrsid203509\charrsid2696905 specified text which appears anywhere in any of the items you have set. You need to click \'93Apply\'94
|
|
first. Make sure you search in both directions. The search direction depends on when you added things, not their order in the output item list. The search is a powerful and useful way of navigating the GUI.}{
|
|
\lang1024\langfe1024\noproof\insrsid15742361\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15742361 {\lang1024\langfe1024\noproof\insrsid203509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15742361 {\lang1024\langfe1024\noproof\insrsid203509\charrsid2696905 When you change from one the GUI tab to the Script tab, the cursor will stay
|
|
on the same item. For example if you are looking at midi1.channel1.Volume in the GUI, then that line of the script will have the cursor when you switch back to the script. The same thing works the other way around. Choose a line of your script and change
|
|
to the GUI and that item will be displayed in the GUI.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15742361 {\lang1024\langfe1024\noproof\insrsid203509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15742361 {\lang1024\langfe1024\noproof\insrsid203509\charrsid2696905 You can\rquote
|
|
t cut and paste from the GUI. So if you assign a complicated expression to control the Enter key, and you later decide you want it to control the space bar instead, you have to delete it from E
|
|
nter, and create it again under Space. But an easier method is just to switch to the script editor, where you can more easily cut and paste, or change such things, and then switch back once you have fixed it. You will have the same problem if you apply a
|
|
lot of things to {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}MIDI{\*\xmlclose}{\*\xmlclose} device 1 and you want to move them all to {\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname
|
|
place}}MIDI{\*\xmlclose}{\*\xmlclose} device 2. Just use the script editor. You can even use Find and Replace from the script editor, but not from the GUI.
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid9845013 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9845013\charrsid2696905 \page {\*\bkmkstart _Toc251216640}GlovePIE OSC}{\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905 (Open Sound Control)}{\lang1024\langfe1024\noproof\insrsid203509\charrsid2696905
|
|
{\*\bkmkend _Toc251216640}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9845013
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\cf6\lang1024\langfe1024\noproof\insrsid8869651\charrsid8869651 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid8869651 OSC support seems to be broken in GlovePIE 0.40 and above. Sorry. It might be an issue with Delphi 2009 and unicode.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid8869651\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880321 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905
|
|
Open Sound Control is a simple network protocol for controlling just about anything. It doesn\rquote t need to involve sound.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880321 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880321 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905 You can use it to communicate with other comput
|
|
ers, which might be Macs, or Linux boxes, or whatever. You might also be able to use it with some other hardware.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905 GlovePIE now supports OSC input and output, but }{
|
|
\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905 unfortunately in the current implementation }{\lang1024\langfe1024\noproof\insrsid2503973\charrsid2696905 all messages received from different sources are pooled together into one, so you can
|
|
\rquote t tell where they came from. Also it can\rquote t tell the difference between dots and slashes in addresses.}{\lang1024\langfe1024\noproof\insrsid1853914\charrsid2696905 And it doesn\rquote t support bundles at all.}{
|
|
\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905 There are two ways to send OSC messages in GlovePIE. The first is with the Se
|
|
ndOsc and BroadcastOsc functions.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid3636861 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905 {\*\bkmkstart _Toc251216641}Using the SendOsc and BroadcastOsc functions{\*\bkmkend _Toc251216641}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
The BroadcastOsc function sends an OSC message to all computers on the local network. It looks like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
\par BroadcastOsc(port, OscAddress, param1, param2, param3, \'85)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905 Port is t
|
|
he port number to send it to. It can be any integer, but it is best if it is between 49,152 and 65,535. The machine receiving the OSC messages needs to be set to the same port.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905 OscAddress is a path, which begins with a / and has a bunch of nodes separated
|
|
by slashes. For example: \'93/resonators/3/frequency\'94
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
The other parameters can be anything. GlovePIE will send them as single-precision floating-point, or an integer, or true or false, or an array (for vectors), or an array of arrays (for matrices). You nee
|
|
d to convert the parameters to the correct type that the machine you are sending to is expecting.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4926635\charrsid2696905 SendOsc will send to a specific address, rather than to every computer. It looks like this:}{\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid4926635\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid4926635\charrsid2696905 SendOsc(IpAddress, port, OscAddress, param1, param2, param3, \'85)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid4926635\charrsid2696905 IpAddress is the IP address eg. \'93192.168.1.4\'94 or the internet address eg. \'93
|
|
www.google.com\'94 or \'93localhost\'94 to send to its own computer, or \'93broadcast\'94 to send to all computers on the local network
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3636861 {\lang1024\langfe1024\noproof\insrsid13706231\charrsid2696905
|
|
\par See the p5osc.PIE sample file for an example.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4926635\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid3636861 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905 {\*\bkmkstart _Toc251216642}Using the OSC objects{\*\bkmkend _Toc251216642}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid3636861\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905
|
|
You can have multiple OSC object. Each object can support input, output or both. But in the current version, all the input sources are pooled into one.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905 Using OSC }{\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905 output }{
|
|
\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905 in }{\lang1024\langfe1024\noproof\insrsid11607387\charrsid2696905 Glove}{\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905
|
|
PIE first requires setting the port and either broadcast or IP address on an OSC object like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905 Osc1.port = 54934}{\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905
|
|
\par Osc1.broadcast = true
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905 Note that the port can be anything, preferably}{
|
|
\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905 between 49,152 and 65,535. But it needs to match whatever the receiver is expecting.}{\lang1024\langfe1024\noproof\insrsid11607387\charrsid2696905 }{
|
|
\lang1024\langfe1024\noproof\insrsid3540885\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905 When broadcast is true, the OSC messages will
|
|
be sent to all computers on the local network, but not the rest of the internet. When broadcast is false, you need to set the IP address of the computer you want to send to, like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905
|
|
\par Osc1.IP = \'93192.168.1.4\'94
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905 After you have set either the IP address, or
|
|
broadcast to true, then you can set any values you like, like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905
|
|
\par Osc}{\lang1024\langfe1024\noproof\insrsid11607387\charrsid2696905 1.hello.foo.glove.x = p5.x}{\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905
|
|
That will tell all the receiving computers that the OSC address /hello/foo/glove/x is being set to a single-precision floating point number, equal to whatever the horizontal p}{\lang1024\langfe1024\noproof\insrsid11607387\charrsid2696905
|
|
osition of the P5 glove is}{\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905
|
|
Basically, each device that listens to OSC messages has a kind of tree structure of values that can be set. Each element on the tree has an address, starting with a / }{\lang1024\langfe1024\noproof\insrsid11607387\charrsid2696905
|
|
and with slashes separating each folder, or node on the tree. GlovePIE uses dots instead of slashes, to make it more consistent with the way GlovePIE works, and you can just assign to the address like a normal variable.}{
|
|
\lang1024\langfe1024\noproof\insrsid96524\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid11607387\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid11607387\charrsid2696905 GlovePIE can send Single-precision floating point numbers (that\rquote s numbers
|
|
with decimal points), or it can send 32-bit integers (that\rquote s whole numbers), or it can send True or False values, or it can send strings of text. But it can only send one value at a time.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid11607387\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid7026797\charrsid2696905 For example, we could make something like this}{\lang1024\langfe1024\noproof\insrsid622247\charrsid2696905 to send glove data via osc}{
|
|
\lang1024\langfe1024\noproof\insrsid7026797\charrsid2696905 :
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7026797 {\lang1024\langfe1024\noproof\insrsid7026797\charrsid2696905 Osc1.port = 54934
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7026797 {\lang1024\langfe1024\noproof\insrsid7026797\charrsid2696905 Osc1.broadcast = true
|
|
\par Osc1.glove.finger.index = p5.index
|
|
\par Osc1.glove.finger.middle = p5.middle
|
|
\par Osc1.glove.finger.ring = p5.ring
|
|
\par Osc1.glove.finger.pinky = p5.pinky
|
|
\par Osc1.glove.finger.thumb = p5.thumb
|
|
\par Osc1.glove.pos.x = p5.x
|
|
\par }{\lang1024\langfe1024\noproof\langnp1036\insrsid3880321\charrsid9594416 Osc1.glove.pos.y = p5.y
|
|
\par Osc1.glove.pos.z = p5.z
|
|
\par }{\lang1024\langfe1024\noproof\langnp1040\insrsid3880321\charrsid9594416 Osc1.glove.button.A = p5.A
|
|
\par Osc1.glove.button.B = p5.B
|
|
\par Osc1.glove.button.C = p5.C
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905 // etc.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7026797 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905 Note that the buttons will be either true or false. If the receiving program can
|
|
\rquote t handle true or false values, use the int( ) function to convert them to integers like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880321 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880321 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905 Osc1.glove.button.A = int(p5.A)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7026797 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7026797 {\lang1024\langfe1024\noproof\insrsid3880321\charrsid2696905
|
|
You would then have to set up the receiving program or device to listen to port 54934 and understand those addresses, which would become like this: /glove/finger/index
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid7026797\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid2503973 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2503973\charrsid2696905 {\*\bkmkstart _Toc251216643}Receiving OSC Messages}{\lang1024\langfe1024\noproof\insrsid7026797\charrsid2696905 {\*\bkmkend _Toc251216643}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2503973\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid2503973\charrsid2696905
|
|
You can receive OSC messages by setting ListenPort to the port you want to listen to, and }{\lang1024\langfe1024\noproof\insrsid14822985\charrsid2696905 setting }{\lang1024\langfe1024\noproof\insrsid2503973\charrsid2696905 Listening to true}{
|
|
\lang1024\langfe1024\noproof\insrsid14822985\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid2503973\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid14822985\charrsid2696905
|
|
\par Osc2.ListenPort = 54934
|
|
\par Osc2.Listening = true
|
|
\par
|
|
\par then you can read any OSC values like this:
|
|
\par
|
|
\par var.x = Osc2.glove.pos.x
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8204422\charrsid2696905 You don\rquote t have to use separate OSC objects for receiving and sending, but you can if you want.}{\lang1024\langfe1024\noproof\insrsid14822985\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8204422\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9845013 {\lang1024\langfe1024\noproof\insrsid622247\charrsid2696905
|
|
Beware: OSC has security holes. If you set Listening to true then GlovePIE will accept osc messages from any source. If an internet attacker knows your PIE script is running and what format it uses, they could send OSC messages to you. That isn\rquote
|
|
t a major problem, and is extremely unlikely, so I wouldn\rquote t worry about it.}{\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid5860762\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid15561222 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5860762\charrsid2696905 {\*\bkmkstart _Toc251216644}3D Visualisation}{\lang1024\langfe1024\noproof\insrsid1120687\charrsid2696905 {\*\bkmkend _Toc251216644}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1120687\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid1120687\charrsid2696905 GlovePIE now supports very simple 3D visualisation. The visualisations wi
|
|
ll replace the script area when the script that uses them is running.}{\lang1024\langfe1024\noproof\insrsid490673 For best results, you will need 3D models in the .x format. GlovePIE 0.40 has fixed many visualisation bugs.}{
|
|
\lang1024\langfe1024\noproof\insrsid1120687\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid1120687\charrsid2696905
|
|
\par Use \'93Obj\'94 followed by a number to represent a 3D object:
|
|
\par
|
|
\par Obj1.}{\lang1024\langfe1024\noproof\insrsid10566292\charrsid2696905 x = Wiimote.x
|
|
\par }{\lang1024\langfe1024\noproof\insrsid1120687\charrsid2696905 Obj}{\lang1024\langfe1024\noproof\insrsid10566292\charrsid2696905 1.y = Wiimote.y}{\lang1024\langfe1024\noproof\insrsid1120687\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10566292\charrsid2696905 Obj1.z = Wiimote.z
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905
|
|
\par The position and size is in metres by default, although you can use whatever units you want.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905 Obj1.Size = [0.05, 0.04, 0.10]
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905
|
|
\par You can also set it\rquote s angles (in degrees by default):
|
|
\par
|
|
\par Obj1.pitch = Wiimote.Pitch
|
|
\par Obj1.roll = Wiimote.Roll
|
|
\par Obj1.yaw = 0
|
|
\par
|
|
\par And you can set its shape:
|
|
\par
|
|
\par Obj1.model = \'93box\'94
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905 You can set the model to the name of a \'93.x\'94
|
|
file, which is a DirectX 3D model. Note that using .x files can mess with the colours of other objects in the scene, I don\rquote t know why.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905
|
|
\par You can set the colours of objects:
|
|
\par
|
|
\par Obj1.colour = [100%, 50%, 30%]
|
|
\par
|
|
\par You can also set it as an integer 0xRRGGBB:
|
|
\par
|
|
\par Obj1.colour = FF804C
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid155358 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905 {\*\bkmkstart _Toc251216645}Camera Position{\*\bkmkend _Toc251216645}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905 You can also set the camera}{
|
|
\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905 position and angle with the following fields:}{\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par Cam.Yaw, Pitch, Roll, x, y, z, pos (a vector), RotMat (a rotation matrix)
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905 Eg.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905 Cam.yaw = vr920.yaw
|
|
\par Cam.pitch = vr920.pitch
|
|
\par Cam.roll = -vr920.roll
|
|
\par Cam.z = -2 metres
|
|
\par }{\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
You can also read the Cam.WalkFwdDir, Cam.WalkBackDir, cam.WalkLeftDir, cam.WalkRightDir, cam.WalkUpDir, and cam.WalkDownDir vectors.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par Those vectors are used for adding to the camera position based on user input.
|
|
\par
|
|
\par Eg.
|
|
\par
|
|
\par If W then cam.pos += Cam.WalkFwdDir * 8 kph
|
|
\par If A then cam.pos += Cam.WalkLeftDir * 8 kph
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4352271\charrsid2696905 Etc.}{\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid155358 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905 {\*\bkmkstart _Toc251216646}Background colour{\*\bkmkend _Toc251216646}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905 Set the background colour to either [r, g, b] or 0xRRGGBB
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12938053\charrsid2696905 Cam.BgColour = [10%, 30%, 100%]}{\lang1024\langfe1024\noproof\insrsid12397645\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4009840 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4009840\charrsid2696905 {\*\bkmkstart _Toc251216647}Stereoscopic 3D{\*\bkmkend _Toc251216647}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4009840
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid490673
|
|
Stereoscopic 3D support has been removed in protest against MTBS3D.com (the Stereoscopic gaming organisation) banning me.}{\lang1024\langfe1024\noproof\insrsid490673\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid12938053
|
|
\par }{\lang1024\langfe1024\noproof\insrsid490673 So Cam.Stereo, Cam.ScreenDepth, and Cam.EyeSeparation no longer work.}{\lang1024\langfe1024\noproof\insrsid4009840\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid155358 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905 {\*\bkmkstart _Toc251216648}Camera Lens{\*\bkmkend _Toc251216648}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905 You can change the camera lens by setting its FOV:
|
|
\par
|
|
\par Eg.
|
|
\par
|
|
\par Cam.vFOV = 60 degrees
|
|
\par
|
|
\par That sets the vertical field of view.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905 \line
|
|
You can also set the NearClip and FarClip distances. Only objects between these two distances will be drawn. Setting NearClip too small makes the distant objects intersect when they shouldn\rquote t.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1120687 {\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par Cam.NearClip = 20cm
|
|
\par Cam.FarClip = 100 metres
|
|
\par
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid15561222 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid155358\charrsid2696905
|
|
\par }\pard \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid5860762\charrsid2696905 \page
|
|
\par }\pard \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905 {\*\bkmkstart _Toc251216649}Mouse}{
|
|
\lang1024\langfe1024\noproof\insrsid622247\charrsid2696905 {\*\bkmkend _Toc251216649}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905
|
|
A computer can have several mice, track-pads, track-balls and other such devices attached. But it only has one real mouse cursor. Also most games only see a single mouse, called the \'93system mouse\'94
|
|
. The system mouse is an imaginary combination of all the hardware mice and track-pads put together. Moving }{\b\lang1024\langfe1024\noproof\insrsid15561222\charrsid490673 any}{\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905
|
|
mouse to the left will move the \'93system mouse\'94 and the on-screen mouse p}{\lang1024\langfe1024\noproof\insrsid490673 ointer to the left. Pressing }{\b\lang1024\langfe1024\noproof\insrsid490673\charrsid490673 any}{
|
|
\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905 mouse\rquote s left button will be seen as clicking the left button on the \'93system mouse\'94.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905 The physical movement of each mouse on the desk is measured in units called \'93
|
|
mickeys\'94. The size of this unit depends on the mouse. It is often listed on the box as Dots Per Inch, or DPI. \'93Dots\'94 here refers to \'93mickeys\'94. My Microsoft wireless optical mouse has 400 DPI, meaning one }{
|
|
\lang1024\langfe1024\noproof\insrsid5181768\charrsid2696905 mickey is 1/400 inches, or less then a tenth of a millimetre. There is no way of knowing the exact physical po
|
|
sition of the mouse, but you can only tell how far it has moved from its starting position.}{\lang1024\langfe1024\noproof\insrsid15561222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid5181768\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid5181768\charrsid2696905
|
|
The location of the mouse pointer on the screen is measured in pixels. Windows uses a complicated algorithm called \'93mouse ballistics\'94 to determine how far to move
|
|
the cursor based on the physical movement of the mouse. It varies for different versions of Windows and for different control panel settings, and for different monitor sizes. Many people have multiple monitors attached to their computer, and the mouse poi
|
|
n
|
|
ter can move from one to the other. If the mouse is on a screen to the left of the primary monitor then it will have a negative pixel coordinate for its x position. If the mouse is on a screen to the right of the primary monitor it will have a pixel coord
|
|
inate greater than the horizontal resolution of the screen.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid5181768\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid5181768\charrsid2696905 Some games use the mouse pointer\rquote
|
|
s position on the screen. But other games, especially First Per}{\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905 son Shooters like DooM, don\rquote t use a mouse pointer, and instead just read the physical movement of th
|
|
e mouse in Mickeys. Just because a game has a mouse pointer, doesn\rquote
|
|
t mean it uses the normal Windows one. Sometimes it just reads the physical mouse movements and draws its own pointer in its own private location that it is impossible for GlovePIE to know about.}{
|
|
\lang1024\langfe1024\noproof\insrsid5181768\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13395556 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905 {\*\bkmkstart _Toc251216650}Mouse.DirectInputX and Mouse.DirectInputY{\*\bkmkend _Toc251216650}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
In GlovePIE, you can read and set the physical movement of the mouse, in mickeys, by using the mouse.DirectInputX and mouse.DirectInputY values. }{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
It is called DirectInput because games use Microsoft\rquote s DirectInput to read these values directly from the mouse hardware.}{\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
If you have multiple mice, and you have Windows XP, you can read the positions of individual mice with mouse1.DirectInputX, mouse2.DirectInputX, etc. Otherwise you can just use mouse.DirectInpu
|
|
tX (without any number) to get the combined location of all the mice}{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 representing the}{\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 \'93System mouse\'94}{
|
|
\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 . You can\rquote t set the position of individual mice (since most games can\rquote t read individual mice), so you always have to set mouse.DirectInputX without a number before the dot.}{
|
|
\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905 Note that laptops usually have multiple mice, since the track-pad counts as a mouse.}{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
Mouse.DirectInputX is the left/right position, with negative values to the left and positive values to the right. Mouse.DirectInputY is the forwards/backwards position, with negative values meaning forwards and pos}{
|
|
\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905 itive values meaning backwards.}{\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905 Where-ever the mouse was when you pressed the }{
|
|
\b\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905 Run}{\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905 button will be considered the point (0, 0) where both mouse.DirectInputX and mou}{
|
|
\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905 se.DirectInputY are equal to 0.}{\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905
|
|
If you then move the mouse 1 inch to the right, the mouse.DirectInputX value will go up to 400, or whatever DPI your mouse is.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905
|
|
You can read these values, to find out where the mouse is, or you can set them, to trick games into thinking that the mouse has been moved to a new physical location.}{\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid13395556\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905
|
|
Because PIE supports different units, you can also read the value in normal units of distance, like centimetres or inches.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15561222 {\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905
|
|
\par For example:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905 midi.BassDrum1 = mouse.DirectInputX < -0.5 inches
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905 midi.CrashCymbal1 = m}{\lang1024\langfe1024\noproof\insrsid2106830\charrsid2696905
|
|
ouse.DirectInputX > 0.5 inches
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905 debug = mouse.DirectInputX in inches
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905
|
|
This will play a drum when you move the mouse half an inch to the left of its starting point, and play a cymbal when you move the mouse half an inch to the right of its starting point. It will
|
|
also display the physical location of the mouse in the debug box. Note that people are used to moving the mouse tiny amounts, so it feels weird moving the mouse large distances. But if you want to use the mouse as a physical tracking device like this you
|
|
can.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905
|
|
Note that if your mouse is not the default 400 DPI, then you need to set the value Pie.MouseDPI to whatever your mouse\rquote s DPI is. For example, for my mum\rquote s new mouse:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905
|
|
\par Pie.MouseDPI = 800
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4356586 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905 midi.BassDrum1 = mouse.DirectInputX < -0.5 inches
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4356586 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905 midi.CrashCymbal1 = mouse.DirectInputX > 0.5 inches
|
|
\par debug = mouse.DirectInputX in inches
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905 You can also check with a ruler to make sure you got it right.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 You can also set the values to control the system mouse in }{
|
|
\b\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 any}{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 game or application. It doesn\rquote t matter whether the gam
|
|
e uses the mouse cursor or reads the mouse directly. For example if you want to control the mouse with a joystick, like this:}{\lang1024\langfe1024\noproof\insrsid4356586\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2106830 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 mouse.DirectInputX = mouse.DirectInputX + 100*}{
|
|
\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 deadzone(}{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 joystick.x}{\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 )}{
|
|
\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 mouse.DirectInputY = mouse.DirectInputY + 100*}{
|
|
\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 deadzone(}{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 joystick.y}{\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 )}{
|
|
\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid9306648 Every frame (6}{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
0 times per second) it will add or subtract a certain amount based on the position of the joystick. }{\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 The deadzone function stops it from drifting if}{
|
|
\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 your joystick is not ca}{\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 librated correctly}{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid1009632 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\cf6\lang1024\langfe1024\noproof\insrsid7800154\charrsid7800154 {\*\bkmkstart _Toc251216651}{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid7800154 }{
|
|
\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 FakeMouse.DirectInputX and RealMouse.DirectInputX{\*\bkmkend _Toc251216651}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 DirectInputX, DirectInputY, DirectInputZ, and DirectInputH now have 3 kinds:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905
|
|
\par Mouse.DirectInputX
|
|
\par FakeMouse.DirectInputX
|
|
\par RealMouse.DirectInputX
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905
|
|
When you read mouse.DirectInputX it is a total of all the fake mouse motions plus all the real mou
|
|
se motions. When you read RealMouse.DirectInputX it is the total of all the real mouse motions, without any of the fake ones. FakeMouse.DirectInputX is the total fake mouse motions, and doesn't include the real ones.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905 You can also set Mouse.DirectInputX or FakeMouse.DirectInputX. For example:
|
|
\par
|
|
\par Mouse.DirectInputX = MapRange(Wiimote.Roll,-90,90,-800,800)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905
|
|
The above will set the mouse to a position based on the Wiimote's roll. You will not be able to move it by moving, the real mouse.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905
|
|
\par FakeMouse.DirectInputX = MapRange(Wiimote.Roll,-90,90,-800,800)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905
|
|
The above will move the mouse relative to the real mouse position. The real mouse can also control it.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid1009632\charrsid2696905
|
|
But if you use += or add to the DirectInputX value each time instead of setting it to an absolute value, then it makes no difference which one you use.}{\lang1024\langfe1024\noproof\insrsid1009632
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1009632 {\lang1024\langfe1024\noproof\insrsid7800154
|
|
\par }{\cf6\lang1024\langfe1024\noproof\insrsid7800154\charrsid7800154 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid7800154 FakeMouse.DirectInputY is now fixed and working, as of GlovePIE 0.42.
|
|
\par }{\cf6\lang1024\langfe1024\noproof\insrsid7800154\charrsid7800154 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid7800154 FakeMouse.DirectInput2D and RealMouse.DirectInput2D are now available.}{
|
|
\lang1024\langfe1024\noproof\insrsid7800154\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid467261 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 {\*\bkmkstart _Toc251216652}Mouse.DirectInput2D{\*\bkmkend _Toc251216652}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 Because GlovePIE also supports vectors, you
|
|
may want to set and read both the DirectInput values at once. For example:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par Mouse.DirectInput2D = [200, -400]
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid7800154\charrsid7800154 DirectInput2D}{\lang1024\langfe1024\noproof\insrsid7800154 is also called }{\b\lang1024\langfe1024\noproof\insrsid7800154\charrsid7800154 DirectInputPos}{
|
|
\lang1024\langfe1024\noproof\insrsid7800154 .
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
Will set the mouse to half an inch to the left and a whole inch forwards from its starting point. Or you can use real units:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par Mouse.DirectInput2D = [0.5, -1] inches
|
|
\par
|
|
\par You can also read them both at once. eg.
|
|
\par
|
|
\par debug = mouse.DirectInput2D
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
You can read individual mice this way if you have multiple mice plugged into windows XP, by using Mouse1.DirectInput2D and Mouse2.DirectInput2D. But you can\rquote t set individual mice.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid467261 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 {\*\bkmkstart _Toc251216653}The Scroll Wheel}{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 {\*\bkmkend _Toc251216653}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 Most mice these days also have a scroll wheel. This is considered to be the mouse
|
|
\rquote s Z axis. It has no units. But it normally jumps in increments of 120 per click. Some mice have continuous movement}{\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 in their scroll wheels}{
|
|
\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905 , but }{\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 most click in jumps of 120.}{\lang1024\langfe1024\noproof\insrsid467261\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
Note that the wheel on my Microsoft mouse is extremely dodgy and often jumps in the wrong direction, and I expect many scroll wheels are like that. Some games go to a lot of trouble to compensate.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid11274612 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 Mouse.DirectInputZ
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 You can read }{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 or set }{
|
|
\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 the scroll wheel position with Mouse.DirectInputZ.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
The starting position of the scroll wheel is given the value 0. Negative means scrolled forwards. Positive means scrolled backwards. If you scroll it forwards two clicks it will have a value of -240.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par Again this works with multiple mice.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid11274612 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 Mouse.DirectInput3D
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid467261 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
You can set or read the x, y, and z (scroll wheel) positions at once with Mouse.DirectInput3D. It is measured in Mickeys, even though technically z shouldn\rquote t have units.}{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
It works with multiple mice.}{\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid11274612 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 Mouse.WheelUp}{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 and Mouse.WheelDown}{\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274612 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274612 {\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905 This will be true}{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
for an instant (well, a single frame, or a 40}{\lang1024\langfe1024\super\noproof\insrsid13173557\charrsid2696905 th}{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
of a second) when you scroll the wheel up or down. You can also set it, if you want to simulate the user scrolling the wheel up or down.}{\lang1024\langfe1024\noproof\insrsid11274612\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274612 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par It }{\b\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 does not}{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 work with multiple mice yet.
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid13173557 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 Mouse.DirectInputH
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13173557 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13173557 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
If the mouse has a horizontal scroll wheel, or a vertical scroll wheel that can tilt from side to side, then in theory you can read or set the horizonta
|
|
l scroll wheel position with Mouse.DirectInputH. I have no idea whether it works, since it is largely based on guess-work and I don\rquote t have a mouse with horizontal scroll wheels.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13173557 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13173557 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 I don\rquote
|
|
t know whether this works with multiple mice, or the system mouse, or both. If you do any experiments and find out, please let me know.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274612 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid13173557 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 Mouse.WheelLeft and Mouse.WheelRight
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274612 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274612 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
This is the horizontal equivalent of Mouse.WheelUp and Mouse.WheelDown. It is purely theoretical, and probably doesn\rquote t work.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274612 {\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid2302009 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905 Mouse.}{\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905 WheelPresent}{\lang1024\langfe1024\noproof\insrsid13173557\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 {\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905 Mouse.
|
|
WheelPresent is true if one of your mice has a scroll wheel, or false if none of them do. It doesn\rquote t work for individual mice yet. You can\rquote t set it, you can only read it.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 {\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid2302009 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905 Mouse.WheelScrollLines
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 {\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905 The mouse.WheelScrollLines value is equal to the number of l
|
|
ines of text that will be scrolled in most applications when you move the scroll wheel one click (or 120 units if it doesn\rquote t click).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 {\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid2302009 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905 {\*\bkmkstart _Toc251216654}Mouse.CursorPosX and Mouse.CursorPosY{\*\bkmkend _Toc251216654}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 {\lang1024\langfe1024\noproof\insrsid2302009\charrsid2696905 The other way of thinking about the mouse position is to use the cursor, rather tha
|
|
n the physical movement of the mouse on the desk. The Cursor position is measured in pixels. The number of pixels on the screen in each direction is called the resolution. It is usually around about 1024 horizontally and 768 vertically.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2302009 {\b\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905 Remember that many
|
|
games ignore the position of the proper cursor, so for these games you need to use the DirectInputX and DirectInputY values above instead.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
There is only one real mouse cursor, and it is shared between multiple mice. So you can\rquote t use numbers before the dot to read or set the cursor position for individual mice. If you want more than one cursor you need to use }{
|
|
\b\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905 Fake Cursors.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
mouse.CursorPosX is the horizontal coordinate of the cursor. 0 is the left edge of the primary monitor. The right edge of the primary
|
|
monitor is one less than the horizontal resolution of the screen. eg. 1023. You can tell what the resolution of the primary monitor is by reading screen.width.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
Note that if the cursor is on a different monitor from the primary monitor then mouse.CursorPos
|
|
X will be either less than 0 or greater than or equal to the width of the primary monitor. You can tell what the left edge of the left-most monitor is by reading screen.DesktopLeft. You can tell what the right edge of the right-most monitor is by reading
|
|
screen.DesktopRight. You can also read screen2.left, screen3.left, etc. to find the left edges of individual screens. The same with the right hand sides.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
mouse.CursorPosY is the vertical coordinate of the cursor. 0 is the top edge, and the bottom edge is one less than the vertical resolution. It will be outside this range for multiple monitors. Use screen.DesktopTop and screen.DesktopBottom}{
|
|
\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905 to tell the top and bottom maximum values for all monitors. }{\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905 You can also write Cursor.PosX and Cursor.PosY instead,
|
|
to set the cursor position. It works the same as Mouse.CursorPosX and Mouse.CursorPosY. Don\rquote t use a number after the word \'93cursor\'94 though, or it will set fake cursors rather than the real one.}{
|
|
\lang1024\langfe1024\noproof\insrsid5180709\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905 If you have a Plug & Play monitor, then GlovePIE can tell roug
|
|
hly what the physical size of your screen is. You can therefore set the location of the cursor in real world units. For example, to set the cursor to be 10 cm to the right of the left edge of the primary monitor, you would write this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905
|
|
\par mouse.CursorPosX = 10 cm
|
|
\par
|
|
\par You can also get the physical width of the screen like this:
|
|
\par
|
|
\par debug = screen.width in cm
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905
|
|
GlovePIE will automatically convert between pixels and real world units, so watch out! That may not be what you want.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905
|
|
\par For example:
|
|
\par mouse.CursorPosX = mouse.DirectInputX
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905
|
|
will make the cursor on the screen move the same physical distance that you moved the mouse. If you moved the mouse 1 inch, it will move the cursor 1 inch. That is fun to try, but a pain for people that are used to mice.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5180709 {\lang1024\langfe1024\noproof\insrsid15628828\charrsid2696905
|
|
\par If you don\rquote t want to convert the units, try this instead:
|
|
\par
|
|
\par mouse.CursorPosX = RemoveUnits(mouse.DirectInputX)
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 Normally you just set the cursor position using pixels, eg.
|
|
\par
|
|
\par mouse.CursorPosX = 512
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid477651 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 {\*\bkmkstart _Toc251216655}Mouse.CursorPos{\*\bkmkend _Toc251216655}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 You can read both the horizontal and vertical position at once as
|
|
a vector, using Mouse.CursorPos.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 eg.
|
|
\par
|
|
\par debug = mouse.CursorPos
|
|
\par
|
|
\par or
|
|
\par
|
|
\par mouse.CursorPos = [512, 300]
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid477651 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 {\*\bkmkstart _Toc251216656}Mouse.X and Mouse.Y{\*\bkmkend _Toc251216656}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
Sometimes it is easier to specify the mouse pointer location as a fraction of the screen size. That is good if we don\rquote t know how wide the screen is. Do that with mouse.x and mouse.y. Note that games which don\rquote
|
|
t use the cursor will still ignore these values, so for some games you need to use DirectInputX and DirectInputY instead. This also makes no sense for multiple mice individually, since they share the cursor.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
Mouse.x is the horizontal position of the cursor, between 0 and 1. 0 is the left hand side of the primary monitor, and 1 is the right hand side. Note that if the cursor is on a different monitor it will be outside that range.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 Mou
|
|
se.y is the vertical position of the cursor, between 0 and 1. 0 is the top of the primary monitor, and 1 is the bottom. Again it may be outside this range if on another monitor.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 Note that unlike the joystick, which goes from -1 to 1, the mouse only goes f
|
|
rom 0 to 1. So to control the cursor based on the joystick position you need to use something like the MapRange function. eg\'85
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid477651 {\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905
|
|
\par mouse.x = MapRange(joystick.x, }{\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 -1, 1, }{\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905 }{
|
|
\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 0, 1)
|
|
\par
|
|
\par That will convert from the joystick\rquote s range of -1, 1 to the mouse\rquote s range of 0, 1.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid9114211 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 {\*\bkmkstart _Toc251216657}Mouse.}{\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905 ScreenFraction}{\lang1024\langfe1024\noproof\insrsid477651\charrsid2696905 {\*\bkmkend _Toc251216657
|
|
}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905 Mouse.ScreenFraction sets or reads both mouse.x and mouse.y at once, as a vector.
|
|
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid9114211 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905 {\*\bkmkstart _Toc251216658}Mouse.VirtualDesktopX and Mouse.VirtualDesktopY{\*\bkmkend _Toc251216658}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
The problem with the mouse.x and mouse.y values is that you need to set them to less than 0 or greater than 1 to put the cursor on another monitor.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
If you want to set or read the position as a fraction of the entire Virtual Desktop, then you should use mouse.VirtualDesktopX and mouse.VirtualDesktopY instead.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905 Mouse.x is the horizontal position, with
|
|
0 being the left side of the left-most monitor, and 1 being the right side of the right-most monitor.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par As you can guess, Mouse.y is the vertical position.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid9114211 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905 {\*\bkmkstart _Toc251216659}Mouse.DesktopFraction{\*\bkmkend _Toc251216659}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905 Mouse.DesktopFraction is the vector equivalent for setting or reading both m
|
|
ouse.VirtualDesktopX and mouse.VirtualDesktopY at once.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid9114211 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905 {\*\bkmkstart _Toc251216660}Mouse Buttons{\*\bkmkend _Toc251216660}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
PC Mice usually have between 2 and 5 buttons. You can read or set them in GlovePIE with:
|
|
\par
|
|
\par mouse.LeftButton
|
|
\par mouse.MiddleButton
|
|
\par mouse.RightButton
|
|
\par mouse.XButton1
|
|
\par mouse.XButton2
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905 The X But
|
|
tons do various things like move backwards and forwards in a web browser, and they are only found on special mice. Most modern games will support them, so they are very useful.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 In theory some things in windows also support mouse buttons 6, 7 and 8.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 You can set or read them with these values:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905
|
|
\par mouse.button6
|
|
\par mouse.button7
|
|
\par mouse.button8
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 But current windows versions don\rquote
|
|
t seem to allow you to set them. Reading them may theoretically work though, although in practice mice with more than 5 buttons probably work a different way.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid9114211\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905
|
|
Note that if you have multiple mice connected to Windows XP, you can read the buttons individually, with mouse1.LeftButton, mouse2.LeftButton, mouse3.LeftButton, etc. Without a number it reads the combination of all the mice.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 All the m
|
|
ouse buttons can be set to either True or False. True is equivalent to 1, and false is equivalent to 0, except when you add true/false values it means \'93and\'94, and when you divide, it means \'93or\'94.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905
|
|
\par For example:
|
|
\par
|
|
\par midi.BassDrum1 = mouse.LeftButton+mouse.RightButton
|
|
\par
|
|
\par will play the drum when you have both the left and right buttons held down at once.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14120939 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 {\*\bkmkstart _Toc251216661}Mouse.DoubleClickTime{\*\bkmkend _Toc251216661}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905
|
|
Mouse.DoubleClickTime is the maximum time between the clicks in double clicks that will still be recognised as a double click. If clicks are further apart than this time, they are two single clicks. }{
|
|
\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 It is the same for all the mice connected to the computer.}{\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 Actually GlovePIE }{\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
also }{\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 uses this same value for keyboard }{\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 and other double-}{\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 clicks}{
|
|
\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 using it\rquote s DoubleClicked( ) function}{\lang1024\langfe1024\noproof\insrsid10647622\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par It is in seconds by default, but in GlovePIE you can use any units you like and it will convert them.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14120939 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 {\*\bkmkstart _Toc251216662}Mouse.IsDragging{\*\bkmkend _Toc251216662}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par Mouse.IsDragging will be true while the mouse cursor is busy dragging something, and false when it isn\rquote t.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14120939 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 {\*\bkmkstart _Toc251216663}Mouse.Count{\*\bkmkend _Toc251216663}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14120939 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14120939 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 Mouse.Count is the number of mice
|
|
connected to the computer. It only works on Windows XP, otherwise it will always return 1. This value doesn\rquote t count the extra Windows XP Pro Remote Desktop cursor, which can be accessed as Mouse0 on Windows XP Pro.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9114211 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 Mice are numbered from 1 to mouse.count.
|
|
Plus an extra mostly useless mouse0 on XP Pro.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14120939 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 {\*\bkmkstart _Toc251216664}Mouse.CursorVisible{\*\bkmkend _Toc251216664}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14120939 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14120939 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 Mouse.CursorVisible is true when the cursor is visible, and false when it isn
|
|
\rquote t. At least, that\rquote s the theory. Some programs and games can hide the cursor and this should tell you whether or not that\rquote s the case. This can\rquote t be used for individual mice. Use }{
|
|
\b\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 Fake Cursors}{\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 for them instead.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14120939 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14120939 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 {\*\bkmkstart _Toc251216665}Mouse.Cursor{\*\bkmkend _Toc251216665}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14120939 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14120939 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
Mouse.Cursor is equal to whatever cursor is currently being displayed. It can be the following values:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12156476 {\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 -2. Wii Hand
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid14120939\charrsid2696905 \hich\af0\dbch\af0\loch\f0 1.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar
|
|
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0\pararsid14120939 {\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905 Arrow
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 2.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar
|
|
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0\pararsid14120939 {\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905 Cross}{\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid14120939\charrsid2696905 \hich\af0\dbch\af0\loch\f0 3.\tab}I Beam
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 4.\tab}}{\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905 Icon}{
|
|
\lang1024\langfe1024\noproof\insrsid14120939\charrsid2696905
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 5.\tab}}{\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905 Size
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 6.\tab}Size Diagonal /
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 7.\tab}Size Vertical |
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 8.\tab}Size Diagonal \\
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 9.\tab}Size Horizontal \endash
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 10.\tab}Up arrow
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 11.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar
|
|
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0\pararsid14120939 {\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905 Hourglass
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 12.\tab}}\pard \ql \fi-360\li720\ri0\widctlpar
|
|
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0\pararsid14120939 {\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905 Symbol for no
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 13.\tab}Arrow + Hourglass (Application starting)
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 14.\tab}Arrow + ? (Help)
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 15.\tab}Size All +
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 16.\tab}Hand
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 17.\tab}Drag
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 18.\tab}Multi-Drag
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 19.\tab}Symbol for no again
|
|
\par {\listtext\pard\plain\lang1024\langfe1024\noproof\langfenp1033\insrsid5122824\charrsid2696905 \hich\af0\dbch\af0\loch\f0 20.\tab}SQL wait
|
|
\par }\pard \ql \li360\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin360\itap0\pararsid5122824 {\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905 99. None of the above
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5122824 {\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5122824 {\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905 Setting this value doesn\rquote
|
|
t really work yet, unless you keep setting it to different values like this:
|
|
\par
|
|
\par Mouse.Cursor = Random(21)
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid281599 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905 {\*\bkmkstart _Toc251216666}Mouse.}{\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905 PermanentCursor}{\lang1024\langfe1024\noproof\insrsid5122824\charrsid2696905
|
|
{\*\bkmkend _Toc251216666}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
This can be used to set the cursor which should always be displayed when the mouse is over the PIE window.
|
|
It will even stay that way after your program exits, until you restart PIE, or write a script to set it back to 0. It uses the same numbers as above.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par This isn\rquote t all that useful, but may be useful for displaying what state your script is currently in. eg.
|
|
\par
|
|
\par if joystick1.Button1 then
|
|
\par mouse.PermanentCursor = 11
|
|
\par else
|
|
\par mouse.PermanentCursor = 0
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905 end if
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid281599 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905 {\*\bkmkstart _Toc251216667}Swallowing the Mouse{\*\bkmkend _Toc251216667}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
Not as tasty as it sounds. This is actually about stopping windows from receiving real messages from the System mouse (that is from all the real mice), }{\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905 but still receive}{
|
|
\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905 those messages that are set by GlovePIE.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par This only works on Windows 2000 or above. And I don\rquote t think it works with DirectInput games.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905 It is mainly for use with fake cursors, or with multiple mice. But it can also be used
|
|
to disable the mouse for any other purpose.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
Mouse.Swallow can be set to true to disable the entire mouse, or false to not do that. This prevents the mouse from doing anything in Windows. But you can still set Mouse.LeftButton or Mouse.CursorPosX or whatever to control the mouse}{
|
|
\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905 cursor. It just won\rquote t be controlled by any of the real mice.}{\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905
|
|
\par Mouse.SwallowButtons is the same, but it only disables the buttons.
|
|
\par
|
|
\par Mouse.SwallowMovement only disables movement.
|
|
\par
|
|
\par Mouse.SwallowWheels only disables scroll-wheels.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905 An unfortunate side-effect of swallowing the mouse is that clicking on GlovePIE
|
|
\rquote s title bar by controlling the mouse with GlovePIE will temporarily make it hang until you press Alt+Tab, or wait umpteen seconds.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905 Swallowing the mouse is good for when you want
|
|
one mouse to control the real cursor, and all the other mice to only control fake cursors. The trick is the swallow the mouse, then set all the mouse values to match mouse1. Then you set the fake cursors to match mouse2.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905
|
|
\par See the MouseParty.PIE script for an example.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15930272 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905 {\*\bkmkstart _Toc251216668}Mouse.Present}{\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905 {\*\bkmkend _Toc251216668}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid281599 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905
|
|
Last, but not least, you can tell if there actually is at least one mouse plugged in by using Mouse.Present. It will be true if there is a mouse (or track-pad, or other mouse-like device), and false if there isn\rquote t.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid281599\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid8995982 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905 \page {\*\bkmkstart _Toc251216669}Fake Cursors{\*\bkmkend _Toc251216669}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905
|
|
In addition to the real mouse cursor, GlovePIE can show multiple fake cursors. These fake cursors look and behave just like the real cursor, and can do most of the same things. They are not quite perfected yet though.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905
|
|
\par Fake cursors will look funny (non-transparent) if you don\rquote t have at least Windows 2000.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905
|
|
Fake cursors are identified by a coloured number in the bottom-right hand corner. Different numbers are different colours, but it repeats eventually.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 Fake cursors could be controlled by multiple separ
|
|
ate mice, or they could be controlled by other devices, like keyboards, joysticks, VR Gloves, speech, or whatever. They can even be used when you just want to display values graphically in GlovePIE, for debugging or whatever.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 You can create fake cursors with a number between 0 and infinity. You don\rquote
|
|
t have to use them sequentially. You can show only fake cursor 3 and fake cursor 5 if you want. But using big numbers will waste memory.}{\lang1024\langfe1024\noproof\insrsid15930272\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905 See the MouseParty.PIE script for an example of using fake cursors.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 Fake cursors have much the same properties as the ones for }{\b\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 mouse}{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 .
|
|
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 Note that the special properties for fake cursors aren\rquote
|
|
t displayed in the code-completion box for cursor, the box }{\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 only }{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 displays the same properties as for }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 mouse}{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 because I was too lazy to fix it.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15930272 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 But s}{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 ome of the new properties are:
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8995982 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 {\*\bkmkstart _Toc251216670}Cursor2.visible{\*\bkmkend _Toc251216670}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 {\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 Any fake cursors that you mention are visible by default. }{
|
|
\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 You }{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 don\rquote t }{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
need to set a fake cursor to visible if you want to be able to see it. }{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 But you can set it if you want to hide it or show it again. }{
|
|
\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 Somewhere in your script write:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 Cursor2.Visible = fals}{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 e
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 If you }{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 don\rquote t }{
|
|
\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 want to see fake cursor number 2}{\lang1024\langfe1024\noproof\insrsid12156476\charrsid2696905 anymore}{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 . You don\rquote
|
|
t have to use number 2, you can use any number. But using both fake cursor 1 and a real cursor is confusing, since people think of the real cursor as being cursor 1, even though it isn\rquote t.}{
|
|
\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 You can even use fake cursor 0, which is also not the same as the real cursor.}{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 Making a cursor visible doesn\rquote t make it do anything. Fake cursors don\rquote
|
|
t respond to mouse movements. They only go where they are told to go, and click when they are told to click.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 {\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16188731 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 {\*\bkmkstart _Toc251216671}Cursor2.Roll{\*\bkmkend _Toc251216671}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
Fake cursors can rotate like on a Wii:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par Cursor1.roll = Wiimote.Roll
|
|
\par Cursor1.x = Wiimote.PointerX
|
|
\par Cursor1.y = Wiimote.PointerY
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8995982 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 Roll is measured in degrees, clockwise.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7105692 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 {\*\bkmkstart _Toc251216672}Cursor2.Colour{\*\bkmkend _Toc251216672}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 Fake
|
|
cursors can change colour:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
\par Cursor1.colour = [1, 0.5, 0] // red, green, blue
|
|
\par
|
|
\par Cursor1.colour = 0xFF8000 // the same as above
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
Setting colour will only change the coloured parts of the image. The white and black parts of the cursor will stay the same.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16188731 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 {\*\bkmkstart _Toc251216673}Cursor2.WhiteColour{\*\bkmkend _Toc251216673}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
You can also change the colour of the white that is in the image by setting Cursor1.WhiteColour. This doesn't just affect the white and grey parts of the image. It also affects the white that is mixed into other colours to make them paler
|
|
. So for example you could make the white make colours redder instead of paler.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid2046867 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 {\*\bkmkstart _Toc251216674}Cursor2.Caption{\*\bkmkend _Toc251216674}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
\par You can also set the caption. By default the caption is the fake cursor's number. But you can set it to anything you want:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
\par Cursor1.caption = "the fake is a lie"
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16188731 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 {\*\bkmkstart _Toc251216675}Cursor2.PermanentCursor = -2{\*\bkmkend _Toc251216675}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905
|
|
If you want the cursor to look like a Wii hand cursor, set Cursor1.PermanentCursor = -2
|
|
\par
|
|
\par You can also change the cursor image to a cursor loaded from a file:
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16188731 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 {\*\bkmkstart _Toc251216676}Cursor2.Image{\*\bkmkend _Toc251216676}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2046867 {\lang1024\langfe1024\noproof\insrsid2046867\charrsid2696905 Cursor1.image = "c:\\data\\mycursor.cur"
|
|
\par
|
|
\par If you use an animated cursor, it will not be animated.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7105692 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905 {\*\bkmkstart _Toc251216677}Cursor2.Shift}{\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 and Cursor2.Ctrl}{\lang1024\langfe1024\noproof\insrsid8995982\charrsid2696905
|
|
{\*\bkmkend _Toc251216677}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
Sometimes applications respond differently to Shift-clicks or Ctrl-clicks. That is when you hold down shift or control, or both, while you click.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 Most non-game applications don\rquote
|
|
t read the keyboard to check this though. Instead they rely on the information that comes with the mouse message to determine whether shift was held down or not.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
The good thing about that is that fake cursors can have their own Shift-Click and Control
|
|
-Click features without using the real shift or control keys. It also means multiple users can be regular-clicking and shift-clicking at the same time without interfering with each other.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 So to shift-click with a fake cursor you need to set Cursor2.Shift
|
|
to true before the mouse button is set. It isn\rquote t enough to hold down the real shift key.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
\par Cursor2.shift and Cursor2.ctrl can be either true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7105692 {\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 For example, to control cursor2 with a joystick you might write:
|
|
\par
|
|
\par Cursor2.Visible = true
|
|
\par Cursor2.Shift = joystick.Button4
|
|
\par Cursor2.Ctrl = joystick.Button5
|
|
\par Cursor2.LeftButton = joystick.Button1
|
|
\par Cursor2.RightButton = joystick.Button2
|
|
\par Cursor2.MiddleButton = joystick.Button3
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905 Cursor2.x = Map}{\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 Range(joystick.x, }{\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905 }{
|
|
\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 -1, 1, }{\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 0, 1)
|
|
\par Cursor2.y = MapRange(joystick.y, }{\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 -1, 1, }{\lang1024\langfe1024\noproof\insrsid9189977\charrsid2696905 }{
|
|
\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 0, 1)
|
|
\par
|
|
\par To shift click you would need to hold down button 4 while you click button 1.
|
|
\par
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid721398 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10427906\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid15600611\charrsid2696905 {\*\bkmkstart _Toc251216678}Touchpad{\*\bkmkend _Toc251216678}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15600611\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid15600611\charrsid2696905 The touchpad can be read as a mouse. But if you\rquote
|
|
re the kind of person who thinks a touchpad is just a mouse, GlovePIE isn\rquote t for you.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid15600611\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid15600611\charrsid2696905 A touchpad can measure
|
|
the absolute position of your finger, and how hard you are pushing it. It also normally comes with buttons. Mine has a LeftButton, RightButton and a DPad in the middle.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid15600611\charrsid2696905
|
|
\par GlovePIE can only read Synaptics brand touchpads. They are the most common.
|
|
\par
|
|
\par Touchpad.FingerPresent is true when your finger is touching the touchpad, and false when it is not.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid3431359\charrsid2696905
|
|
Touchpad.x is the horizontal position of your finger. It is between 0 and 1. The right hand edge will be 1. If your finger is not touching the touchpad it will be the same position as last time you touched it.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid3431359\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid3431359\charrsid2696905
|
|
Touchpad.y is the vertical position of your finger. It is between 0 and 1. It is 0 at the top, and 1 at the bottom. If your finger is not touching it, it will remember the last position.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid3431359\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid3431359\charrsid2696905 Touchpad.z and Touch
|
|
pad.w are how hard you are pushing down with your finger. It is NOT between 0 and 1. W and Z both measure almost the same thing, but they are in different units. Z is much more precise. }{\lang1024\langfe1024\noproof\insrsid9780345\charrsid2696905
|
|
Sometimes it will be slightly above zero even when you are not touching the touchpad. }{\lang1024\langfe1024\noproof\insrsid3431359\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid9780345\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid9780345\charrsid2696905 Warning! Touchpads don\rquote
|
|
t bend when you push them, your finger does! Touchpads are a solid object that measures how much ele}{\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905
|
|
ctricity your finger can store. That changes depending on how much of your finger is touching the touchpad, and how squashed your finger is. }{\lang1024\langfe1024\noproof\insrsid9780345\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905 Touchpad.LeftButton is the touchpad\rquote s left \'93mouse\'94
|
|
button. It does not include left-clicks caused by taps. Touchpad.RightButton is the touchpad\rquote s right \'93mouse\'94 button. Touchpad.MiddleButton is the touchpad\rquote s middle mouse button, which may or may not exist.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905
|
|
If your touchpad has a DPad between the left and right buttons (for scrolling) like mine, then you can use the Touchpad.DPadUp, Touchpad.DPadDown, TouchPad.DPadLeft, and Touchpad.DPadRight buttons. It is possible for DPadUp
|
|
and DPadDown to both be true if you push the whole DPad in, and the same goes for DPadLeft and DPadRight.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905 Your touchpad might also have other Up and Down buttons. Mine doesn\rquote
|
|
t. They will be touchpad.UpButton and touchpad.DownButton.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid14636774\charrsid2696905 If you want your touc
|
|
hpad to stop controlling the mouse, you need to set Touchpad.swallow = true. Then only GlovePIE, and other programs that know how to read a touchpad will read it.}{\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid14636774\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid14636774\charrsid2696905
|
|
If your touchpad can work with a stylus then you can read touchpad.StylusPresent to detect when the stylus is touching it. Mine doesn\rquote t work with a stylus.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15600611 {\lang1024\langfe1024\noproof\insrsid14636774\charrsid2696905
|
|
\par There are also some other touchpad values you can experiment with.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15951857 {\lang1024\langfe1024\noproof\insrsid16019734\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid15600611\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid14636774\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid721398 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 {\*\bkmkstart _Toc251216679}Keyboard}{\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905 {\*\bkmkend _Toc251216679}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
You can read or write to the keyboard using the keyboard object, or just by using the name of the key without anything in front of it.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 You can emulate keys that don\rquote
|
|
t actually exist on your keyboard if you want. For example the multimedia keys, or the Excel key, etc.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 Keyboard emulation will now}{
|
|
\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 trigger the auto-repeat you normally get when you hold down a key}{\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 on a real keyboard}{
|
|
\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 Although you can disable this if you want. To disable it, set:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 Keyboard.RepeatFakeKeys = False
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
Normally a keyboard will only repeat the most recent key that you pressed. GlovePIE will simulate that same behaviour by default. If you hate
|
|
that feature, and wish you could move diagonally in Notepad by holding two keys at once, you can disable it like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par Keyboard.RepeatMultipleFakeKeys = False
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
By default GlovePIE will use the same key repeat rate as your real keyboard. But you can tell GlovePIE to repeat keys at a different rate if you prefer:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par Keyboard.RepeatRate = 10 Hz
|
|
\par
|
|
\par It is measured in Hz (Hz just means times per second).
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
Like a real keyboard, keys don't start repeating until after a delay. After the delay it will start repeating. You can set the delay like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par Keyboard.RepeatDelay = 0.4 seconds }{\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
A very cool feature is that you can now swallow keys. When you swallow keys, other programs will not be able to read them. Only GlovePIE will be able to read them.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par For example:
|
|
\par
|
|
\par A = swallow(Left)
|
|
\par D = swallow(Right)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
This means that when you press the Left arrow key the game won't receive the left arrow key, but it will receive the A key. If you didn't use swallow, the game would receive both the real key (Left) and the fake key (A).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 If
|
|
you have multiple keyboards, you can only swallow the key on all keyboards, not on specific keyboards. If you swallow a key on all keyboards, it is impossible for GlovePIE to tell which keyboard it came from.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 Keyboard emulation doesn\rquote t work as well on Windows 9x, because it won\rquote
|
|
t work in DirectInput games on 9x.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
Keys can be either true or false. True when they are down and false when they are up. Some keys (like Pause) only tell you when they are pressed but not released, so the computer assumes they are released soon after.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
Unless you are using Windows 9x, the keyboard keys will be the actual physical keys, ignoring whatever keyboard layout you are using.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 Keyboard values, for example the F1 key can be set or read in various ways:
|
|
\par
|
|
\par Keyboard.F1
|
|
\par Key.F1
|
|
\par F1
|
|
\par
|
|
\par There are also special ways of writing key combinations:
|
|
\par
|
|
\par ^C
|
|
\par Ctrl+C
|
|
\par Ctrl and C
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
Also most keys have multiple names, which include most of the abbreviations you see written on the keys, as well as the full names.}{\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 So just the guess key names and you will be fine.}{
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7353286 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7353286\charrsid2696905 {\*\bkmkstart _Toc251216680}Special Keyboard Fields{\*\bkmkend _Toc251216680}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7353286 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7353286\charrsid2696905
|
|
You can read or set Keyboard.ScanCode or Keyboard.VK to get or set the scancode or the virtual key code of the key that is currently down. They will be 0 when no key is down.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7353286 {\lang1024\langfe1024\noproof\insrsid7353286\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7353286 {\lang1024\langfe1024\noproof\insrsid7353286\charrsid2696905 You can read Keyboard.Row to find out the row of
|
|
the key that is currently down. It returns -1 if no key is down, or if it has no well-defined position (like backslash).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7353286 {\lang1024\langfe1024\noproof\insrsid7353286\charrsid2696905
|
|
\par You can read or set Keyboard.AnyKey to tell if any key is currently down.
|
|
\par
|
|
\par Set Keyboard.RawInput to force GlovePIE to use RawInput instead of DirectInput for the keyboard.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8928437 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 {\*\bkmkstart _Toc251216681}Multiple Keyboards{\*\bkmkend _Toc251216681}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905
|
|
You can read from multiple keyboard}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 s}{\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 with GlovePIE, if you have Windo}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905
|
|
ws XP. You will probably need extra {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose} keyboards. Multiple keyboards are rare, and not especially useful. You can\rquote t write to multiple keyboards, because I haven\rquote
|
|
t seen any programs other than mine that can tell which keyboard you used.}{\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 {\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905
|
|
\par Just put a number after the word keyboard, like this:
|
|
\par
|
|
\par midi.BassDrum1 = keyboard2.Enter
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 {\lang1024\langfe1024\noproof\insrsid7433640\charrsid2696905 It uses RawInput instead of DirectInput}{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 for reading multiple keyboards, so sometimes you can get better or worse results just by changing one of your \'93}{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 keyboard}{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 \'94s to a \'93}{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 keyboard1}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 \'94 so that it u}{
|
|
\lang1024\langfe1024\noproof\insrsid148429\charrsid2696905 ses RawInput}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 instead.}{\lang1024\langfe1024\noproof\insrsid148429\charrsid2696905
|
|
You only need to mention keyboard1 once in your script to force it to use RawInput. RawInput will conflict with some exclusive-mode DirectInput software.}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 {\lang1024\langfe1024\noproof\insrsid2426436\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 {\lang1024\langfe1024\noproof\insrsid2426436\charrsid2696905
|
|
You can tell how many keyboards there are with Keyboard.Count. You can tell whether a keyboard exists with Keyboard2.Exists.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8928437 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 {\*\bkmkstart _Toc251216682}Keys that can\rquote t be used{\*\bkmkend _Toc251216682}
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid16730358 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 F Lock
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 The }{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 (stupid bloody) }{\b\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 F }{\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 Lock}{
|
|
\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 key can\rquote t be read or simulated. It doesn\rquote t send information to the computer when pressed. It just changes what the other keys do.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid16730358 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 My Documents
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16730358 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 The }{
|
|
\b\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 My Documents}{\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 key doesn\rquote t seem to have a scan-code or an AppCommand, so it is not useable with GlovePIE.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid12206336 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12206336\charrsid2696905 Messenger}{\lang1024\langfe1024\noproof\insrsid727225\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12206336 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12206336\charrsid2696905 The }{
|
|
\b\lang1024\langfe1024\noproof\insrsid12206336\charrsid2696905 Messenger}{\lang1024\langfe1024\noproof\insrsid12206336\charrsid2696905 key doesn\rquote t seem to work with GlovePIE.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid16730358 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 Sleep, LogOff, Power
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 The }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 Sleep}{\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 LogOff}{
|
|
\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 and }{\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 Power}{\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 keys shouldn\rquote
|
|
t be used because they turn everything off.}{\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 Which kind of makes responding to them pointless.}{\lang1024\langfe1024\noproof\insrsid12745068\charrsid2696905 But the }{
|
|
\b\lang1024\langfe1024\noproof\insrsid12745068\charrsid2696905 Sleep}{\lang1024\langfe1024\noproof\insrsid12745068\charrsid2696905 key does actually work in GlovePIE.}{\lang1024\langfe1024\noproof\insrsid6574099\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid6574099 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid6574099\charrsid2696905 Acer Laptop special keys}{\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6574099\charrsid2696905
|
|
Most of the Acer Laptop special keys don\rquote t work, or only work sometimes. }{\lang1024\langfe1024\noproof\insrsid8016440\charrsid2696905 Including the envelope, Saturn, P, and e special keys; the media keys (FB, FF, MediaStop, PlayPause,
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}VOL{\*\xmlclose}-, {\*\xmlopen\xmlns1{\factoidname stockticker}}VOL{\*\xmlclose}+)}{\lang1024\langfe1024\noproof\insrsid3437399\charrsid2696905 ; the increase/decrease brightness keys, and the ?, Fn+
|
|
F2, Fn+F3, Fn+F4, Fn+F5, Fn+F6, and Fn+F7. On the other hand, the Mute key (Fn+F8) works, but only triggers for a short while once you release it. The other VolumeUp and VolumeDown keys work fine (Fn+Up, Fn+Down), unlike their {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}VOL{\*\xmlclose}- and {\*\xmlopen\xmlns1{\factoidname stockticker}}VOL{\*\xmlclose}+ equivalents.}{\lang1024\langfe1024\noproof\insrsid6574099\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 {\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16730358 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 {\*\bkmkstart _Toc251216683}Keys that sort of work{\*\bkmkend _Toc251216683}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8928437 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905
|
|
You can use the multimedia keys, and application keys, but they may not work as well as other keys. You can\rquote t usually tell how long they are held down.}{\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 You can\rquote
|
|
t tell how long the Pause key was held down either.}{\lang1024\langfe1024\noproof\insrsid3437399\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid721398 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 {\*\bkmkstart _Toc251216684}Unicode Characters{\*\bkmkend _Toc251216684}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 You
|
|
can also simulate Unicode characters. This allows you to make typing programs for other languages, or to type special symbols or letters.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 The possible values are the word \'93Unicode\'94 followed by }{
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 the }{\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 four hexadecimal digits for that character. }{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 See }
|
|
{\field\flddirty{\*\fldinst {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 HYPERLINK "http://www.unicode.org" }{\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b0200000017000000100000007700770077002e0075006e00690063006f00640065002e006f00720067000000e0c9ea79f9bace118c8200aa004ba90b3000000068007400740070003a002f002f007700770077002e0075006e00690063006f00640065002e006f00720067002f00
|
|
0000000000000000000000d7009900}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 www.unicode.org}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 for tables. }{\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 For example, to type the Greek letter alpha when the user presses the joystick button:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par key.Unicode03B1 = joystick.button1
|
|
\par }{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
\par This may not work on all programs or on all operating systems.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid15951857\charrsid2696905 The TypeU
|
|
nicode command also send a string of characters by the same method. Although those characters sent by TypeUnicode can currently only be Ansi characters since GlovePIE strings are still Ansi. But they will be sent via the same Unicode messages.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid721398 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 {\*\bkmkstart _Toc251216685}Number Keys{\*\bkmkend _Toc251216685}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15235155 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
The main number keys, with the symbols above them (eg. 1!, 2@, 3#, 4$ ) are named:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15235155 {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 \'93}{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 one}{
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 \'94, \'93}{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 two}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 \'94, \'93}{
|
|
\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 three}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 \'94, \'93}{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 four}{
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 \'94, etc.
|
|
\par
|
|
\par eg.
|
|
\par
|
|
\par Key.One = Joystick.Button1
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15235155 {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 The other number keys, on the numeric keypad, are named }{
|
|
\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 NumPad1}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 NumPad2}{
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 NumPad3}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 NumPad4}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 , etc.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15235155 {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
\par Most other keys are named according to what they have written on them.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid721398 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 {\*\bkmkstart _Toc251216686}Top Row}{\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905 {\*\bkmkend _Toc251216686}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 Escape}{
|
|
\b\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, F21, F22, F23, F24}{\b\lang1024\langfe1024\noproof\insrsid721398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 PrintScreen}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 SysReq}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 Pause}{
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 Break}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 ScrollLock}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 NOTE: }{\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 Pause}{
|
|
\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 should not be confused with the new Play and Pause keys for music players. This }{\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 Pause}{
|
|
\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 is the original Pause key that has been on every keyboard since the beginning. The new Pause key is called }{\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 MediaPause}{
|
|
\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 This }{\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 Pause}{
|
|
\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 key (and coincidently also the }{\b\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 MediaPause}{\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 one) doesn\rquote
|
|
t usually tell you when it is r}{\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 eleased. Which means GlovePIE}{\lang1024\langfe1024\noproof\insrsid8928437\charrsid2696905 will guess.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 SysReq}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 Break}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 used to be separate keys. Then the }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 Break}{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 key got moved onto }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 NumLock}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 . Then the }{
|
|
\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 Break}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 key got moved again onto }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 Pause}{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 . Then the }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 SysReq}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 got moved onto }{
|
|
\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 PrintScreen}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 . But the computer still regards them as separate keys. }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905
|
|
Break}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 is }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 Ctrl+Pause}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 SysReq}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 is }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 Alt+PrintScreen}{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 .
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15235155 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 {\*\bkmkstart _Toc251216687}Number Row{\*\bkmkend _Toc251216687}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
Console, One, Two, Three, Four, Five, Six, Seven, Eight, Nine, Zero, }{\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 Minus, Equals, Backslash, Backspace}{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid5463831 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 {\*\bkmkstart _Toc251216688}Qwerty Row{\*\bkmkend _Toc251216688}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 Tab, Q, W, E, R, T,
|
|
Y, U, I, O, P, LeftBracket, RightBracket, Backslash
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid5463831 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 {\*\bkmkstart _Toc251216689}Next Row{\*\bkmkend _Toc251216689}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
CapsLock, A, S, D, F, G, H, J, K, L, Semicolon, Apostrophe, Enter
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid5463831 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 {\*\bkmkstart _Toc251216690}Next Row}{\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905 {\*\bkmkend _Toc251216690}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
LeftShift, Z, X, C, V, B, N, M, Comma, Dot, Slash, RightShift}{\b\lang1024\langfe1024\noproof\insrsid15235155\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid721398 {\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid5463831 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 {\*\bkmkstart _Toc251216691}Space Bar Row{\*\bkmkend _Toc251216691}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
LeftCtrl, LeftWindows, LeftAlt, Space, RightAlt, RightWindows, AppMenu, RightCtrl
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 The }{\b\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 AppMenu}{
|
|
\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 key is the pointless key with a picture of a menu that works like the right mouse button.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 Don\rquote t assume keyboards have a }{
|
|
\b\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 RightWindows}{\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 keys. New ones only have }{\b\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 LeftWindows}{
|
|
\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 .
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid5463831 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 {\*\bkmkstart _Toc251216692}Cursor Pad{\*\bkmkend _Toc251216692}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 NOTE!!!! The }{
|
|
\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 End}{\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 key is tricky because it is also part of the GlovePIE language. Using }{
|
|
\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 Key.End}{\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 is probably least confusing.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 Home, End, PageUp, PageDown, Insert, Delete
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 Up, Down, Left, Right
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid5463831 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 {\*\bkmkstart _Toc251216693}Numeric Key Pad{\*\bkmkend _Toc251216693}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
NumLock, Divide, Multiply, NumPadMinus
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 NumPad7, NumPad8, NumPad9, NumPadPlus
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 NumPad4, NumPad5, NumPad6, NumPadPlus
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5463831 {\b\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905 NumPad1, NumPad2, NumPad3, NumPadEnter
|
|
\par NumPad0, NumPadDot, NumPadEnter
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5463831\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7226931 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 {\*\bkmkstart _Toc251216694}Stupid Bloody F-Lock Function Keys{\*\bkmkend _Toc251216694}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905
|
|
Help, Undo, Redo, New, Open, Close, Reply, F}{\b\lang1024\langfe1024\noproof\insrsid7433640\charrsid2696905 or}{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 w}{\b\lang1024\langfe1024\noproof\insrsid7433640\charrsid2696905 ar}{
|
|
\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 d, Send, Spell, Save, Print
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8411714\charrsid2696905 These all work in GlovePIE, but they don\rquote t tell you when they are released.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7226931 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 {\*\bkmkstart _Toc251216695}Multimedia Keys{\*\bkmkend _Toc251216695}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16730358 {\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 The }{\b\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 MyDocuments}{
|
|
\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 key doesn\rquote t work!!! It doesn\rquote t seem to have a scancode, or an AppCommand, so GlovePIE can\rquote t detect it or trigger }{
|
|
\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 i}{\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 t}{\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 , and doesn\rquote t even list it}{
|
|
\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 }{\b\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 Messenger}{
|
|
\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 doesn\rquote t seem to work either.}{\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\lang1024\langfe1024\noproof\insrsid16730358\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 MyPictures}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 MyMusic}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 Mute}{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid7433640\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 PlayPause}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 MediaStop}{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 VolumeUp}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 VolumeDown}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 PrevTrack}{
|
|
\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 NextTrack}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 MediaSelect}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid7433640\charrsid2696905
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905 Mail}{\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 WebHome}{
|
|
\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 Messenger}{\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 Calculator}{\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 LogOff}{
|
|
\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 Sleep}{\lang1024\langfe1024\noproof\insrsid7226931\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid7433640\charrsid2696905 Note that }{\lang1024\langfe1024\noproof\insrsid12745068\charrsid2696905 the}{\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 }{
|
|
\b\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 MyPictures}{\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 MyMusic,}{
|
|
\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 and }{\b\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 LogOff}{\lang1024\langfe1024\noproof\insrsid11149598\charrsid2696905 keys can\rquote t be read properly}{
|
|
\lang1024\langfe1024\noproof\insrsid12745068\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid7433640\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid2173800\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 The }{\b\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 Pl
|
|
ayPause, MediaStop}{\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 PrevTrack}{\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 , and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 NextTrack}{\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 keys only work for the correct duration if you have XP and your script includes multiple keyboards}{
|
|
\lang1024\langfe1024\noproof\insrsid7353286\charrsid2696905 , or enables RawInput.}{\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 For example:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14295034 {\lang1024\langfe1024\noproof\insrsid7353286\charrsid2696905 key.RawInput = true}{\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14295034 {\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 debug = PlayPause
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\lang1024\langfe1024\noproof\insrsid14295034\charrsid2696905 Will show correctly when the PlayPause key is released.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\b\lang1024\langfe1024\noproof\insrsid2173800\charrsid2696905 MyMusic}{\lang1024\langfe1024\noproof\insrsid2173800\charrsid2696905
|
|
is the same key as }{\b\lang1024\langfe1024\noproof\insrsid2173800\charrsid2696905 OfficeHome}{\lang1024\langfe1024\noproof\insrsid2173800\charrsid2696905 . Intellitype needs to be set up with the correct keyboard type to perform the correct action.
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid6574099 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid6574099\charrsid2696905 {\*\bkmkstart _Toc251216696}Acer laptop Euro and Dollar keys}{\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 {\*\bkmkend _Toc251216696}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7226931 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6574099\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid6574099\charrsid2696905 If you have an A}{\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
cer laptop, you can now use the }{\b\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 Euro}{\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 and }{\b\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 Dollar}{
|
|
\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905 keys (near the arrow keys). But they only work if you exit or disable the Launch Manager program.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par eg.
|
|
\par
|
|
\par ppjoy.digital0 = Euro
|
|
\par ppjoy.digital1 = Dollar
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
Emulating these new keys will not type a euro or dollar sign, although some games may allow them to be used as game keys. To type a dollar sign, use Unicode0024. To type a Euro sign, use Unicode20AC. This is not a new feature.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16188731 {\lang1024\langfe1024\noproof\insrsid16188731\charrsid2696905
|
|
\par Unicode0024 = Wiimote.A
|
|
\par Unicode20AC = Wiimote.B
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4869462 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 {\*\bkmkstart _Toc251216697}Other Keys{\*\bkmkend _Toc251216697}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4869462 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905
|
|
Other keys can be specified by their names or by their hexadecimal scan codes, like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4869462 {\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905
|
|
\par key.Scan5B}{\lang1024\langfe1024\noproof\insrsid7105692\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4869462 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 {\*\bkmkstart _Toc251216698}Left, Right or Don\rquote t Care{\*\bkmkend _Toc251216698}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4869462 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905
|
|
Keys with Left or Right versions, like }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 Shift}{\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 or }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 Control}{
|
|
\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 , can be specified like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4869462 {\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 LeftShift
|
|
\par RightShift
|
|
\par Shift
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4869462 {\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4869462 {\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 If you just say }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 Shift
|
|
}{\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 it will respond to either }{\b\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 Shift}{\lang1024\langfe1024\noproof\insrsid4869462\charrsid2696905 key.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8602720\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid6574099 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8602720\charrsid2696905 \page {\*\bkmkstart _Toc251216699}PPJoy{\*\bkmkend _Toc251216699}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8602720\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid8602720\charrsid2696905 If}{\lang1024\langfe1024\noproof\insrsid10843544\charrsid2696905
|
|
you want to emulate a joystick with PIE, you need to download and install PPJoy. Download it from }{\field\flddirty{\*\fldinst {\lang1024\langfe1024\noproof\insrsid10843544\charrsid2696905 HYPERLINK "http://www.geocities.com/deonvdw/PPJoy.htm" }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000002b00000068007400740070003a002f002f007700770077002e00670065006f006300690074006900650073002e0063006f006d002f00640065006f006e007600640077002f00500050004a006f0079002e00680074006d000000e0c9ea79f9bace118c8200aa
|
|
004ba90b5600000068007400740070003a002f002f007700770077002e00670065006f006300690074006900650073002e0063006f006d002f00640065006f006e007600640077002f00500050004a006f0079002e00680074006d00000000000000000000420000000800}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid10843544\charrsid2696905 http://www.geocities.com/deonvdw/PPJoy.htm}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\lang1024\langfe1024\noproof\insrsid8602720\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid10843544\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid10843544\charrsid2696905 You then need to configure PPJoy to add a virtual joystick or two. Go to \'93P
|
|
arallel Port Joysticks\'94 in Control Panel}{\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905 (or the CP-Settings menu of GlovePIE)}{\lang1024\langfe1024\noproof\insrsid10843544\charrsid2696905 , and choose }{
|
|
\lang1024\langfe1024\noproof\insrsid15553161\charrsid2696905 \'93Add\'94. Then under \'93{\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}{\*\xmlopen\xmlns1{\factoidname PlaceName}}Parallel{\*\xmlclose}
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname PlaceType}}Port{\*\xmlclose}{\*\xmlclose}{\*\xmlclose}{\*\xmlclose}\'94 choose \'93Virtual joystick\'94 and under \'93Controller Number\'94
|
|
choose a number between 1 and 16, which will be the number of the Virtual Joystick. It\rquote s best to start with 1.}{\lang1024\langfe1024\noproof\insrsid10843544\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid15553161\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid15553161\charrsid2696905
|
|
Then you need to create a custom mapping for the virtual joystick. Choose the number of Axes (I recommend 8), the number of buttons (I recommend 32), and the number of POV hats (I recommend 2). T}{
|
|
\lang1024\langfe1024\noproof\insrsid14555290\charrsid2696905 hen you need to set whi
|
|
ch axes you want the 8 available axes to be. Then click next and choose which analog axes you want to correspond to those axes. The analog values are how you set that axis in PIE, just choose any numbers here, but remember them later. I recommend using an
|
|
alog 0 to analog 7. Then click next.}{\lang1024\langfe1024\noproof\insrsid15553161\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid14555290\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid14555290\charrsid2696905
|
|
Then choose which digital values you want to correspond to the first 16 buttons. I recommend 0 to 15. }{\lang1024\langfe1024\noproof\insrsid1527529\charrsid2696905 Then click next and set the next 16. Then set the two POV hats.}{
|
|
\lang1024\langfe1024\noproof\insrsid14555290\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid1527529\charrsid2696905
|
|
\par Once you have a Virtual Joystick set up in PPJoy, you can set its analog and digital values with PIE:
|
|
\par
|
|
\par PPJoy1.analog0 = 0.5
|
|
\par PPJoy1.digital0 = true
|
|
\par
|
|
\par Analog values can be between -1 and 1.
|
|
\par Digital values can be either true or false.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13709112\charrsid2696905 If you want to set \'93PPJoy Virtual Joystick 2\'94 then set the values for PPJoy2.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13267684\charrsid2696905 \'93PPJoy\'94 by itself without a number refers to \'93PPJoy Virtual Joystick 1\'94.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13709112\charrsid2696905 If the analog corresponds}{\lang1024\langfe1024\noproof\insrsid10564066\charrsid2696905 to an axis, then 0 is centred and -1 and 1 are the two extremes. }{
|
|
\lang1024\langfe1024\noproof\insrsid14165351\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid10564066\charrsid2696905 But if the analog corresponds to a a POV hat sw}{
|
|
\lang1024\langfe1024\noproof\insrsid14165351\charrsid2696905 itch, then -1 corresponds to pushed at }{\lang1024\langfe1024\noproof\insrsid10564066\charrsid2696905 an angle of 0 degrees (forwards). -0.5 corresponds to 90 degrees (right). }{
|
|
\lang1024\langfe1024\noproof\insrsid14165351\charrsid2696905 0 corresponds to 180 degrees (backwards), 0.5 corresponds to 270 degrees (left) and 1 corresponds to centred.}{\lang1024\langfe1024\noproof\insrsid1527529\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid14165351\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid14165351\charrsid2696905 Games which let you choose which joystick you use will need to be set t
|
|
o the appropriate PPJoy Virtual Joystick in the game. }{\lang1024\langfe1024\noproof\insrsid7365065\charrsid2696905 Other games which just use the default Joystick will require you to go to the Control Panel joystick settings (Use GlovePIE\rquote
|
|
s CP-Settings menu to get there quickly)}{\lang1024\langfe1024\noproof\insrsid2846394\charrsid2696905 , and change the default joystick there}{\lang1024\langfe1024\noproof\insrsid7365065\charrsid2696905 .}{
|
|
\lang1024\langfe1024\noproof\insrsid14165351\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid2846394\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8602720 {\lang1024\langfe1024\noproof\insrsid2846394\charrsid2696905
|
|
If you want to control the game with a real joystick and just add some scripted actions }{\lang1024\langfe1024\noproof\insrsid13267684\charrsid2696905
|
|
to it, you will set the game or control panel to the virtual joystick and assign values from the real joystick to the PPJoy fields.}{\lang1024\langfe1024\noproof\insrsid2846394\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid7628774 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905 \page {\*\bkmkstart _Toc251216700}Joystick}{\lang1024\langfe1024\noproof\insrsid13267684\charrsid2696905 {\*\bkmkend _Toc251216700}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905 Joysticks, Game pads, Steering Wheels, and most other Direct Input devices that aren
|
|
\rquote t keyboards or mice, are considered to be Joysticks by GlovePIE.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
If you want to read from a joystick you can use the Joystick object, but if you want to write to it, you need to use the PPJoy object.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7628774 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905 {\*\bkmkstart _Toc251216701}Force Feedback{\*\bkmkend _Toc251216701}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
Most fields of the Joystick are read-only, but the two joystick fields which you can set are the Vibration1 and Vibration2 fields. These are the force feedback on the two axes, and can be set to any value between -1 and 1. 0 is no
|
|
effect. In this case the Joystick is acting as an output device. On a Gamepad, Vibration1 will be rumble, and Vibration2 will be buzz. On a real Joystick they will push the stick in a direction (I think).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7628774 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905 {\*\bkmkstart _Toc251216702}Buttons{\*\bkmkend _Toc251216702}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905 The Joystick buttons are numbered 1 to 128. Most joysticks won\rquote
|
|
t have that many buttons though. You can read them with:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7628774 {\lang1024\langfe1024\noproof\insrsid7628774\charrsid2696905
|
|
\par Joystick.Button1 to Joystick.Button128
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid10111954 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905 {\*\bkmkstart _Toc251216703}Axes{\*\bkmkend _Toc251216703}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10111954 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10111954 {\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905 You can tell how many axes the joystick has with the Joystick.NumberOfAxes value.
|
|
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905 Each joystick axis has}{\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905 a value between -1 and 1.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10111954 {\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905 The joystick axes are referred to as follows:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10111954 {\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905
|
|
\par x = sideways position. -1 = left, 0 = centre, 1 = right
|
|
\par y = forwards/backwards position -1 = forwards, 1 = backwards
|
|
\par z = Right Analog stick forwards/backwards -1 = forwards, 1 = backwards
|
|
\par roll = joystick twist, or right analog stick left/right -1 = left, 1 = right
|
|
\par pitch = not usually used
|
|
\par yaw = not usually used
|
|
\par slider = throttle rudder control, -1 = forwards (full speed), 1 = backwards (no speed)
|
|
\par dial = some other dial
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10111954 {\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905 vx, vy, vz, vroll, vpitch, vya
|
|
w, vslider, vdial = Extra axes which DirectInput supports, supposedly for velocity (which seems kind of redundant), but could be anything. Not normally used. They don\rquote t tell you the velocity on a normal joystick.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10111954 {\lang1024\langfe1024\noproof\insrsid10111954\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 You can also read the axes as a vector:
|
|
\par
|
|
\par Pos = [x, y, z]
|
|
\par Pos2d = [x, y]
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3437399\charrsid2696905 Pos2d2 = [roll, z] (right-analog stick)
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 Velocity = [vx, vy, vz]
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid3553509 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905 {\*\bkmkstart _Toc251216704}POV Hats{\*\bkmkend _Toc251216704}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
These are either those little hat switches you get on the top of some joysticks, or they are the D-Pad on a Game Pad with analog sticks when it is in analog mode.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
\par There can be up to 4 POV Hats per joystick, numbered Pov1, Pov2, Pov3 and Pov4.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 The number of POV hats the joystick has is given by Joystick.NumberOfPOVs.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905 POV Hats can be either centred, or they can be pushed out in some direction. You can
|
|
\rquote t tell how far in that direction they are pushed. Analog POV hats can be pushed in any angle. Digital ones only support 8 different angles.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
To tell in PIE whether Pov1 is centred, read: Joystick.Pov1Center. It will be either true or false. If it is true th
|
|
en you can read Joystick.Pov1 and it will be the angle in degrees (or you can convert it to other units if you want). If it is centred then Joystick.Pov1 will be -1.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 An}{\lang1024\langfe1024\noproof\insrsid13043907\charrsid2696905
|
|
other way of reading the POV hat is to use the values Pov1Up, Pov1Down, Pov1Left and Po
|
|
v1Right. For example if the joystick is pushed to the front-left corner then Pov1Up and Pov1Left will both be true and the others will be false. For analog POV hats it only has to be closer to that direction than to any other. }{
|
|
\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 The final way of reading th
|
|
e POV hat is to use the values Pov1x and Pov1y. They work just like the x and y values of the joystick, except the values it can return are more restrictive (either both values are 0, or one of them is on the edge).}{
|
|
\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3553509 {\lang1024\langfe1024\noproof\insrsid3553509\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16319789 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 {\*\bkmkstart _Toc251216705}Joystick Information{\*\bkmkend _Toc251216705}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16319789 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16319789 {\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 There are other joystick fields with information about the joystick. }{
|
|
\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 You can look most of them up in the DirectInput documentation. }{\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 They are:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16319789 {\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905
|
|
\par Alias: true or false
|
|
\par Attached: true or false
|
|
\par Deadband: true or false
|
|
\par DeviceType: number
|
|
\par DeviceSubType: number
|
|
\par Emulated: true or false
|
|
\par FFAttack
|
|
\par FFDriverVersion
|
|
\par FFFade
|
|
\par FFSamplePeriod
|
|
\par FirmwareRevision
|
|
\par ForceFeedback
|
|
\par ForceFeedbackGuid
|
|
\par HardwareRevision
|
|
\par HID
|
|
\par Hidden
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16319789 {\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 HidUsage}{\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 HidUsagePage
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16319789 {\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905 InstanceGuid
|
|
\par IsFirstPerson, IsFlight, IsGamePad, IsJoystick, IsLimited, IsVirtualJoystick, IsWheel
|
|
\par Name}{\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 : The name of that individual}{\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 joystick}{\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905
|
|
\par Phantom: true or false
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 PolledDataFormat}{\lang1024\langfe1024\noproof\insrsid16319789\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 PolledDevice
|
|
\par PosNegCoefficients
|
|
\par PosNegSaturation
|
|
\par PPJoyNumber
|
|
\par ProductGuid
|
|
\par ProductName: }{\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 The brand of the joystick}{\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
\par Saturation
|
|
\par StartDelay
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8519705 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 {\*\bkmkstart _Toc251216706}Multiple Joysticks{\*\bkmkend _Toc251216706}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 By default \'93Joy\'94 or \'93Joystick\'94 refers to \'93Joystick1\'94
|
|
. You can also specify a joystick by number, eg. \'93Joystick1\'94 or \'93Joystick2\'94.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
But you can also specify joysticks by type. Note that that only works if the joystick reports its type correctly, which lots of them don\rquote t. My Game Pad reports itself as a joystick for example.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
\par Joystick.GamePad1 refers to the first gamepad. Joystick.GamePad2 refers to the second gamepad.
|
|
\par
|
|
\par Joystick.Joystick1 refers to the first joystick that actually is a joystick.
|
|
\par
|
|
\par Joystick.Wheel1 refers to the first wheel.
|
|
\par
|
|
\par Joystick.Flight1 refers to the first flight stick.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
Joystick.FirstPerson1 refers to the first Virtual Reality DirectInput device (p5 gloves don\rquote t count as DirectInput devices).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
\par Joystick.PPJoy1 refers to PPJoy virtual joystick 1.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905 Joystick.NotPPJoy1
|
|
or Joystick.Real1 refers to the first joystick that is NOT a PPJoy Virtual Joystick.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8519705 {\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
\par The number after the type is optional. You then put the item after, like this:
|
|
\par
|
|
\par debug = joystick.gamepad1.}{\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 x}{\lang1024\langfe1024\noproof\insrsid8519705\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
\par or like this:
|
|
\par
|
|
\par debug = joystick.wheel.x
|
|
\par
|
|
\par This is useful if you have different types of joysticks (that report their type correctly).
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid6113937 {\*\bkmkstart _Toc152896022}
|
|
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid8860331 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8860331 {\*\bkmkstart _Toc251216707}Motion Controls for Wiimote, Nunchuk and Sixaxis{\*\bkmkend _Toc251216707}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4619909 {\lang1024\langfe1024\noproof\insrsid4619909
|
|
NOTE! You need to calibrate your Sixaxis accelerometers before it will recognise gestures! Use the CP-Settings menu to calibrate the minimum and maximum value for each accelerometer.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid4619909
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331
|
|
The Wiimote, Nunchuk, SIXAXIS, and Dual Shock 3 all have 3 accelerometers to measure acceleration and tilt. The SIXAXIS/DualShock3 also has 1 gyro to measure horizontal rotation speed. Wii Motion Plus h
|
|
as 3 gyros to measure rotation speed in any direction.}{\insrsid8860331\charrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331 So there is a common set of gestures, and other motion values, that apply to all of them. There is also an \'93}{
|
|
\b\insrsid8860331\charrsid8860331 any}{\insrsid8860331 \'94 object which supports these gestures.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331 If there is a gesture called \'93}{\b\insrsid8860331\charrsid8860331 SwingDown}{\insrsid8860331 \'94 then yo
|
|
u can use it like any of these examples:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331
|
|
\par }{\b\insrsid8860331 Enter = }{\b\insrsid8860331\charrsid8860331 Wiimote.SwingDown
|
|
\par }{\b\insrsid8860331 Enter = }{\b\insrsid8860331\charrsid8860331 Nunchuk.SwingDown
|
|
\par }{\b\insrsid8860331 Enter = }{\b\insrsid8860331\charrsid8860331 Sixaxis.SwingDown
|
|
\par }{\b\insrsid8860331 Enter = Any.Sw}{\b\insrsid8860331\charrsid8860331 ingDown
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8860331 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8860331 {\*\bkmkstart _Toc251216708}Gestures{\*\bkmkend _Toc251216708}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331 There are 3 kinds of built-in gestures that GlovePIE now supports. If you want to use gestures that aren\rquote
|
|
t supported, or you want to tweak them yourself, you need to read the theory section below instead. On the Wiimote, gestures don\rquote t need Motion Plus, but may work slightly better with it attached.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331
|
|
\par The same set of gestures can be used f}{\insrsid3558370 or the Wii Remote, Nunchuk, }{\insrsid8860331 SIXAXIS, or \'93}{\insrsid8860331\charrsid8860331 any}{\b\insrsid8860331 \'94}{\insrsid8860331 .
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8860331 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid8860331 Poses
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid8860331 These are positions and angl}{\insrsid3558370
|
|
es that you hold the Wiimote, }{\insrsid8860331 Nunchuk}{\insrsid3558370 , or SIXAXIS}{\insrsid8860331 in. These values will keep being true as long as the }{\insrsid3558370 controller}{\insrsid8860331 stay}{\insrsid3558370
|
|
s in that position. Even though}{\insrsid8860331 poses aren\rquote t keys, you can still use the Pres
|
|
sed and Released functions with poses. Pressed( ) will be true for an instant when you start the pose, and Released ( ) will be true for an instant when you leave the pose. If you want to detect a pose in the GUI, make sure you stop the pose after you do
|
|
it, or the GUI will wait forever.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\insrsid8860331\charrsid8093643 UpsideDownOnShoulder}{\insrsid8860331 : fairly self explanatory. This }{\insrsid3558370
|
|
is where you hold the controller}{\insrsid8860331 above your shoulder so it is upside down and pointing backwards. It is supposed to represent a bazooka or rocket launcher, with the }{\insrsid3558370 Wiimote }{\insrsid8860331
|
|
plug being the front of the bazooka. But you could also use this gesture to represent aiming your gun at something behind you, or charging a club/sword/staff attack. Despite its name, you can also use this pose for holding it above your HEAD to charge
|
|
an attack. But it\rquote s smart enough that it w}{\insrsid3558370 on\rquote t be triggered by the controller}{\insrsid8860331 being upside-down some other way, such as tilting sideways, or underarm aiming behind you. If you don\rquote
|
|
t have MotionPlus then you might need to lift it to your shoulder slowly to get it to register.}{\insrsid8860331\charrsid14499167
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par eg.
|
|
\par Key.Four = Pressed(Wiimote.UpsideDownOnShoulder) // switch to rocket launcher
|
|
\par Key.Three = Released(Wiimote.UpsideDownOnShoulder) // switch back to normal gun
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid10767741 LookingAtRightPalm}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
: Only use this if you are holding }{\lang1024\langfe1024\noproof\insrsid3558370 the controller}{\lang1024\langfe1024\noproof\insrsid8860331 in y
|
|
our right hand. This is where you hold your palm up a bit and turned a bit so you can read what is written on your palm, imagining that you}{\lang1024\langfe1024\noproof\insrsid3558370 r palm doesn\rquote t have a controller}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331 in it. It\rquote s supposed to represent holding a map, or a note. When you do }{\lang1024\langfe1024\noproof\insrsid3558370 this gesture, ignore the controller}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
and just look at your palm and your fingers while your fingers point upwards. Your hand doesn\rquote t have to be completely vertical, just angled up enough to read it. You can use this gesture for looking at your map, mission objectives,
|
|
stats, or whatever information screen your game has.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par eg.
|
|
\par Enter = Pressed(Wiimote.LookingAtRightPalm) // show mission objectives
|
|
\par Esc = Released(Wiimote.LookingAtRightPalm) // exit mission objectives
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid10767741 LookingAt}{\b\lang1024\langfe1024\noproof\insrsid8860331 Lef}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid10767741 tPalm}{\lang1024\langfe1024\noproof\insrsid8860331 : The sa}{\lang1024\langfe1024\noproof\insrsid3558370 me as above, but for the controller}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
in your left hand. }{\lang1024\langfe1024\noproof\insrsid3558370 Normally you would use }{\b\lang1024\langfe1024\noproof\insrsid3558370\charrsid3558370 Nunchuk.LookingAtLeftPalm}{\lang1024\langfe1024\noproof\insrsid3558370 . }{
|
|
\lang1024\langfe1024\noproof\insrsid8860331 This gives you two different information screens you can look at with an intuitive gesture.You can also use }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11485012 Wiimote.LookingAtLeftPalm}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331 if your Wiimote is in the left hand.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331 Enter = Pressed(Wiimote.LookingAtRightPalm) // show mission objectives
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331 Esc = Released(Wiimote.LookingAtRightPalm) // exit mission objectives
|
|
\par Tab = Pressed(Nunchuk.LookingAtLeftPalm) // show map
|
|
\par Esc = Released(Nunchuk.LookingAtLeftPalm) // exit map
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3558370 With a Wiimote and Nunchuk, you could}{\lang1024\langfe1024\noproof\insrsid8860331 have a big two-handed map, like this:
|
|
\par
|
|
\par Tab = pressed(Nunchuk.LookingAtLeftPalm and Wiimote.LookingAtRightPalm)
|
|
\par Esc = released(Nunchuk.LookingAtLeftPalm and Wiimote.LookingAtRightPalm)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid3558370\charrsid3558370 Sixaxis.LookingAtLeftPalm}{\lang1024\langfe1024\noproof\insrsid3558370 and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid3558370\charrsid3558370 Sixaxis.LookingAtRightPalm}{\lang1024\langfe1024\noproof\insrsid3558370 can\rquote t both be true at the same time.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid3558370
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid15563611 LookingAtWatch}{\lang1024\langfe1024\noproof\insrsid8860331 : Only use thi}{
|
|
\lang1024\langfe1024\noproof\insrsid3558370 s if you are holding the controller}{\lang1024\langfe1024\noproof\insrsid8860331 in your left hand. This represents looking at your wrist-watch. It assumes you\rquote
|
|
re wearing your watch in the western style. It\rquote s supposed to represent a PDA or similar device mounted on your wrist or forearm. It\rquote s for games like Goldeneye, or Commander Keen, where the game menu }{
|
|
\lang1024\langfe1024\noproof\insrsid3558370 is actually your watch. But}{\lang1024\langfe1024\noproof\insrsid8860331 you can use it for any game to look at an information }{\lang1024\langfe1024\noproof\insrsid3558370 screen in a more immersive way.}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par // the menu is on your watch
|
|
\par Esc = Pressed(Nunchuk.LookingAtWatch) or Released(Nunchuk.LookingAtWatch)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid12482909 LookingAtRightWatch}{\lang1024\langfe1024\noproof\insrsid8860331 : The same }{
|
|
\lang1024\langfe1024\noproof\insrsid3558370 as above, but for the controller}{\lang1024\langfe1024\noproof\insrsid8860331 in your right hand. You may have other devices mounted on your right wrist or forearm.}{
|
|
\lang1024\langfe1024\noproof\insrsid11883494 This gives you more information screens to look at intuitively.}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid11883494 Wiimote.}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid12482909 OnTable}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331 : A bit different from the others. This checks if the Wiimote is still enough to indicate that it must be lying on the table (or in very very steady hands). This could be used to pause
|
|
the game automatically when you put down the Wiimote. Don\rquote t use this if your table shakes, or if your hands don\rquote t shake.}{\lang1024\langfe1024\noproof\insrsid11883494 It doesn\rquote
|
|
t work properly on other controllers yet, just the Wiimote.}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par // pause when you put down the remote.
|
|
\par P = Pressed(Wiimote.OnTable) or Released(Wiimote.OnTable)
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8860331 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11883494 Simple }{\lang1024\langfe1024\noproof\insrsid8860331 Gestures
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
These gestures will be true for longer than an instant, but aren\rquote t static poses.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid11883494 Shake}{\lang1024\langfe1024\noproof\insrsid11883494
|
|
: Shake the controller in any direction. The most unimaginative gesture ever, makes the Wii a laughing stock among some people due to games that only use this gesture.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid11883494\charrsid11883494
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11883494 SwingHorizontal}{\lang1024\langfe1024\noproof\insrsid11883494
|
|
: Swing the controller}{\lang1024\langfe1024\noproof\insrsid8860331 horizontally. Traditionally used for a light attack.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11883494 SwingVertical}{\lang1024\langfe1024\noproof\insrsid11883494 : Swing the controller}{\lang1024\langfe1024\noproof\insrsid8860331 vertically. Traditionally used for a heavy attack.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11883494 Stabbing}{\lang1024\langfe1024\noproof\insrsid11883494 : Poke the controller}{\lang1024\langfe1024\noproof\insrsid8860331 forwards. Used for a poke or thrust attack.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11883494 DrumBeat}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
: Used for a beating the drum gesture, true when you hit the imaginary drum at the bottom of your swing.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid3308455
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid3308455 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid3308455
|
|
Two Handed Gestures
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3308455 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid3308455
|
|
These gestures are true for longer than an instant, and tend to turn on and off while repeating the gesture. They require two hands.}{\insrsid15798465 Don\rquote t forget you can script your own two-handed gestures easily enough using \'93}{
|
|
\b\insrsid15798465 and}{\insrsid15798465 \'94 and \'93}{\b\insrsid15798465\charrsid15798465 keepdown}{\insrsid15798465 \'94.}{\insrsid3308455\charrsid15798465
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3308455 {\insrsid3308455
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3308455 {\b\insrsid3308455 CrossArms}{\insrsid3308455 : Cross your arms horizontally. That means either the Wii Remote moves left while the Nunc
|
|
huk moves right, or you quickly roll the SIXAXIS upside-down.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3308455 {\insrsid3308455
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3308455 {\b\insrsid3308455 AlternateArmsUpAndDown}{\insrsid3308455 : Only works on the Wii Remote + Nunchuk, currently.}{\insrsid15798465
|
|
It means the Wii Remote moves up while the Nunchuk moves down, then vice-versa, and repeat. Or the other way around. }{\insrsid3308455\charrsid3308455
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3308455 {\insrsid3308455
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8860331 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
Waggle Gestures
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid11883494
|
|
These gestures involve holding the controller}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
normally and moving it up, down, left, or right in sequence. These gestures are only true for the instant after they are recognised (like speech recognition). These gestures are all based on MO
|
|
VING the Wiimote rather than rotating it. They assume you are not rotating the Wiimote at all. They are good for complicated spell gestures.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid12545886 CircleClockwise}{\lang1024\langfe1024\noproof\insrsid8860331 : Draw a full circle in the air, clockwise, starting from 12, 3, 6, or {\*\xmlopen\xmlns1{\factoidname stockticker}}
|
|
{\*\xmlopen\xmlns1{\factoidname time}{\xmlattr\xmlattrns0{\xmlattrname Hour}{\xmlattrvalue 9}}{\xmlattr\xmlattrns0{\xmlattrname Minute}{\xmlattrvalue 0}}}9 o\rquote clock{\*\xmlclose}{\*\xmlclose}.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid12545886 CircleAnticlockwise}{\lang1024\langfe1024\noproof\insrsid8860331 (or }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid12545886 CircleCounterClockwise}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331 ): the same but anticlockwise
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
There are also 8 different semicircles you can recognise, they use a standard naming system based on the direction that you are going. CurveUpRightDown means go up then right then down in a curve.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpRightDown, CurveDownRightUp, CurveUpLeftDown, CurveDownLeftUp,
|
|
\par CurveLeftUpRight, CurveLeftDownRight, CurveRightUpLeft, CurveRightDownLeft
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331 You can add the word }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid1066551 Stop}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331 on the end to only recognise it if they stop at the end of the gesture. Otherwise
|
|
a whole circle would also be recognised as a semicircle. It takes longer to recognise, but it allows you to tell the difference between a long gesture and a short one:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpRightDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid1066551 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownRightUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid1066551 , }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpLeftDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownLeftUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftUpRight}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftDownRight}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveRightUpLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveRightDownLeft}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 Stop}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par This naming scheme can also be used for the 8 different quarters of a circle.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpRight, CurveUpLeft, CurveDownRight, CurveDownLeft, }{\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftUp, CurveLeftDown, CurveRightUp, CurveRightDown}{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpRight}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownRight}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownLeft}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 }{\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftDown}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveRightUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
CurveRightDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 Stop
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par Or you can have a curvy W, M, 3, or E shape:
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331 CurvyM}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 (or }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpRightDownUpRightDown}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 )}{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par CurvyW}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 (or }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownRightUpDownRightUp}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 )}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 Curvy3}{\lang1024\langfe1024\noproof\insrsid8860331 (or }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveRightDownLeftRightDownLeft}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 )}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331 CurvyE}{\lang1024\langfe1024\noproof\insrsid8860331 (or }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftDownRightLeftDownRight}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 )
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpLeftDownUpLeftDown}{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownLeftUpDownLeftUp
|
|
\par CurveLeftUpRightLeftUpRight}{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveRightUpLeftRightUpLeft
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par Or a semicircle and then a flick:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid1066551 SwishAndFlick}{\lang1024\langfe1024\noproof\insrsid8860331 (or }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid1066551 CurveDownRightUpDown}{\lang1024\langfe1024\noproof\insrsid8860331 ): the Wingardium Leviosa gesture in the first Harry Potter movie, or drawing a lowercase letter u
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownLeftUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 Down}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 ,
|
|
\par CurveUpRightDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 Up}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331 }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
CurveUpLeftDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 Up}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftUpRight}{\b\lang1024\langfe1024\noproof\insrsid8860331 Left}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , CurveLeftDownRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 Left}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveRightUpLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331 Right}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , CurveRightDownLeft}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 Right,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11883494 {\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid1066551 SwishAndFlick}{\b\lang1024\langfe1024\noproof\insrsid11883494 Stop}{
|
|
\lang1024\langfe1024\noproof\insrsid11883494 (or }{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid1066551 CurveDownRightUpDown}{\b\lang1024\langfe1024\noproof\insrsid11883494 Stop}{\lang1024\langfe1024\noproof\insrsid11883494 ),
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11883494 {\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 CurveDownLeftUp}{\b\lang1024\langfe1024\noproof\insrsid11883494 DownStop}{
|
|
\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 ,
|
|
\par CurveUpRightDown}{\b\lang1024\langfe1024\noproof\insrsid11883494 UpStop}{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid11883494 }{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995
|
|
CurveUpLeftDown}{\b\lang1024\langfe1024\noproof\insrsid11883494 UpStop}{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid11883494
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 CurveLeftUpRight}{\b\lang1024\langfe1024\noproof\insrsid11883494 LeftStop}{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 , CurveLeftDownRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid11883494 Left}{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid11883494
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 CurveRightUpLeft}{\b\lang1024\langfe1024\noproof\insrsid11883494 RightStop}{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995 , CurveRightDownLeft}{
|
|
\b\lang1024\langfe1024\noproof\insrsid11883494 RightStop,}{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid11034995
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid11883494
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid11883494
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11883494 {\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid1066551 SwishAndFlick}{\b\lang1024\langfe1024\noproof\insrsid11883494 AndUp}{
|
|
\lang1024\langfe1024\noproof\insrsid11883494 (or }{\b\lang1024\langfe1024\noproof\insrsid11883494\charrsid1066551 CurveDownRightUpDown}{\b\lang1024\langfe1024\noproof\insrsid11883494 Up}{\lang1024\langfe1024\noproof\insrsid11883494
|
|
): the same as above, but going back up at the end
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownLeftUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 DownUp}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 ,
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpRightDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 UpDown}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331 }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveUpLeftDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 UpDown}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftUpRight}{\b\lang1024\langfe1024\noproof\insrsid8860331 LeftRight}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , CurveLeftDownRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 LeftRight}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveRightUpLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331 RightLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , CurveRightDownLeft}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 RightLeft,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par Or a semicircle and then a curve:
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveDownLeftUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 DownLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
CurveDownRightUpDownRight}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par CurveUpRightDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 UpRight}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331 }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
CurveUpLeftDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 UpLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveLeftUpRight}{\b\lang1024\langfe1024\noproof\insrsid8860331 LeftUp}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , CurveLeftDownRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 LeftDown}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 CurveRightUpLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331 RightUp}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995 , CurveRightDownLeft}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 RightDown,
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331 There are also straight line gestures:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUp, SwingDown, SwingLeft, SwingRight}{\lang1024\langfe1024\noproof\insrsid8860331 ,
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUpStop, SwingDownStop, SwingLeftStop, SwingRightStop}{\lang1024\langfe1024\noproof\insrsid8860331 ,
|
|
\par
|
|
\par Or a swing in one direction and then back:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUpDown, SwingDownUp, SwingLeftRight, SwingRightLeft}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 ,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUpDownStop, SwingDownUpStop, SwingLeftRightStop, SwingRightLeftStop}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 ,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par Or a swing in one direction, back, then in that direction again:
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUpDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 Up}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingDownUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 Down}
|
|
{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingLeftRight}{\b\lang1024\langfe1024\noproof\insrsid8860331 Left}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingRightLeft}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 Right}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 ,}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUpDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 UpStop,}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingDownUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 DownStop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingLeftRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 LeftStop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingRightLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331 Right}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 Stop
|
|
}{\lang1024\langfe1024\noproof\insrsid8860331 ,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331 Or a double swing:}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUpDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 UpDown}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingDownUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 DownUp}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingLeftRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 LeftRight}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingRightLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331 RightLeft}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 ,
|
|
}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUpDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 UpDownStop,}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingDownUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 DownUpStop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingLeftRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 LeftRightStop,}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingRightLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331 RightLeft}{\lang1024\langfe1024\noproof\insrsid8860331 Stop,
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 Or more:
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 SwingUpDown}{\b\lang1024\langfe1024\noproof\insrsid8860331 UpDownUp}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingDownUp}{\b\lang1024\langfe1024\noproof\insrsid8860331 DownUpDown}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingLeftRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331 LeftRightLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 , SwingRightLeft}{\b\lang1024\langfe1024\noproof\insrsid8860331 RightLeftRight}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 ,}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331 That\rquote s all the gestures that are currently preprogramed.}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid11034995
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8860331 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 {\*\bkmkstart _Toc251216709}Motion Sensing}{\lang1024\langfe1024\noproof\insrsid8860331 Theory}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 {\*\bkmkend _Toc251216709}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid11883494 The Wiimote, Nunchuk, and Sixaxis each have}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 three accelerometers which measure forces/accelerations}{\lang1024\langfe1024\noproof\insrsid8860331 (except for those caused by gravity)}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , in each of the three dimensions. Force and Acceleration are basically the same thing, since the mass is constant (F=ma). In GlovePIE they are labelled like this: X}{
|
|
\lang1024\langfe1024\noproof\insrsid11883494 is to the right (of the controller), Y is up (from the controller\rquote s}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 buttons), and Z is f}{\lang1024\langfe1024\noproof\insrsid11883494
|
|
orwards (or wherever the controller}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 is pointing). This is the left-handed Direct3D system.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid4619909 You need to calibrate your Sixaxis
|
|
accelerometers before you can use it. Use the CP-Settings menu to calibrate the minimum and maximum value for each accelerometer.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid4619909\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 If you drop a Wiimote}{\lang1024\langfe1024\noproof\insrsid11883494
|
|
, Nunchuk, or Sixaxis}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 and it is in freefall, all the forces will be zero}{\lang1024\langfe1024\noproof\insrsid8860331 (because accelerometers can\rquote t detect the force of gravity)}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 . }{\lang1024\langfe1024\noproof\insrsid11883494 BUT if you are holding the controller}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 up so that it doesn\rquote
|
|
t fall, then you are pushing it upwards with a force equal to the force of gravity, but in the upwards direction}{\lang1024\langfe1024\noproof\insrsid8860331 . The force of holding it up SHOULD be cancelled out by g}{
|
|
\lang1024\langfe1024\noproof\insrsid11883494 ravity, which is why the controller}{\lang1024\langfe1024\noproof\insrsid8860331 isn\rquote t moving, but the accelerometers can\rquote t detect gravity so it doesn\rquote t cancel out.}{
|
|
\lang1024\langfe1024\noproof\insrsid11883494 If you hold the controller}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 flat then the force holding it up will be in the +Y directi}{\lang1024\langfe1024\noproof\insrsid4619909
|
|
on, but if you point the controller}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 at the ceiling then the force holding it up will be in the +Z direction. T}{\lang1024\langfe1024\noproof\insrsid4619909 his helps us measure the controller}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331 \rquote }{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 s tilt as well as its acceleration.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
There are three values that you should never use anymore, because they are obsolete and only for backwards compatability: }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RawForceX}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RawForceY}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RawForceZ}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
. If your script is currently using them, then replace them with the calibrated force values below. Remember the calibrated force values don\rquote t need an offset, and they are about 1/30 the size of the RawForce values.}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331 Don\rquote t use cxx, cxy, etc. anymore either.}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par There are three calibrated force values:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 gx}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 gy}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , and }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 gz}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid4619909 They measure the force/acceleration in Gs. }{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 They can be zero for no force/acceleration, 1 for the same amount of force/acceleration as gravity, or any value in between or outside that range. There is also the vector version:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 g
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par You can use them for measuring actual acceleration, or for measuring tilt.
|
|
\par
|
|
\par If you prefer }{\lang1024\langfe1024\noproof\insrsid4619909 force/}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 acceleration values in other units, you can use these values:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 RawAccX}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 RawAccY}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , and }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid2849943 RawAccZ}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 .
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
They are measured in Metres Per Second Per Second. But GlovePIE supports units so you can do things like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RawAccX}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 in miles per hour per second
|
|
\par
|
|
\par to get the value in different units.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid4619909 They are called }{\b\lang1024\langfe1024\noproof\insrsid4619909\charrsid4619909 Raw}{
|
|
\lang1024\langfe1024\noproof\insrsid4619909 because}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RawAcc}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
values still include gravity.}{\lang1024\langfe1024\noproof\insrsid4619909 Normally you would want to separate gravity and real acceleration.}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
If you want to get the real acceleration without gravity then you should use the following values instead:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RelAccX}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RelAccY}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , and }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RelAccZ}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 They are not very accurate because it is hard for G
|
|
lovePIE to separate out the force of gravity, but it makes a good attempt.}{\lang1024\langfe1024\noproof\insrsid4619909 They will be more accurate if you have Wii Motion Plus.}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid4619909 They are called }{\b\lang1024\langfe1024\noproof\insrsid4619909\charrsid4619909 Rel}{
|
|
\lang1024\langfe1024\noproof\insrsid4619909 for \'93relative\'94 because a}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid4619909 ll}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 these acceleration va}{
|
|
\lang1024\langfe1024\noproof\insrsid4619909 lues are relative to the controller}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 \rquote s orientation. So Z is whe}{\lang1024\langfe1024\noproof\insrsid4619909
|
|
rever the controller is pointing, whether that is up, down, left, right, or forwards, rather than a fixed direction such as towards the screen.}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8860331 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 {\*\bkmkstart _Toc251216710}Rotations{\*\bkmkend _Toc251216710}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid6425973 Accelerometers can tell which way is down, so they can measure t}{
|
|
\lang1024\langfe1024\noproof\insrsid4619909 ilt}{\lang1024\langfe1024\noproof\insrsid6425973 . B}{\lang1024\langfe1024\noproof\insrsid4619909 ut }{\lang1024\langfe1024\noproof\insrsid6425973 accelerometers can\rquote t measure }{
|
|
\lang1024\langfe1024\noproof\insrsid4619909 horizon}{\lang1024\langfe1024\noproof\insrsid6425973 tal rotation with no tilting}{\lang1024\langfe1024\noproof\insrsid4619909 . Horizontal rotation is called }{
|
|
\b\lang1024\langfe1024\noproof\insrsid4619909\charrsid4619909 Yaw}{\lang1024\langfe1024\noproof\insrsid4619909 , and can only }{\lang1024\langfe1024\noproof\insrsid65929
|
|
be measured with gyros, or a Sensor Bar, (or a compass, but none of these controllers have a compass). }{\lang1024\langfe1024\noproof\insrsid4619909
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid4619909
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid65929 Gyros only measure rotation speed, rather than their current orientation. So they can\rquote
|
|
t know for sure which way they are pointing, only how far they have turned since you started.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid65929
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid65929 The Nunchuk has no way of measuring }{\b\lang1024\langfe1024\noproof\insrsid65929\charrsid65929 Yaw}{
|
|
\lang1024\langfe1024\noproof\insrsid65929 . The SIXAXIS has 1 gyro for measuring relative }{\b\lang1024\langfe1024\noproof\insrsid65929\charrsid65929 Yaw}{\lang1024\langfe1024\noproof\insrsid65929 . The Wiimote can sort of measure }{
|
|
\b\lang1024\langfe1024\noproof\insrsid65929 Yaw}{\lang1024\langfe1024\noproof\insrsid65929 while pointing at the sensor bar, but }{\lang1024\langfe1024\noproof\insrsid6425973 it }{\lang1024\langfe1024\noproof\insrsid65929
|
|
has no gyros. With Wii Motion Plus}{\lang1024\langfe1024\noproof\insrsid6425973 the Wiimote has 3 gyros and can measure }{\b\lang1024\langfe1024\noproof\insrsid6425973 Yaw}{\lang1024\langfe1024\noproof\insrsid6425973 properly.}{
|
|
\lang1024\langfe1024\noproof\insrsid65929\charrsid6425973
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid65929\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6425973 The controllers have these values for measuring rotation:}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6425973\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid6425973 Yaw}{\lang1024\langfe1024\noproof\insrsid6425973\charrsid6425973 , }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 Pitch}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 Roll}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 SmoothPitch}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 SmoothRoll}{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid15798465 SteeringAngle}{\lang1024\langfe1024\noproof\insrsid15798465\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid6425973 The angles are all in degrees, but can be converted to other units like this \'93
|
|
Wiimote.Pitch in radians\'94.}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331 Yaw}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
is the horizontal angle. It is 0 when the Wiimote is pointing at the middle of the sensor bar, 90 when it is pointing at the right wall, and -90 when it is point
|
|
ing at the left wall. It is -180 or +180 when pointing backwards. But because it is only measured by a gyro (with Motion Plus) or sensor bar, it will drift, and you need to reset the value in your script. Unlike Pitch and Roll, you can actually set Yaw in
|
|
your script to tell it what angle you are facing, and the gyro will keep it updated from there.}{\lang1024\langfe1024\noproof\insrsid6425973
|
|
On a Sixaxis the Yaw is 0 when it is facing the same way it was when you started the script. On a Nunchuk, Yaw never changes.}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 Pitch}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
is the vertical }{\lang1024\langfe1024\noproof\insrsid16144528 angle. It is 90 when the controller}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
is pointing at the ceiling, -90 when it is pointing at the ground, 0 when it is flat, and a value in between for angles in between.}{\lang1024\langfe1024\noproof\insrsid6425973 P}{\lang1024\langfe1024\noproof\insrsid16144528 itch never goes past 90.}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\insrsid8860331\charrsid8653446 Roll}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
is how much the top is tilted towards the right. It }{\lang1024\langfe1024\noproof\insrsid16144528 is -180 or +180 when the controller}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
is upside-down, -90 when it is on its left side, +90 when it is on its right side. and 0 when it is flat.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 Pitch}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 Roll}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 attempt to filter out accelerations. This may make them slightly jagged}{\lang1024\langfe1024\noproof\insrsid16144528
|
|
, especially when the controller is moving}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 . You can use }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 SmoothPitch}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
and }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 SmoothRoll}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 if you don\rquote t mind getting}{\lang1024\langfe1024\noproof\insrsid8087115 the wrong result if the controller
|
|
}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 moves, but you do want it to be smooth.}{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8087115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid8087115 SmoothPitch}{\lang1024\langfe1024\noproof\insrsid8087115 and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8087115 SmoothRoll}{\insrsid8087115 should not be confused with the }{\b\insrsid8087115 Smooth}{\insrsid8087115 function. }{\b\insrsid8087115 SmoothPitch}{\insrsid8087115 and }{\b\insrsid8087115 SmoothRoll}{
|
|
\insrsid8087115 are not smoothed or filtered in any way. You can still use the }{\b\insrsid8087115 Smooth}{\insrsid8087115 function to filter either }{\b\insrsid8087115\charrsid8087115 SmoothPitch}{\insrsid8087115 or normal }{
|
|
\b\insrsid8087115\charrsid8087115 Pitch}{\insrsid8087115 for example.}{\insrsid8087115\charrsid8087115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\b\lang1024\langfe1024\noproof\insrsid2520064 SteeringAngle}{\insrsid2520064
|
|
is used for when you hold the Wii Remote or SIXAXIS like a steering wheel. With a Wii Remote that means the DPad and A button are on the left, and the 1 and 2 buttons are on the right (like normal). With either controller it doesn\rquote
|
|
t matter whether the buttons are pointing towards you, or pointing at the ceiling. The range is -360 to +360, and 0 when flat. + means turning right, and - means turning left.}{\insrsid12996761
|
|
Turning more than 360 degrees in one direction wraps back around to 0. Because it goes from -360 to 360 it means the same orientation will be reported in two different ways depending on which way you turned to got there
|
|
(pointing at the ceiling is either 90 or -270).}{\insrsid2520064\charrsid2520064
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8860331 {\lang1024\langfe1024\noproof\insrsid2520064\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905 There is also a rotation matrix, for those who prefer it. It is a 3x3 Direct3D style rotation matrix:
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RotMat}{\lang1024\langfe1024\noproof\insrsid16144528 . It didn\rquote t work properly in previous versions, but it works now.}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid16144528
|
|
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par The gyros actually measure rotation speed. So you have extra values based on the gyros:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 YawSpeed}{\lang1024\langfe1024\noproof\insrsid8860331\charrsid9576412 , }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 PitchSpeed}{
|
|
\lang1024\langfe1024\noproof\insrsid8860331\charrsid9576412 , }{\b\lang1024\langfe1024\noproof\insrsid8860331\charrsid8653446 RollSpeed
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid8860331
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid8860331\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid13967550 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8860331 \page }{\lang1024\langfe1024\noproof\insrsid6113937\charrsid2696905 {\*\bkmkstart _Toc251216711}The \'93Any\'94 object, for any kind of gamepad{\*\bkmkend _Toc251216711}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6113937\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid6113937\charrsid2696905 When you don\rquote
|
|
t care whether the user is using a Wiimote and Nunchuk, Classic Controller, SIXAXIS, XBox360 controller,}{\lang1024\langfe1024\noproof\insrsid6443485 Wii Guitar, Wii Drums,}{\lang1024\langfe1024\noproof\insrsid6113937\charrsid2696905
|
|
or ordinary gamepad, you can use the \'93Any\'94 object.}{\lang1024\langfe1024\noproof\insrsid6443485 }{\lang1024\langfe1024\noproof\insrsid6443485\charrsid2696905 It also sort-of supports real joysticks, but not really.}{
|
|
\lang1024\langfe1024\noproof\insrsid6113937\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid14091597\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid14091597\charrsid2696905
|
|
By convention, the Nunchuk is assumed to be in your left hand, and the Wiimote in your right, even though that is not necessarily the case.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid6113937
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid6443485 You can support multiple players by putting a number after \'93any\'94, eg. \'93any1\'94, \'93any2
|
|
\'94, \'93any3\'94, etc. The controllers will be assigned numbers in this order: Wii Remotes (optionally with nunchuks or classic controllers), SIXAXISes, Wii Guitars, Wii Drums, XBox360 controllers, normal joysticks/gamepads.}{
|
|
\lang1024\langfe1024\noproof\insrsid6443485\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid6443485
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid6443485 If you don\rquote t use a number after the \'93any\'94
|
|
, then all controllers together can be used to control it, similar to what happens when you just use \'93mouse\'94 without a number.}{\lang1024\langfe1024\noproof\insrsid3165024\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid6113937\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13196591 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13196591\charrsid2696905 {\*\bkmkstart _Toc251216712}The Joysticks and DPads{\*\bkmkend _Toc251216712}
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid5137387 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5137387
|
|
Axes By Style
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5137387
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\b\lang1024\langfe1024\noproof\insrsid597128\charrsid5137387 Any.LeftStickX, Any.LeftStickY}{\lang1024\langfe1024\noproof\insrsid597128 :}{
|
|
\lang1024\langfe1024\noproof\insrsid5137387 The left analog }{\lang1024\langfe1024\noproof\insrsid597128 stick on a gamepad, o}{\lang1024\langfe1024\noproof\insrsid5137387 r the only stick on a joystick, or the joystick on a Nunchuk.}{
|
|
\lang1024\langfe1024\noproof\insrsid597128
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid597128
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\b\lang1024\langfe1024\noproof\insrsid5137387\charrsid5137387 Any.RightStickX, Any.RightStickY}{\lang1024\langfe1024\noproof\insrsid5137387
|
|
: The right analog stick on a gamepad. Doesn\rquote t exist on a Wiimote or joystick.}{\lang1024\langfe1024\noproof\insrsid597128
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid5137387
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\b\lang1024\langfe1024\noproof\insrsid5137387\charrsid5137387 Any.DPadX, Any.DPadY}{\b\lang1024\langfe1024\noproof\insrsid5137387
|
|
, Any.DPadLeft, Any.DPadRight, Any.DPadUp, Any.DPadDown}{\lang1024\langfe1024\noproof\insrsid5137387 : The DPad on a gamepad or Wiimote, or the hat switch on a joystick. On a Sixaxis this will be analog.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid5137387
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11806663 {\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid11806663 Any.LeftStickRun}{\lang1024\langfe1024\noproof\insrsid11806663\charrsid2696905
|
|
: Left analog stick is pushed to run speed.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11806663 {\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid11806663 Any.RightStickRun}{\lang1024\langfe1024\noproof\insrsid11806663\charrsid2696905
|
|
: Right analog stick is pushed to run speed.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid11806663
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid5137387 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5137387
|
|
Axes By Finger
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5137387
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\b\lang1024\langfe1024\noproof\insrsid5137387\charrsid5137387
|
|
Any.LeftThumbX, Any.LeftThumbY, Any.LeftThumbLeft, Any.LeftThumbRight, Any.LeftThumbUp, Any.LeftThumbDown}{\lang1024\langfe1024\noproof\insrsid5137387 : The}{\lang1024\langfe1024\noproof\insrsid11806663 left analog stick or left DPad or Nunchuk stick. O}
|
|
{\lang1024\langfe1024\noproof\insrsid5137387 r the joystick and hat switch}{\lang1024\langfe1024\noproof\insrsid11806663 on a real joystick.}{\lang1024\langfe1024\noproof\insrsid5137387\charrsid5137387
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid6767498
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11806663 {\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387 Any.}{\b\lang1024\langfe1024\noproof\insrsid11806663 Right}{
|
|
\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387 ThumbX, Any.}{\b\lang1024\langfe1024\noproof\insrsid11806663 Right}{\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387 ThumbY, Any.}{\b\lang1024\langfe1024\noproof\insrsid11806663
|
|
Right}{\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387 Thumb}{\b\lang1024\langfe1024\noproof\insrsid11806663 Right}{\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387 , Any.}{\b\lang1024\langfe1024\noproof\insrsid11806663 Right}
|
|
{\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387 ThumbRight, Any.}{\b\lang1024\langfe1024\noproof\insrsid11806663 Right}{\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387 ThumbUp, Any.}{
|
|
\b\lang1024\langfe1024\noproof\insrsid11806663 Right}{\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387 ThumbDown}{\lang1024\langfe1024\noproof\insrsid11806663 : The right analog stick or the Wiimote\rquote s DPad. }{
|
|
\lang1024\langfe1024\noproof\insrsid11806663\charrsid5137387
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid11806663
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid11806663 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11806663 Axes By Function
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid11806663
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\b\lang1024\langfe1024\noproof\insrsid11806663\charrsid11806663 Any.X, Any.Y, Any.Left, Any.Right, Any.Up, Any.Down}{
|
|
\lang1024\langfe1024\noproof\insrsid11806663 : The left analog stick, nunchuk joystick or DPad.}{\lang1024\langfe1024\noproof\insrsid11806663\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid10359310
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid11806663 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11806663 L3 and R3 Buttons
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid11806663\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\b\lang1024\langfe1024\noproof\insrsid10359310\charrsid11806663 Any.L3}{\lang1024\langfe1024\noproof\insrsid10359310\charrsid2696905
|
|
: Pushing in on the left analog stick. This does NOT work on a Classic Controller or Nunchuk, they have no L3 button. It only works on the SIXAXIS, XBox 360 Controller, or regular gamepad.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10359310 {\b\lang1024\langfe1024\noproof\insrsid10359310\charrsid11806663 Any.R3}{\lang1024\langfe1024\noproof\insrsid10359310\charrsid2696905
|
|
: Pushing in on the right analog stick. This does NOT work on a Classic Controller, they have no R3 button. It only works on the SIXAXIS, XBox 360 Controller, or regular gamepad.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid10359310\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13196591 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13196591\charrsid2696905 {\*\bkmkstart _Toc251216713}The Trigger Buttons{\*\bkmkend _Toc251216713}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8464437
|
|
Note that on a Wii Remote, the trigger button is also counted as a normal button. Be careful not to assign it twice.}{\lang1024\langfe1024\noproof\insrsid14253548\charrsid8464437
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid14253548 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14253548 Triggers By Analog/Digital}{\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid9577944\charrsid9577944 Any.AnalogLeftTrigger}{\lang1024\langfe1024\noproof\insrsid9577944
|
|
: range 0 to 1. If there is only one left trigger which is analog, it uses that trigger. Otherwise it uses the left trigger with the most range of movement. If there are no analog triggers it will use a digital trigger that feels most analog. = (0..1)}{
|
|
\lang1024\langfe1024\noproof\insrsid4655191 :}{\lang1024\langfe1024\noproof\insrsid9577944 Classic.L, Sixaxis.L2, XInput.LeftTrigger, }{\lang1024\langfe1024\noproof\insrsid4655191 }{\lang1024\langfe1024\noproof\insrsid9577944 (0/1)}{
|
|
\lang1024\langfe1024\noproof\insrsid4655191 : Nunchuk.Z, Joystick.L2
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid4655191
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid4655191\charrsid4655191 Any.AnalogRightTrigger}{\lang1024\langfe1024\noproof\insrsid4655191
|
|
: same as above, but on the right hand side. = (0..1): Classic.R, Sixaxis.R2, XInput.RightTrigger, (0/1): Wiimote.B, Joystick.R2}{\lang1024\langfe1024\noproof\insrsid9577944
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid9577944
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid4655191\charrsid4655191 Any.DigitalLeftTrigger}{\lang1024\langfe1024\noproof\insrsid4655191
|
|
: True/False. The other left trigger besides the \'93analog\'94 one. This trigger might actually be an analog trigger, in which case it returns true when only partly pressed. = Classic.ZL, XInput.LeftShoulder, Sixaxis.L1, Nunchuk.C, Joystick.L1
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid4655191
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4655191 {\b\lang1024\langfe1024\noproof\insrsid4655191\charrsid4655191 Any.}{\b\lang1024\langfe1024\noproof\insrsid4655191 Digital}{
|
|
\b\lang1024\langfe1024\noproof\insrsid4655191\charrsid4655191 RightTrigger}{\lang1024\langfe1024\noproof\insrsid4655191 : same as above, but on the right hand side. }{\lang1024\langfe1024\noproof\insrsid14253548 Doesn\rquote t exist on a wiimote. }{
|
|
\lang1024\langfe1024\noproof\insrsid4655191 = (0..1): Classic.ZR, XInput.RightShoulder, Sixaxis.R1, Joystick.R1
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid9577944
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid14253548 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14253548 Triggers By Quality
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid4655191 Any.LeftTrigger}{\lang1024\langfe1024\noproof\insrsid4655191
|
|
: True/False. The best, most trigger-like, or most commonly used trigger on the left side. }{\lang1024\langfe1024\noproof\insrsid14253548
|
|
If analog, it only needs to be partly pressed to be true. = Classic.L, Sixaxis.L1, XInput.LeftTrigger, Nunchuk.Z, Joystick.L1}{\lang1024\langfe1024\noproof\insrsid4655191\charrsid4655191
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid4655191
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14253548 {\b\lang1024\langfe1024\noproof\insrsid14253548 Any.RightTrigger}{\lang1024\langfe1024\noproof\insrsid14253548
|
|
: same as above, but on the right hand side. = Classic.R, Sixaxis.R1, XInput.RightTrigger, Wiimote.B, Joystick.R1}{\lang1024\langfe1024\noproof\insrsid14253548\charrsid4655191
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Any.WorseLeftTrigger}{\lang1024\langfe1024\noproof\insrsid14253548
|
|
: True/false. The second best trigger on the left side. If analog, it only needs to be partly pressed to be true. = Classic.ZL, Sixaxis.L2, XInput.LeftShoulder, Nunchuk.C, Joystick.L2
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Any.WorseRightTrigger}{\lang1024\langfe1024\noproof\insrsid14253548
|
|
: same as above, but on the right. Doesn\rquote t exist on a Wiimote. = classic.ZR, Sixaxis.R2, XInput.RightShoulder, Joystick.R2
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid14253548 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14253548 Triggers By Position
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Any.TopLeftTrigger}{\lang1024\langfe1024\noproof\insrsid14253548 (aka }{
|
|
\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Any.L1}{\lang1024\langfe1024\noproof\insrsid14253548 ): top left trigger = Sixaxis.L1, Joystick.L1, XInput.LeftShoulder, Nunchuk.C, Classic.L
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14253548 {\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Any}{\b\lang1024\langfe1024\noproof\insrsid14253548 .BottomLef}{
|
|
\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 tTrigger}{\lang1024\langfe1024\noproof\insrsid14253548 (aka }{\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Any.L}{\b\lang1024\langfe1024\noproof\insrsid14253548 2}{
|
|
\lang1024\langfe1024\noproof\insrsid14253548 ): = Sixaxis.L2, Joystick.L2, XInput.LeftTrigger, Nunchuk.Z, Classic.ZL
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14253548 {\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Any.Top}{\b\lang1024\langfe1024\noproof\insrsid14253548 Right}{
|
|
\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Trigger}{\lang1024\langfe1024\noproof\insrsid14253548 (aka }{\b\lang1024\langfe1024\noproof\insrsid14253548 Any.R}{\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 1}{
|
|
\lang1024\langfe1024\noproof\insrsid14253548 ): = Sixaxis.R1, Joystick.R1, XInput.RightShoulder, }{\lang1024\langfe1024\noproof\insrsid8464437 Wiimote.B, Classic.R}{\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14253548 {\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Any}{\b\lang1024\langfe1024\noproof\insrsid14253548 .BottomRight}{
|
|
\b\lang1024\langfe1024\noproof\insrsid14253548\charrsid14253548 Trigger}{\lang1024\langfe1024\noproof\insrsid14253548 (aka }{\b\lang1024\langfe1024\noproof\insrsid14253548 Any.R2}{\lang1024\langfe1024\noproof\insrsid14253548 ):}{
|
|
\lang1024\langfe1024\noproof\insrsid8464437 doesn\rquote t exist on Wiimote.}{\lang1024\langfe1024\noproof\insrsid14253548 }{\lang1024\langfe1024\noproof\insrsid8464437 = Sixaxis.R}{\lang1024\langfe1024\noproof\insrsid14253548 2, Joy}{
|
|
\lang1024\langfe1024\noproof\insrsid8464437 stick.R}{\lang1024\langfe1024\noproof\insrsid14253548 2, XInput.RightTrigger, Classic.Z}{\lang1024\langfe1024\noproof\insrsid8464437 R}{\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14253548 {\lang1024\langfe1024\noproof\insrsid14253548
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16671412 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16671412\charrsid2696905 {\*\bkmkstart _Toc251216714}Select and Start buttons{\*\bkmkend _Toc251216714}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6234254 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid10945022\charrsid8464437 Any.}{
|
|
\b\lang1024\langfe1024\noproof\insrsid7163606\charrsid8464437 Select:}{\lang1024\langfe1024\noproof\insrsid7163606\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid8464437 True/False. Select, Minus,
|
|
or Back. = Sixaxis.Select, Joystick.Select, Classic.Minus, Wiimote.Minus, XInput.Back.}{\lang1024\langfe1024\noproof\insrsid10945022\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7163606 {\b\lang1024\langfe1024\noproof\insrsid7163606\charrsid8464437 Any.Start}{\lang1024\langfe1024\noproof\insrsid7163606\charrsid2696905
|
|
: Start on a SIXAXIS, regular gamepad, or Classic Controller; or Plus on a Wiimote.}{\lang1024\langfe1024\noproof\insrsid5971363\charrsid2696905 Start on an XBox360.}{\lang1024\langfe1024\noproof\insrsid7163606\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6234254 {\b\lang1024\langfe1024\noproof\insrsid9123779\charrsid8464437 Any.Home}{\lang1024\langfe1024\noproof\insrsid9123779\charrsid2696905 : }{
|
|
\lang1024\langfe1024\noproof\insrsid8464437 Home or PS button. Can\rquote t be read on an Xbox360 controller. Doesn\rquote t exist on a normal gamepad. = Classic.Home, Wiimote.Home, Sixaxis.PS
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6234254 {\lang1024\langfe1024\noproof\insrsid8464437
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13196591 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13196591\charrsid2696905 {\*\bkmkstart _Toc251216715}The main buttons}{\lang1024\langfe1024\noproof\insrsid13196591 {\*\bkmkend _Toc251216715}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8464437 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid8464437 Note that on a Wiimote, buttons by position }{\insrsid12594830
|
|
are also the same as the DPad, and}{\insrsid8464437 }{\insrsid12594830 t}{\insrsid8464437 he cancel}{\insrsid12594830 button, and button2 are also the same as a right trigger}{\insrsid8464437 .
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid597128 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid597128 Buttons By Function
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8464437 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid597128
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8464437 {\b\insrsid597128\charrsid597128 Any.OK}{\insrsid597128\charrsid597128 :}{\b\insrsid597128 }{\insrsid597128
|
|
Wiimote.A, Classic.A, SixAxis.Circle, XInput.A, Joystick.Button1}{\insrsid597128\charrsid597128
|
|
\par }{\b\insrsid597128\charrsid597128 Any.Cancel}{\insrsid597128 : Wiimote.B, Classic.B, Sixaxis.Cross, XInput.Back, Joystick.Button2
|
|
\par }{\b\insrsid597128\charrsid597128 Any.OtherButton1}{\insrsid597128 : Wiimote.One, Classic.X, Sixaxis.Triangle, XInput.B, Joystick.Button3
|
|
\par }{\b\insrsid597128\charrsid597128 Any.OtherButton2}{\insrsid597128 : Wiimote.Two, Classic.Y, Sixaxis.Square, XInput.X, Joystick.Button4
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8464437 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8464437
|
|
Buttons By Position}{\lang1024\langfe1024\noproof\insrsid8464437\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13196591
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid8464437\charrsid8464437 Any.Triangle}{\lang1024\langfe1024\noproof\insrsid8464437
|
|
: Top button for your right thumb. = Sixaxis.Triangle, Joystick.Triangle, Classic.x, XInput.}{\lang1024\langfe1024\noproof\insrsid12594830 Y}{\lang1024\langfe1024\noproof\insrsid8464437 , Wiimote.Up (DPad)
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12594830\charrsid12594830 Any.Circle}{\lang1024\langfe1024\noproof\insrsid12594830 : Right button for your right thumb. = Sixaxis.Circle, Joystick.Circle, Classic.a, XInput.B, Wiimote.Right (DPad)}{
|
|
\lang1024\langfe1024\noproof\insrsid12594830\charrsid8464437
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12594830\charrsid12594830 Any.Cross}{\lang1024\langfe1024\noproof\insrsid12594830 : Bottom button for your right thumb. = Sixaxis.Cross, Joystick.Cross, Classic.b, XInput.A, Wiimote.Down (DPad)}{
|
|
\lang1024\langfe1024\noproof\insrsid8464437
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid12594830\charrsid12594830 Any.Square}{\lang1024\langfe1024\noproof\insrsid12594830 : Left button for your right thumb. = Sixaxis.Square, Joystick.Square, Classic.y, XInput.X, Wiimote.Left (DPad)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9123779 {\lang1024\langfe1024\noproof\insrsid9123779
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid597128 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid597128
|
|
Buttons By Number
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid597128 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid597128 The buttons numbered in their normal order.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid597128 {\insrsid597128\charrsid597128
|
|
\par }{\b\insrsid597128\charrsid597128 Any.Button1}{\insrsid597128 \'85 }{\b\insrsid597128\charrsid597128 Any.Button17}{\b\insrsid597128
|
|
\par }{\b\insrsid597128\charrsid597128
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid12594830 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12594830 Buttons By Which Finger You Press Them W}{\lang1024\langfe1024\noproof\insrsid13196591\charrsid2696905 ith
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4985634 Main buttons in their normal order}{
|
|
\lang1024\langfe1024\noproof\insrsid13196591\charrsid2696905 , followed by hard to reach ones.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\lang1024\langfe1024\noproof\insrsid13196591\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9641119 {\b\lang1024\langfe1024\noproof\insrsid9641119\charrsid12594830 Any.RightThumbButton1}{\lang1024\langfe1024\noproof\insrsid12594830
|
|
: Wiimote.A, Classic.a, SixAxis.Circle, XInput.A, Joystick.Button1}{\lang1024\langfe1024\noproof\insrsid9641119\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9641119 {\b\lang1024\langfe1024\noproof\insrsid9641119\charrsid12594830 Any.RightThumbButton2}{\lang1024\langfe1024\noproof\insrsid12594830
|
|
: Wiimote.Minus, Classic.b, SixAxis.Cross, XInput.B, Joystick.Button2}{\lang1024\langfe1024\noproof\insrsid9641119\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid9641119\charrsid12594830 Any.RightThumbButton3}{\lang1024\langfe1024\noproof\insrsid12594830 : Wiimote.Plus, Classic.x}{\lang1024\langfe1024\noproof\insrsid4985634 , SixAxis.Triangle, XInput.X, Joystick.Button3}{
|
|
\lang1024\langfe1024\noproof\insrsid9641119\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9641119 {\b\lang1024\langfe1024\noproof\insrsid9641119\charrsid12594830 Any.RightThumbButton4}{\lang1024\langfe1024\noproof\insrsid4985634
|
|
: Wiimote.Home, Classic.y, SixAxis.Square, XInput.Y, Joystick.Button4}{\lang1024\langfe1024\noproof\insrsid9641119\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9641119 {\b\lang1024\langfe1024\noproof\insrsid9641119\charrsid12594830 Any.RightThumbButton5}{\lang1024\langfe1024\noproof\insrsid4985634
|
|
: Wiimote.One, Classic.Plus, SixAxis.}{\lang1024\langfe1024\noproof\insrsid9641119\charrsid2696905 Start}{\lang1024\langfe1024\noproof\insrsid4985634 , XInput.Start, Joystick.Start}{\lang1024\langfe1024\noproof\insrsid9641119\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid9641119\charrsid12594830 Any.RightThumbButton6}{\lang1024\langfe1024\noproof\insrsid4985634 : Wiimote.Two, Classic.Home, SixAxis.R3, XInput.}{\lang1024\langfe1024\noproof\insrsid9641119\charrsid2696905 R3}{
|
|
\lang1024\langfe1024\noproof\insrsid4985634 , Joystick.R3}{\lang1024\langfe1024\noproof\insrsid9641119
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4985634 {\b\lang1024\langfe1024\noproof\insrsid4985634\charrsid12594830 Any.RightThumbButton}{\b\lang1024\langfe1024\noproof\insrsid4985634 7}{
|
|
\lang1024\langfe1024\noproof\insrsid4985634 : Wiimote.Down, Classic.Minus, SixAxis.PS, XInput.Back, Joystick.Select
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4985634 {\b\lang1024\langfe1024\noproof\insrsid4985634\charrsid12594830 Any.RightThumbButton}{\b\lang1024\langfe1024\noproof\insrsid4985634 8}{
|
|
\lang1024\langfe1024\noproof\insrsid4985634 : Wiimote.Left, SixAxis.Select
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid4985634\charrsid12594830 Any.RightThumbButton}{\b\lang1024\langfe1024\noproof\insrsid4985634 9}{\lang1024\langfe1024\noproof\insrsid4985634 : Wiimote.Right
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid4985634\charrsid12594830 Any.RightThumbButton}{\b\lang1024\langfe1024\noproof\insrsid4985634 10}{\lang1024\langfe1024\noproof\insrsid4985634 : Wiimote.Up
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9641119 {\lang1024\langfe1024\noproof\insrsid4985634
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9641119 {\lang1024\langfe1024\noproof\insrsid4985634 On the Wiimote, people }{\lang1024\langfe1024\noproof\insrsid9971688
|
|
use their left thumb to press 1 or 2.}{\lang1024\langfe1024\noproof\insrsid4985634\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6234254 {\lang1024\langfe1024\noproof\insrsid9123779\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid13196591\charrsid4985634 Any.LeftThumbButton1}{\lang1024\langfe1024\noproof\insrsid9971688 :}{
|
|
\lang1024\langfe1024\noproof\insrsid4985634 = Sixaxis.Select, Classic.Minus, Joystick.Select}{\lang1024\langfe1024\noproof\insrsid9971688 , Wiimote.One}{\lang1024\langfe1024\noproof\insrsid13196591\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13196591 {\b\lang1024\langfe1024\noproof\insrsid13196591\charrsid4985634 Any.LeftThumbButton2}{\lang1024\langfe1024\noproof\insrsid9971688 : }{
|
|
\lang1024\langfe1024\noproof\insrsid4985634 = Sixaxis.L3, Joystick.L3, Classic.Home}{\lang1024\langfe1024\noproof\insrsid9971688 , Wiimote.Two}{\lang1024\langfe1024\noproof\insrsid13196591\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13196591\charrsid4985634 Any.LeftThumbButton3}{\lang1024\langfe1024\noproof\insrsid4985634 : = SixAxis.PS}{\lang1024\langfe1024\noproof\insrsid9971688 , Wiimote.Minus}{
|
|
\lang1024\langfe1024\noproof\insrsid9123779\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid814760\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid5971363 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid814760\charrsid2696905 {\*\bkmkstart _Toc251216716}Vibration{\*\bkmkend _Toc251216716}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid814760\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10635391 Any.Rumble (}{\lang1024\langfe1024\noproof\insrsid10635391\charrsid10635391 aka}{\b\lang1024\langfe1024\noproof\insrsid10635391 }{\b\lang1024\langfe1024\noproof\insrsid814760\charrsid10635391
|
|
Any.Vibration1}{\b\lang1024\langfe1024\noproof\insrsid10635391 )}{\lang1024\langfe1024\noproof\insrsid814760\charrsid2696905 and }{\b\lang1024\langfe1024\noproof\insrsid814760\charrsid10635391 Any.Vibration2}{\lang1024\langfe1024\noproof\insrsid10635391
|
|
control vibration. They are between -1 and 1, with 0 being no vibration.}{\lang1024\langfe1024\noproof\insrsid6113937\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid6113937
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid9336935 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9336935 {\*\bkmkstart _Toc251216717}Any Motion{\*\bkmkend _Toc251216717}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9336935
|
|
Wiimote and Sixaxis have motion controls. Other devices will always report no motion.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid8925860
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid8925860 See the earlier section \'93}{\b\lang1024\langfe1024\noproof\insrsid8925860\charrsid8925860
|
|
Motion Controls for Wiimote, Nunchuk and Sixaxis}{\lang1024\langfe1024\noproof\insrsid8925860 \'94 }{\lang1024\langfe1024\noproof\insrsid1584750 for a list of motion controls that work on the }{\b\lang1024\langfe1024\noproof\insrsid1584750 Any}{
|
|
\lang1024\langfe1024\noproof\insrsid1584750 object.}{\lang1024\langfe1024\noproof\insrsid8925860
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid1584750
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid1584750 Warning: The }{\lang1024\langfe1024\noproof\insrsid13507760 postures, }{
|
|
\lang1024\langfe1024\noproof\insrsid1584750 simple gestures}{\lang1024\langfe1024\noproof\insrsid13507760 , accelerations, and rotation matricies}{\lang1024\langfe1024\noproof\insrsid1584750 are not implemented quite right\'85 if you don\rquote
|
|
t specify a number after }{\b\lang1024\langfe1024\noproof\insrsid1584750 any}{\lang1024\langfe1024\noproof\insrsid1584750 then it will only look at the first Wii Remote or Sixaxis }{\lang1024\langfe1024\noproof\insrsid13507760
|
|
instead of averaging all of them }{\lang1024\langfe1024\noproof\insrsid1584750 (I was lazy). }{\lang1024\langfe1024\noproof\insrsid13507760 The Waggle Gestures and Angles work correctly though.}{\lang1024\langfe1024\noproof\insrsid1584750\charrsid1584750
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6113937 {\lang1024\langfe1024\noproof\insrsid9336935
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid13967550 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12065226 \page }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216718}Wiimote (Nintendo Wii Remote){\*\bkmkend _Toc152896022}{\*\bkmkend _Toc251216718}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 If your
|
|
computer has Bluetooth, you can control games with the Nintendo Wii Remote. The Wiimote has accelerometers, buttons, an infra-red camera, LEDs, vibration, a speaker, and storage for Miis. Or you can connect a Nunchuk (with joystick, two buttons, and accel
|
|
erometers) or Classic Controller (with 9 digital buttons, two analog shoulder buttons, two joysticks and a D-Pad). Every feature is now supported.}{\lang1024\langfe1024\noproof\insrsid2763386
|
|
If you have Wii Motion Plus connected, then the Wii Remote also has 3 rate gyros.}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216719}Bluetooth{\*\bkmkend _Toc251216719}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You need a Blueto}{\lang1024\langfe1024\noproof\insrsid14955885
|
|
oth adapter, unless your laptop has one built in. Cheap old }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 Blu}{\lang1024\langfe1024\noproof\insrsid14955885 etooth versions work fine for Wii Remotes}{
|
|
\lang1024\langfe1024\noproof\insrsid13851157 , but they won\rquote t work }{\lang1024\langfe1024\noproof\insrsid14955885 at all for}{\lang1024\langfe1024\noproof\insrsid13851157 a SIXAXIS or Dual Shock 3}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 . }{\lang1024\langfe1024\noproof\insrsid14955885 Those PS3 controllers require Bluetooth 2.0 or above. }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
Different ones come with different Bluetooth drivers called Bluetooth Stacks. Some adapters allow you to install other stacks, some don\rquote t. }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid2763386 All}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 Bluetooth stacks are very buggy. But different stacks have different bugs. Most Bluetooth stacks will now work with GlovePIE.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid2763386\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid2763386 I strongly recommend using the Microsoft Bluetooth Stack, since GlovePIE 0.40 }{
|
|
\lang1024\langfe1024\noproof\insrsid3628814 and above }{\lang1024\langfe1024\noproof\insrsid2763386 can now automatically connect to Wii Remotes when you use that stack. Autoconnecting also sort of works on BlueSoleil, but not as well. If you have
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}{\*\xmlopen\xmlns1{\factoidname place}}Vista{\*\xmlclose}{\*\xmlclose} or above, then you will almost certainly have one of those two stacks.}{\lang1024\langfe1024\noproof\insrsid6520537
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13851157
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13851157 The \'93bluetooth fix\'94
|
|
menu item has been removed in GlovePIE 0.40, since GlovePIE now automatically detects which kinds of bluetooth writes to use.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid2763386
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid2763386 To autoconnect, press or hold down the 1 and 2 buttons at the same time on
|
|
each Wii Remote. Then wait. You can only autoconnect when GlovePIE first starts, or when you click on the GUI tab, or when you are running a script that uses more Wii Remotes than are currently connected. }{\lang1024\langfe1024\noproof\insrsid13851157
|
|
If you do it when GlovePIE first starts then all the LEDs will flash, but while running or using the GUI, the LEDs will show which player when they have finished connecting.}{\lang1024\langfe1024\noproof\insrsid2763386
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid2763386\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13851157 On BlueSoleil, the}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 blue B icon }{
|
|
\lang1024\langfe1024\noproof\insrsid13851157 in the system tray }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 will turn green to show that it is connected. }{\lang1024\langfe1024\noproof\insrsid13851157 On Microsoft, you will see a balloo
|
|
n showing that a device has been discovered and connected.}{\lang1024\langfe1024\noproof\insrsid2763386
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid2763386
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
Note: BlueSoleil is buggy and unstable, and this feature may cause GlovePIE to stop responding for a while, or may not work sometimes, or sometimes causes BlueSoleil to beep the PC speaker. If thi
|
|
s feature causes problems for you, you can disable it by checking the TroubleShooter > No Auto-Bluetooth Connect menu in GlovePIE.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13851157
|
|
Note: The Microsoft stack is also a little buggy and unstable, and sometimes autoconnecting will make Windows pop up a dialog box saying that you need to restart your computer for settings to take effect. That box is a LYING bug! Don\rquote
|
|
t restart your computer, just click \'93Restart Later\'94!
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13851157
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13851157 Note: Once a Wii Remote is connected, you need to remember to disconnect it later by holding
|
|
down the Power button on the Wii Remote, other}{\lang1024\langfe1024\noproof\insrsid14955885 wise it will drain your battery!}{\lang1024\langfe1024\noproof\insrsid13851157 Just because the LEDs are off, doesn\rquote t mean it is disconnected!
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13851157\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6520537\charrsid2696905 You can show the Bluetooth}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 window by choosing the CP-Settings > Bluetooth menu in GlovePIE.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid14955885 To connect Wii Remotes manually, y}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
ou need to start the Bluetooth program, hold down the 1+2 buttons on the Wiimote, tell your Bluetooth program to search for devices, then when it finds a device either tell it to search for services and connect to the HID service, or tell i
|
|
t to connect. There is no {\*\xmlopen\xmlns1{\factoidname stockticker}}PIN}{\lang1024\langfe1024\noproof\insrsid14955885 {\*\xmlclose} (actually the {\*\xmlopen\xmlns1{\factoidname stockticker}}PIN{\*\xmlclose} is your computer\rquote
|
|
s bluetooth address backwards converted to Ascii characters, but it\rquote s impossible to use the {\*\xmlopen\xmlns1{\factoidname stockticker}}PIN{\*\xmlclose} because it contains NULLS}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
) so tell your Bluetooth program to skip the {\*\xmlopen\xmlns1{\factoidname stockticker}}PIN{\*\xmlclose} step, or not to use a {\*\xmlopen\xmlns1{\factoidname stockticker}}PIN{\*\xmlclose}
|
|
. Only after it is completely connected, can you release the 1+2 buttons.}{\lang1024\langfe1024\super\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
You can disconnect a Wiimote at any time, whatever Bluetooth Stack you use, by holding down the Wiimote\rquote s power button. GlovePIE does not have to be running for that.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6520537\charrsid2696905 Normally o}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 nly connected Wiimotes will show up in GlovePIE}{\lang1024\langfe1024\noproof\insrsid6520537\charrsid2696905 .}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216720}Using the Wiimote in GlovePIE{\*\bkmkend _Toc251216720}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\cf6\lang1024\langfe1024\noproof\insrsid3628814\charrsid3628814 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\cf6\lang1024\langfe1024\noproof\insrsid3628814 }{\lang1024\langfe1024\noproof\insrsid3628814
|
|
When you run a script, and a Wiimote is initialising it will show the first and last lights. It will then show the player number once it is ready. If it shows the middle
|
|
2 lights it means it is calibrating the gyros in the Wii Motion Plus, and you should keep the Wiimote as still as possible (preferably on a table). }{\lang1024\langfe1024\noproof\insrsid3628814\charrsid3628814
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid3628814
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid14955885
|
|
GlovePIE 0.40 now supports lots of gestures! The gestures can even be automatically recognised by using the GUI.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid14955885\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can use the GUI to assign the Wiimote\rquote
|
|
s actions, or you can use scripting with the \'93Wiimote\'94 object. The GUI has an }{\lang1024\langfe1024\noproof\insrsid14499167 advanced }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
automatically detect input feature. The GUI is easy, but it can\rquote t edit or create anything too complex. You should use scripting to make fancier scripts.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 GlovePIE }{\lang1024\langfe1024\noproof\insrsid14955885 now }{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 supports }{\lang1024\langfe1024\noproof\insrsid14955885 an unlimited number of Wii Remotes, but}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 only 7 per }{
|
|
\lang1024\langfe1024\noproof\insrsid14955885 bluetooth }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 adapter. }{\lang1024\langfe1024\noproof\insrsid14955885
|
|
You need to have several bluetooth adapters if you want to connect more than 7 Wii Remotes}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 In scripts you can access Wiimotes with \'93Wiimote\'94
|
|
followed the number of the Wiimote, followed by a dot, then followed by the Wiimote property you want to use. eg. Wiimote1.Home
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 If you leave out the number then it will assume you mean Wiimote1.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216721}Buttons{\*\bkmkend _Toc251216721}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 The Wiimote has the following buttons, which are either true or false:
|
|
\par
|
|
\par Up, Down, Left, Right,
|
|
\par A, B,
|
|
\par Minus, Home, Plus
|
|
\par One, Two
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 The Power button, and the Sync button (hidden under the battery compartment) aren
|
|
\rquote t implemented yet.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid14499167
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8653446\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216722}Sensor Bar{\*\bkmkend _Toc251216722}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 The sensor bar is just a bunch of Infra Red li
|
|
ghts which are always on. You can make your own fake sensor bar with candles, Christmas tree lights, or Infra-Red remote controls with a button held down. Or you can order a wireless sensor bar off the internet, or you can build your own.}{
|
|
\lang1024\langfe1024\noproof\insrsid9576412 Or you can use your Wii\rquote s real sensor bar, by connecting the Wiimote to the PC first, then turning your Wii on with the console\rquote s power button.}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid9576412
|
|
\par There are new values for using the Wiimote\rquote s IR sensor like a pointer:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid9576412\charrsid9576412 PointerX}{\lang1024\langfe1024\noproof\insrsid9576412 , }{\b\lang1024\langfe1024\noproof\insrsid9576412\charrsid9576412 PointerY}{\lang1024\langfe1024\noproof\insrsid9576412 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid9576412 PointerXY, }{\b\lang1024\langfe1024\noproof\insrsid9576412\charrsid9576412 PointerVisible}{\lang1024\langfe1024\noproof\insrsid9576412 , }{\b\lang1024\langfe1024\noproof\insrsid9576412\charrsid9576412
|
|
PointerOnScreen}{\lang1024\langfe1024\noproof\insrsid9576412
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9576412\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9576412 Or y}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 ou can }{\lang1024\langfe1024\noproof\insrsid9576412 individually }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
read the position of the infra-red dots that the Wiimote can see with:
|
|
\par wiimote.dot1x, wiimote.dot1y
|
|
\par \'85
|
|
\par wiimote.dot4x, wiimote.dot4y
|
|
\par
|
|
\par You can tell whether an infra-red dot can be seen with Wiimote.dot1vis to Wiimote.dot4vis
|
|
\par
|
|
\par You can tell the size of a dot (between 0 and 15) with Wiimote.dot1size to Wiimote.dot4size
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
The size will always be reported as 16 if your script uses the Nunchuk or Classic Controller, because the report needs to contain more information.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216723}LEDs{\*\bkmkend _Toc251216723}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can set the 4 LEDs on the Wiimote by setting:
|
|
\par
|
|
\par Wiimote.Leds
|
|
\par
|
|
\par to a value between 0 and 15. It is binary.
|
|
\par
|
|
\par Or you can set:
|
|
\par
|
|
\par Wiimote.Led1, Wiimote.Led2, Wiimote.Led3, and Wiimote.Led4
|
|
\par
|
|
\par to either true or false individually.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216724}Force Feedback{\*\bkmkend _Toc251216724}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can activate force feedback by setting:
|
|
\par
|
|
\par Wiimote.Rumble
|
|
\par
|
|
\par to either true or false
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216725}Speaker{\*\bkmkend _Toc251216725}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can play sounds on the Wiimote simply by setting these values:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 Frequency, Volume
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
If you set Frequency to 0 it will switch the speaker off. If you set it to non-zero it will switch the speaker on again. The frequency is measured in Hz. Don\rquote t confuse frequency with pitch, they are different in this context.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
You can set the volume to a value between 0 and 2, (between 0% and 200% in other words). I don\rquote t recommend setting it above 100% though, unless you want to go deaf.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par You can also turn the speaker on and off by setting either of these values:
|
|
\par
|
|
\par Speaker, Mute
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
Setting speaker to true switches on the speaker (slowly) and setting it to false switches off the speaker. Setting Mute to true mutes the speaker, and setting it to false un-mutes it. Using \line \'94Mute\'94 works faster than using \'93Speaker\'94
|
|
. Note that you don\rquote t need to turn the speaker on if you set the frequency, because setting the frequency to non-zero does it automatically. Turning sound on and off with mute is also faster than doing it by changing the frequency to 0.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par You can also set the sample rate with this variable:
|
|
\par
|
|
\par SampleRate
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
Currently GlovePIE only supports sample rates around 3640 Hz. Sample rates must be multiples of 280 a
|
|
dded or subtracted from that value. The default is 3640 Hz. The sample rate is also measured in Hz. The sample rate will automatically increase if you set the frequency higher than 1820 Hz. There isn\rquote t much point in changing the sample rate.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905 {\*\bkmkstart _Toc251216726}Nunchuck, }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 Classic Controller}{\lang1024\langfe1024\noproof\insrsid1784813 , Guitar, }{
|
|
\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 Balance Board}{\lang1024\langfe1024\noproof\insrsid1784813 , etc.}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkend _Toc251216726}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1784813 {\cf6\lang1024\langfe1024\noproof\insrsid1784813\charrsid12065226 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid1784813 GlovePIE 0.40 now sorts Balance Boards, Guitars, Drum Kits, and DJ Hero Turntables into their own separate categories! So }{\b\lang1024\langfe1024\noproof\insrsid1784813\charrsid12065226 BalanceBoard1}{
|
|
\lang1024\langfe1024\noproof\insrsid1784813 is always the first Balance Board, }{\b\lang1024\langfe1024\noproof\insrsid1784813 Wiimote1}{\lang1024\langfe1024\noproof\insrsid1784813 is always the first Wii Remote, and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid1784813 WiiGuitar1}{\insrsid1784813 is always the first Wii Guitar, etc.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1784813 {\insrsid1784813
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1784813 {\insrsid1784813 You can avoid that by adding \'93}{\b\insrsid1784813\charrsid1784813 Wiimote.}{\insrsid1784813 \'94
|
|
in front of the expansion type. Eg. \'93}{\b\insrsid1784813 Wiimote1.BalanceBoard.TopLeft}{\insrsid1784813 \'94. When you do that, it tells GlovePIE to merge Wiimotes and Balance Boards into the same
|
|
category with a shared numbering system, in which case }{\b\insrsid1784813\charrsid1784813 Wiimote1}{\insrsid1784813 and }{\b\insrsid1784813\charrsid1784813 BalanceBoard1}{\insrsid1784813 now refer to the same device.}{\insrsid1784813\charrsid12065226
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid1784813
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905 To tell whether a Nunchuk, C}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 lassic controller}{\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905 , Guitar}{\lang1024\langfe1024\noproof\insrsid12065226 , Drum Kit, DJ Hero Turntable, Wii Motion Plus}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905 or BalanceBoard }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 is plugged in, use these values:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid16459398\charrsid1784813 Wiimote.HasNunc}{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid1784813 huck
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid1784813 Wiimote.HasClassic
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\b\cf6\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\b\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 Wiimote.HasMotionPlus
|
|
\par }{\b\cf6\lang1024\langfe1024\noproof\insrsid16459398\charrsid1784813 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\b\lang1024\langfe1024\noproof\insrsid16459398\charrsid1784813 Wiimote.HasBalanceBoard
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12065226 {\b\cf6\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\b\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 Wiimote.HasGuitar
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\b\cf6\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\b\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 Wiimote.HasDrums
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\b\cf6\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\b\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 Wiimote.HasTurntable
|
|
\par }{\b\cf6\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\b\lang1024\langfe1024\noproof\insrsid12065226\charrsid1784813 Wiimote.HasBladeFX
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12065226\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905 They are true or false. }{\lang1024\langfe1024\noproof\insrsid1784813 They are less useful when they have their own separate categories.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905
|
|
Note that GlovePIE now knows the difference between classic controllers and guitar controllers. Old guitar scripts should still work, as long as they didn\rquote t use HasClassic to detect the guitar.}{
|
|
\lang1024\langfe1024\noproof\insrsid13589072\charrsid2696905 But new guitar scripts won\rquote t work if you have a real classic controller plugged in}{\lang1024\langfe1024\noproof\insrsid12065226 instead}{
|
|
\lang1024\langfe1024\noproof\insrsid13589072\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905 The Balance board doesn\rquote
|
|
t really plug into the expansion port of a real Wiimote. But the Balance Board has its own built in dummy Wiimote.}{\lang1024\langfe1024\noproof\insrsid13589072\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid1784813
|
|
Normally they are added to a separate category.}{\lang1024\langfe1024\noproof\insrsid12065226
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid12065226
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13589072\charrsid2696905 S
|
|
o if you have one real Wiimote, and one Balance Board, then Wiimote1 might be your real Wiimote, and Wiimote2 might be the Balance Board. Then Wiimote1.HasBalanceBoard will be false, and Wiimote2.HasBalanceBoard will be true. You could then the read the b
|
|
alance board by reading Wiimote2.BalanceBoard.Weight or you could read the balance board by reading BalanceBoard2.Weight (which is just a shorter way of saying Wiimote2.BalanceBoard.Weight).}{\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid16459398\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13589072\charrsid2696905 To detect which expansion is plugged in you can also use these, w
|
|
hich return a number that says which expansion it is:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13589072\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid1784813 Wiimote.Expansion
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid16459398\charrsid1784813 Wiimote.Expansion2
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813 Wiimote.Expansion3
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid1784813 Wiimote.Expansion}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 will be one of these values:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 0: No expansion
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 1: Unidentified expansion, or not plugged in properly
|
|
\par 2: Nunchuk
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 3: Classic cont
|
|
roller, WiiGuitar or anything compatable with a classic controller (anything that can be used to navigate the Wii Home menu has this value).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 4: ??
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 5: ??
|
|
\par 6: Balance Board
|
|
\par \'85Other values are possible if someone creates a new expansion.
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid1784813 Wiimote.Expansion2}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 will be one of these values:
|
|
\par
|
|
\par 0: No expansion
|
|
\par 1: Unidentified expansion, or not plugged in properly
|
|
\par 2: Really a nunchuk
|
|
\par 3: Really a classic controller
|
|
\par 4: Really a balance board
|
|
\par }{\lang1024\langfe1024\noproof\insrsid1784813 5: Really a musical instrument}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 controller
|
|
\par \'85Other values are possible if someone creates a new expansion.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\b\cf6\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\b\lang1024\langfe1024\noproof\insrsid1784813 }{\b\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813 Wiimote.Expansion3}{\lang1024\langfe1024\noproof\insrsid1784813 identifies which kind of musical instrument it is.}{
|
|
\lang1024\langfe1024\noproof\insrsid1784813\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
Note that these values all have 2 added to them, compared to the decoded values of the last two bytes of the expansion registers.}{\lang1024\langfe1024\noproof\insrsid948543
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid8135899
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8135899 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8135899 {\*\bkmkstart _Toc251216727}Motion Plus{\*\bkmkend _Toc251216727}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8135899 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid8135899
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8135899 {\insrsid8135899 You can read the Motion Plus\rquote s 3 gyros like this:
|
|
\par
|
|
\par }{\b\insrsid8135899 Wiimote.MotionPlus.YawSpeed
|
|
\par Wiimote.MotionPlus.PitchSpeed
|
|
\par Wiimote.MotionPlus.RollSpeed}{\insrsid8135899
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8135899 {\insrsid8135899 The speeds are Relative to the Wiimote\rquote s orientation. So PitchSpeed isn\rquote
|
|
t the same as Delta(Wiimote.Pitch)/Delta(TimeStamp).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8135899 {\insrsid8135899
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8135899 {\insrsid8135899 The
|
|
Motion Plus is automatically used to calculate the Wiimote.Yaw, Wiimote.Pitch and Wiimote.Roll, and many other values, so you can use Motion Plus without manually reading the 3 gyro speeds, if you prefer.}{\insrsid8135899\charrsid8135899
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid288235 \page }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216728}Nunchuk{\*\bkmkend _Toc251216728}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\cf6\lang1024\langfe1024\noproof\insrsid13708946\charrsid13708946 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid13708946 Gestures! }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 The Nunchuk has accelerometers too! Most of the same acceleration values and rotation values are the same as the Wiimote, so see the }{
|
|
\lang1024\langfe1024\noproof\insrsid13708946 gesture and motion }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 description}{\lang1024\langfe1024\noproof\insrsid13708946 s}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
in the sections above. The difference is}{\lang1024\langfe1024\noproof\insrsid7628239 that}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 the Nunchuk accelerom}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 eters have }{
|
|
\lang1024\langfe1024\noproof\insrsid15367405 a }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 lower range.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13708946 Nunchuks share the number of the Wii Remote they are connected to. So \'93Wiimote1\'94 and \'93
|
|
Nunchuk1\'94 are connected. If Wiimote2 has a Nunchuk, but Wiimote1 doesn\rquote t, that Nunchuk is still called \'93Nunchuk2\'94 because it is connected to Wiimote2.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13708946\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 The Nunchuk also has two buttons. NOTE: Unlike a playstation}{
|
|
\lang1024\langfe1024\noproof\insrsid10698633 or xbox}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 controller, pushing in the joystick is not a button, don\rquote t try it. The two buttons are:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid1784813 CButton}{\b\lang1024\langfe1024\noproof\insrsid1784813 }{\lang1024\langfe1024\noproof\insrsid1784813 (}{\cf6\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813 {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}NEW}{\cf6\lang1024\langfe1024\noproof\insrsid1784813 {\*\xmlclose}!:}{\lang1024\langfe1024\noproof\insrsid1784813 aka }{\b\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813 C}{
|
|
\lang1024\langfe1024\noproof\insrsid1784813 )}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid1784813
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid1784813 ZButton}{\b\lang1024\langfe1024\noproof\insrsid1784813 }{\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813 (}{\cf6\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\cf6\lang1024\langfe1024\noproof\insrsid1784813 :}{\b\lang1024\langfe1024\noproof\insrsid1784813 }{\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813 aka}{
|
|
\b\lang1024\langfe1024\noproof\insrsid1784813 Z}{\lang1024\langfe1024\noproof\insrsid1784813\charrsid1784813 )}{\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12588165 {\lang1024\langfe1024\noproof\insrsid12588165
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12588165 {\lang1024\langfe1024\noproof\insrsid12588165 Y}{\lang1024\langfe1024\noproof\insrsid12588165\charrsid2696905 ou }{
|
|
\lang1024\langfe1024\noproof\insrsid12588165 no longer }{\lang1024\langfe1024\noproof\insrsid12588165\charrsid2696905 need the w}{\lang1024\langfe1024\noproof\insrsid12588165 ord \'93}{\b\lang1024\langfe1024\noproof\insrsid12588165\charrsid12588165 Button
|
|
}{\lang1024\langfe1024\noproof\insrsid12588165 \'94 on the end, even though}{\lang1024\langfe1024\noproof\insrsid12588165\charrsid2696905 }{\b\lang1024\langfe1024\noproof\insrsid12588165\charrsid12588165 Z}{
|
|
\lang1024\langfe1024\noproof\insrsid12588165\charrsid2696905 is the name of an a}{\lang1024\langfe1024\noproof\insrsid12588165 xis, }{\lang1024\langfe1024\noproof\insrsid12588165\charrsid2696905 I\rquote m }{\lang1024\langfe1024\noproof\insrsid12588165
|
|
no longer }{\lang1024\langfe1024\noproof\insrsid12588165\charrsid2696905 reserving it for future axis use.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid10698633
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 The Nunchuk also has a joystick. It uses the following values:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10698633\charrsid10698633 JoyX}{\lang1024\langfe1024\noproof\insrsid10698633 (}{\cf6\lang1024\langfe1024\noproof\insrsid10698633\charrsid10698633 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid10698633 aka }{\b\lang1024\langfe1024\noproof\insrsid10698633\charrsid10698633 StickX}{\lang1024\langfe1024\noproof\insrsid10698633 )
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid10698633 JoyY}{\lang1024\langfe1024\noproof\insrsid10698633 (}{\cf6\lang1024\langfe1024\noproof\insrsid10698633\charrsid10698633 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid10698633 aka }{\b\lang1024\langfe1024\noproof\insrsid10698633\charrsid10698633 StickY}{\lang1024\langfe1024\noproof\insrsid10698633 )}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par
|
|
\par JoyX is -1 to the left, 0 in the middle, and +1 to the right.
|
|
\par JoyY is -1 up, 0 in the middle, and +1 down.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 These are the same ranges}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 used by PPJoy}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 and other joysticks}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }{\cf6\lang1024\langfe1024\noproof\insrsid10617254\charrsid16014799 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid10617254 If you want to recalibrate the Nunchuk joystick if the Nunchuk\rquote s
|
|
built-in calibration isn\rquote t working, you can set }{\b\lang1024\langfe1024\noproof\insrsid10617254\charrsid10617254 Nunchuk.Calibrated}{\lang1024\langfe1024\noproof\insrsid10617254 to false. That will make it automatically recalibrate. A
|
|
fter setting it to false, you should move the joystick in a circle to let it know the maximum and minimum values.}{\lang1024\langfe1024\noproof\insrsid16014799 This will not change the values stored inside the Nunchuk.}{
|
|
\lang1024\langfe1024\noproof\insrsid10617254
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid12588165 You can also read the joystick as a vector [x, y]:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\b\lang1024\langfe1024\noproof\insrsid12588165\charrsid12588165 Joy}{\b\lang1024\langfe1024\noproof\insrsid12588165 }{
|
|
\b\lang1024\langfe1024\noproof\insrsid5375889 (}{\cf6\lang1024\langfe1024\noproof\insrsid5375889\charrsid5375889 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\b\lang1024\langfe1024\noproof\insrsid5375889 }{
|
|
\lang1024\langfe1024\noproof\insrsid12588165 aka }{\b\lang1024\langfe1024\noproof\insrsid12588165 Stick}{\b\lang1024\langfe1024\noproof\insrsid5375889 )}{\lang1024\langfe1024\noproof\insrsid12588165\charrsid12588165
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid12588165
|
|
\par eg. }{\b\lang1024\langfe1024\noproof\insrsid12588165 WASD = Nunchuk.Joy}{\lang1024\langfe1024\noproof\insrsid12588165
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5375889 You can even read the joystick as a 3D vector}{\lang1024\langfe1024\noproof\insrsid15367405 [x, y, z]}{\lang1024\langfe1024\noproof\insrsid5375889 :
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\b\cf6\lang1024\langfe1024\noproof\insrsid1848921\charrsid1848921 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\b\lang1024\langfe1024\noproof\insrsid1848921 }{\b\lang1024\langfe1024\noproof\insrsid5375889\charrsid5375889 Joy3D}{\lang1024\langfe1024\noproof\insrsid5375889 : Where the nunchuk
|
|
is pointing in 3D space, taking into account both rotation and the joystick. For example, to go up, you could either point the Nunchuk at the ceiling and push forward on the joystick, or roll it to the right}{\lang1024\langfe1024\noproof\insrsid15367405
|
|
and press left on the joystick, or point at the floor and push back on the joystick, etc. This allows movement in all directions, not just a flat plane. The nunchuk can never measure yaw, so yaw is assumed to be zero.}{
|
|
\lang1024\langfe1024\noproof\insrsid5375889\charrsid5375889
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid5375889
|
|
\par }{\cf6\lang1024\langfe1024\noproof\insrsid1848921\charrsid1848921 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid1848921 You can also read the 4 joystick directions like they were buttons:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid1848921 up, down, left, right}{\b\lang1024\langfe1024\noproof\insrsid1848921\charrsid1848921
|
|
\par }{\lang1024\langfe1024\noproof\insrsid1848921
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid1848921 Unlike the other Nunchuk values, these 4 d}{\lang1024\langfe1024\noproof\insrsid10957471
|
|
irections take into account whether}{\lang1024\langfe1024\noproof\insrsid1848921 you are looking at your watch}{\lang1024\langfe1024\noproof\insrsid10957471 , in which case the directions swap to match the new orientation.}{
|
|
\lang1024\langfe1024\noproof\insrsid1848921
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid1848921
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5375889 {\lang1024\langfe1024\noproof\insrsid5375889\charrsid2696905 The Nunchuk does }{\b\lang1024\langfe1024\noproof\insrsid5375889\charrsid10698633 NOT
|
|
}{\lang1024\langfe1024\noproof\insrsid5375889\charrsid2696905 have vibration, or a speaker}{\lang1024\langfe1024\noproof\insrsid5375889 , or gyros, or an L3 button when you push in the stick}{\lang1024\langfe1024\noproof\insrsid5375889\charrsid2696905 .}
|
|
{\lang1024\langfe1024\noproof\insrsid5375889 But it does have accelerometers.}{\lang1024\langfe1024\noproof\insrsid5375889\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid5375889
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid5375889 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\cf6\lang1024\langfe1024\noproof\insrsid5375889\charrsid5375889 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid5375889 Datel BladeFX Wireless Nunchuk
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5375889
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid5375889
|
|
The BladeFX Wireless Nunchuk is sometimes hard to detect from a regular Nunchuk. But if you unplug the BladeFX\rquote s adapter then plug it back in, it will be detected as a BladeFX.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid5375889
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid5375889 Nunchuk.IsBladeFX}{\lang1024\langfe1024\noproof\insrsid5375889 : true if the Nunchuk is a BladeFX.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid9530927 Nunchuk.BladeFXReplugged}{\lang1024\langfe1024\noproof\insrsid9530927 : if the BladeFX was unplugged then replugged.}{\lang1024\langfe1024\noproof\insrsid9530927\charrsid9530927
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5375889
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12588165 {\lang1024\langfe1024\noproof\insrsid5375889 T}{\lang1024\langfe1024\noproof\insrsid12588165 he \'93FX\'94 button can\rquote
|
|
t be read, but the Classic button can:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12588165 {\lang1024\langfe1024\noproof\insrsid12588165
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12588165 {\b\lang1024\langfe1024\noproof\insrsid5375889 Nunchuk.}{\b\lang1024\langfe1024\noproof\insrsid12588165 ClassicButton}{
|
|
\b\lang1024\langfe1024\noproof\insrsid5375889 : }{\lang1024\langfe1024\noproof\insrsid5375889 true while the classic button is held down and for half a second afterwards.}{\lang1024\langfe1024\noproof\insrsid12588165\charrsid5375889
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12588165 {\lang1024\langfe1024\noproof\insrsid12588165
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12588165 {\lang1024\langfe1024\noproof\insrsid12588165
|
|
Note that the Classic button has the side effect of toggling the nunchuk into classic controller mode, which disables the motion sensing while in that mode. }{\b\lang1024\langfe1024\noproof\insrsid12588165\charrsid12588165 ClassicButton}{
|
|
\lang1024\langfe1024\noproof\insrsid12588165 will stay true for about half a second after you release the button.}{\lang1024\langfe1024\noproof\insrsid5375889 Holding the button for more than 5 seconds will be recognised as unplugging the Nunchuk}{
|
|
\lang1024\langfe1024\noproof\insrsid12588165 )}{\lang1024\langfe1024\noproof\insrsid12588165\charrsid10698633
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid12588165
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\b\lang1024\langfe1024\noproof\insrsid5375889\charrsid5375889 Nunchuk.ClassicMode}{\lang1024\langfe1024\noproof\insrsid5375889 : True}{
|
|
\lang1024\langfe1024\noproof\insrsid12588165 if the BladeFX is in Classic }{\lang1024\langfe1024\noproof\insrsid5375889 controller }{\lang1024\langfe1024\noproof\insrsid12588165 mode
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12588165\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid288235 \page }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216729}Classic Controller{\*\bkmkend _Toc251216729}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13708946 {\lang1024\langfe1024\noproof\insrsid13708946 Classic controllers share the number of the Wii Remote they are connected to. So \'93Classic1\'94
|
|
and \'93Wiimote1\'94 are connected. If Wiimote2 has a Classic controller, but Wiimote1 doesn\rquote t, that Classic controller is still called \'93Classic2\'94 because it is connected to Wiimote2.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13708946\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 The classic controller does NOT have accelerometers }{
|
|
\lang1024\langfe1024\noproof\insrsid1848921 or gyros, }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 or rumble, or a speaker}{\lang1024\langfe1024\noproof\insrsid1848921 , or L3 and R3 buttons, or LEDs}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 !
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
The classic controller does have an unexplained lock button in the top centre, which physically opens and closes two slots in the back. The two slots can\rquote t connect to anything and seem totally pointless. The lock button can\rquote t be read.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par You can read the following buttons:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\langnp1036\insrsid13967550\charrsid9594416 a, b, x, y
|
|
\par Minus, Home, Plus
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid1848921 Up, Down, Left, Right}{\b\lang1024\langfe1024\noproof\insrsid1848921 }{\lang1024\langfe1024\noproof\insrsid1848921 (on the DPad)}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid1848921
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid1848921 ZL, ZR
|
|
\par LFull, and RFull}{\b\lang1024\langfe1024\noproof\insrsid10957471 }{\lang1024\langfe1024\noproof\insrsid10957471 (the click at the bottom of the L and R buttons)}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid10957471
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par They are either True or False.
|
|
\par
|
|
\par The L button and the R button (LFull, and RFull above) also have analog versions:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid10957471 L}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 , and }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid10957471 R}{
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 They will be between 0 and 1. Although mine won\rquote
|
|
t go below 0.03 when fully released, and yours may not reach 1 when fully pressed.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 There are also two joysticks}{\lang1024\langfe1024\noproof\insrsid10957471
|
|
and 1 D-Pad}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 . }{\lang1024\langfe1024\noproof\insrsid10957471 They are called }{\b\lang1024\langfe1024\noproof\insrsid10957471 LeftStick}{\lang1024\langfe1024\noproof\insrsid10957471 (or }{
|
|
\b\lang1024\langfe1024\noproof\insrsid10957471\charrsid10957471 Joy1}{\lang1024\langfe1024\noproof\insrsid10957471\charrsid10957471 )}{\lang1024\langfe1024\noproof\insrsid10957471 and }{\b\lang1024\langfe1024\noproof\insrsid10957471 RightStick}{
|
|
\lang1024\langfe1024\noproof\insrsid10957471 (or }{\b\lang1024\langfe1024\noproof\insrsid10957471 Joy2}{\lang1024\langfe1024\noproof\insrsid10957471 ), and }{\b\lang1024\langfe1024\noproof\insrsid10957471 DPad}{
|
|
\lang1024\langfe1024\noproof\insrsid10957471 .}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid10957471
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10957471\charrsid10957471 LeftStickX, LeftStick}{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid10957471 Y,
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10957471\charrsid10957471 RightStickX, RightStick}{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid10957471 Y}{\b\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10957471 DPadX, DPadY}{\b\lang1024\langfe1024\noproof\insrsid10957471\charrsid10957471
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10957471\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 They are between -1 and 1, the same as the Nunchuk joystick described above.}{\lang1024\langfe1024\noproof\insrsid13967550
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10957471
|
|
\par You can read the Sticks or the DPads as a vector [x, y]:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10957471 LeftStick}{\lang1024\langfe1024\noproof\insrsid10957471 (or }{\b\lang1024\langfe1024\noproof\insrsid10957471 Joy1}{\lang1024\langfe1024\noproof\insrsid10957471 )}{
|
|
\lang1024\langfe1024\noproof\insrsid10957471\charrsid10957471
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10957471 RightStick }{\lang1024\langfe1024\noproof\insrsid10957471 (or }{\b\lang1024\langfe1024\noproof\insrsid10957471 Joy2}{\lang1024\langfe1024\noproof\insrsid10957471 )}{
|
|
\lang1024\langfe1024\noproof\insrsid10957471\charrsid10957471
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10957471 DPad }{\b\lang1024\langfe1024\noproof\insrsid10957471\charrsid10957471
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid10957471 ButtonDir}{\lang1024\langfe1024\noproof\insrsid10957471 (this is actually the a, b, x, and y buttons pretending they are a DPad)}{\lang1024\langfe1024\noproof\insrsid948543\charrsid10957471
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10957471\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid948543 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid288235
|
|
\page }{\lang1024\langfe1024\noproof\insrsid6363932 {\*\bkmkstart _Toc251216730}Guitar Hero}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 Controller}{\lang1024\langfe1024\noproof\insrsid6363932 s}{
|
|
\lang1024\langfe1024\noproof\insrsid12668523 (for Wii)}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 {\*\bkmkend _Toc251216730}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 The }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 WiiGuitar}{
|
|
\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 comes with Guitar Hero 3}{\lang1024\langfe1024\noproof\insrsid6363932 or Guitar Hero World Tour}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
. It has 5 coloured fret buttons, which are either true or false. It has a strum switch which can be strummed upwards, or strummed downwards. You can hold down the strum switch in either position, or you can strum it
|
|
so that it is only held for a short time. The strum switch is not analog. There is a Plus and a Minus button on the Guitar. There is a whammy bar (a lever) which is analog. It will be between 0 and 1, although it's range is actually much less than that,
|
|
and varies between guitars. It also has a joystick.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
In addition, you can still use the buttons on the front of the Wiimote, which will be embedded in the guitar face. And you can use the accelerometers in the Wiimote to find the angle or motion of the Guit
|
|
ar. And you can play notes through the Wiimote speaker, and you can flash the lights on the Wiimote. I don't know whether you can feel the Wiimote vibrate or not. The IR will no longer work when the guitar is plugged in, and neither will the B button.
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 The }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 WiiGuitar}{
|
|
\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 values will only be true if a Guitar is plugged in. If a Classic controller or Nunchuk is plugged in, the values will always be false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
\par You can use the following }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 WiiGuitar}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 fields:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 Fret1, Fret2, Fret3, Fret4, Fret5}{
|
|
\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 : The five fret buttons counting from the end. These are either true or false. You can also use the names of the colours instead.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 Plus, Minus}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
: The + and - buttons on the guitar. They are true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 JoyX, JoyY}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905
|
|
: The joystick. It is between -1 and 1, like any joystick in GlovePIE.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 Joy}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 : The joystick as a 2D vector [x,y].
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 StrumUp}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 : True when the strum switch is held in the up position.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 StrumDown}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 : True when the strum switch is held in the down position.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 WhammyBar}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 : A value between 0 and 1.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid948543\charrsid10303981 Exists}{\lang1024\langfe1024\noproof\insrsid948543\charrsid2696905 : The same as Wiimote.HasGuitar. True if the guitar is attached, false if it isn't.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10572247
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid6363932 Guitar Hero World Tour has some extra values for the 5 extra touch-sensitive frets lower on the neck:
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid6363932
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid6363932 TouchFret1, TouchFret2, TouchFret3, TouchFret4, TouchFret5}{
|
|
\lang1024\langfe1024\noproof\insrsid7552277 : You can also use the names of the colours instead.}{\lang1024\langfe1024\noproof\insrsid6363932\charrsid7552277
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid6363932
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid4792824 TouchBar}{\lang1024\langfe1024\noproof\insrsid4792824 : An analog value between 0 and 1 representing where the bar is being touched.}{\lang1024\langfe1024\noproof\insrsid4792824\charrsid4792824
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid10572247 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\cf6\lang1024\langfe1024\noproof\insrsid288235 {\*\xmlopen\xmlns1{\factoidname stockticker}}\page }{\cf6\lang1024\langfe1024\noproof\insrsid13382478\charrsid2696905 {\*\bkmkstart _Toc251216731}{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}
|
|
{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid13382478\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905 Wii Fit Balance Board{\*\bkmkend _Toc251216731}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905
|
|
The Wii Fit (or Wii Fitness) Balance Board is a new Wii controller that you stand on. It has four weight/pressure sensors, one in each corner.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid12668523 Balance Boards }{\lang1024\langfe1024\noproof\insrsid10303981
|
|
support is working now, although I haven\rquote t implemented any gesture recognition like walking, jumping, crouching, etc. yet.}{\lang1024\langfe1024\noproof\insrsid12668523 }{\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid12668523 The Balance Board }{\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905
|
|
behaves like an extra dummy Wiimote with a Balance Board attachment plugged in. The dummy Wiimote\rquote s LED1 controls the }{\lang1024\langfe1024\noproof\insrsid14162355\charrsid2696905 power }{
|
|
\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905 LED on the top of the board, and the dummy Wiimote\rquote s A button is actually the }{\lang1024\langfe1024\noproof\insrsid14162355\charrsid2696905 power }{
|
|
\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905 button on the Balance Board. The other things }{\lang1024\langfe1024\noproof\insrsid14162355\charrsid2696905 on the dummy Wiimote do nothing, except the built-in balance board \'93attachment\'94
|
|
.}{\lang1024\langfe1024\noproof\insrsid10572247\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid10572247
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\cf6\lang1024\langfe1024\noproof\insrsid13708946\charrsid13708946 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid13708946 The Balance Board is now in a separate category from Wii Remotes, so you can read from the first Balance Board with \'93}{\b\lang1024\langfe1024\noproof\insrsid13708946 BalanceBoard1}{
|
|
\lang1024\langfe1024\noproof\insrsid13708946 \'94. }{\lang1024\langfe1024\noproof\insrsid13708946\charrsid13708946
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid13708946
|
|
\par You can read your total weight like this:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13708946 Weight}{\b\lang1024\langfe1024\noproof\insrsid13708946\charrsid13708946
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13708946
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13708946 {\lang1024\langfe1024\noproof\insrsid13708946 You can read the weights on the four sensors (in kilograms) like this:}{
|
|
\lang1024\langfe1024\noproof\insrsid13708946\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid13708946
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid13708946 FrontLeft, FrontRight
|
|
\par BackLeft, BackRight}{\b\lang1024\langfe1024\noproof\insrsid13708946\charrsid13708946
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13708946
|
|
\par You can also read the weights on each side like this:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13708946 WeightFront, WeightBack,
|
|
\par WeightLeft, WeightRight}{\b\lang1024\langfe1024\noproof\insrsid13708946\charrsid13708946
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13708946\charrsid13708946
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14162355\charrsid2696905 You can read the raw values of the four sensors like this:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid14162355\charrsid10303981 BalanceBoard.RawFrontLeft
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14162355 {\b\lang1024\langfe1024\noproof\insrsid14162355\charrsid10303981 BalanceBoard.RawFrontRight
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14162355 {\b\lang1024\langfe1024\noproof\insrsid14162355\charrsid10303981 BalanceBoard.RawBackLeft
|
|
\par BalanceBoard.RawBackRight
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12668523
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14162355 {\lang1024\langfe1024\noproof\insrsid12668523
|
|
Unlike the previous version, the sensors now have the correct names. The back is the side with the power button.}{\lang1024\langfe1024\noproof\insrsid12668523\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14162355 {\lang1024\langfe1024\noproof\insrsid14162355\charrsid2696905
|
|
\par Different sensors vary quite a bit.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid535811
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid535811\charrsid2696905 There are some unknown values}{
|
|
\lang1024\langfe1024\noproof\insrsid16123643\charrsid2696905 you can try}{\lang1024\langfe1024\noproof\insrsid535811\charrsid2696905 :
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13708946
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid535811\charrsid13708946 BalanceBoard.EE
|
|
\par BalanceBoard.QuestionQuestion
|
|
\par }{\lang1024\langfe1024\noproof\insrsid535811\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16123643\charrsid2696905 You can set the LED like this:}{\lang1024\langfe1024\noproof\insrsid535811\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16123643\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13708946 eg. }{\lang1024\langfe1024\noproof\insrsid16123643\charrsid2696905 BalanceBoard.LED = true
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid16123643\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid16123643\charrsid2696905 You can read the button like this:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid16123643\charrsid13708946 BalanceBoard.Button}{\b\lang1024\langfe1024\noproof\insrsid16123643
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid4792824
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4792824 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\cf6\lang1024\langfe1024\noproof\insrsid288235 \page }{\cf6\lang1024\langfe1024\noproof\insrsid11413716\charrsid11413716 {\*\bkmkstart _Toc251216732}{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid11413716 }{\lang1024\langfe1024\noproof\insrsid4792824 Drum Kit (for Wii){\*\bkmkend _Toc251216732}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid4792824
|
|
\par }{\cf6\lang1024\langfe1024\noproof\insrsid5456406\charrsid5456406 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid5456406 Versions prior to 0.43 couldn\rquote t detect the Drum Kit due to a bug. I
|
|
t has theoretically been fixed.}{\lang1024\langfe1024\noproof\insrsid5456406\charrsid5456406
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid5456406
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid11413716 The drum kit comes with the game Guitar Hero World Tour.}{
|
|
\b\lang1024\langfe1024\noproof\insrsid11413716 }{\lang1024\langfe1024\noproof\insrsid11413716 Drums for the game \'93Rock Band\'94 are {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose} and are not supported (yet).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid11413716
|
|
\par You access it with \'93}{\b\lang1024\langfe1024\noproof\insrsid11413716\charrsid11413716 WiiDrums}{\lang1024\langfe1024\noproof\insrsid11413716 \'94 or \'93}{\b\lang1024\langfe1024\noproof\insrsid11413716\charrsid11413716 WiiDrumKit}{
|
|
\lang1024\langfe1024\noproof\insrsid11413716 \'94.
|
|
\par
|
|
\par It has the following fields}{\lang1024\langfe1024\noproof\insrsid288235 which are like buttons}{\lang1024\langfe1024\noproof\insrsid11413716 :
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid11413716 Red, Blue, Green, Yellow, {\*\xmlopen\xmlns1{\factoidname City}}{\*\xmlopen\xmlns1{\factoidname place}}{\*\xmlopen\xmlns1{\factoidname stockticker}}Orange{\*\xmlclose}{\*\xmlclose}{\*\xmlclose},
|
|
\par Pedal }{\lang1024\langfe1024\noproof\insrsid11413716 (or }{\b\lang1024\langfe1024\noproof\insrsid11413716 Bass}{\lang1024\langfe1024\noproof\insrsid11413716 )
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid11413716 HiHat }{\lang1024\langfe1024\noproof\insrsid11413716 (you need to build this pedal yourself and plug it into the unused plug)
|
|
\par }{\lang1024\langfe1024\noproof\insrsid288235
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid288235
|
|
And it has the following fields which are analog and represent how fast you are currently hitting each drum:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid288235
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid288235 RedSpeed, BlueSpeed, GreenSpeed, YellowSpeed, OrangeSpeed,
|
|
\par PedalSpeed}{\lang1024\langfe1024\noproof\insrsid288235 (or }{\b\lang1024\langfe1024\noproof\insrsid288235\charrsid288235 BassSpeed}{\lang1024\langfe1024\noproof\insrsid288235 )
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid288235\charrsid288235 HiHatSpeed}{\b\lang1024\langfe1024\noproof\insrsid288235
|
|
\par Speed
|
|
\par }{\lang1024\langfe1024\noproof\insrsid288235
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid288235 HasSpeed}{\lang1024\langfe1024\noproof\insrsid288235 is true or false and tells you if the speed is known.}{\lang1024\langfe1024\noproof\insrsid288235\charrsid288235
|
|
\par }{\lang1024\langfe1024\noproof\insrsid288235
|
|
\par And it has these buttons and axes:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid288235 Plus, Minus, JoyX, JoyY, Joy}{\lang1024\langfe1024\noproof\insrsid288235
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid288235
|
|
\par And these values from the Wiimote itself which you can reach at the top of the drum kit:}{\lang1024\langfe1024\noproof\insrsid288235\charrsid288235
|
|
\par }{\lang1024\langfe1024\noproof\insrsid288235
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid288235 {\b\lang1024\langfe1024\noproof\insrsid288235 DPad, DPadUp, DPadDown, DPadLeft, DPadRight}{\lang1024\langfe1024\noproof\insrsid288235 (these alr
|
|
eady compensate for the rotation)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid288235 {\b\lang1024\langfe1024\noproof\insrsid288235 A, Home, One, Two
|
|
\par WiimoteMinus, WiimotePlus}{\lang1024\langfe1024\noproof\insrsid288235 (not to be confused with the other }{\b\lang1024\langfe1024\noproof\insrsid288235 Minus}{\lang1024\langfe1024\noproof\insrsid288235 and }{\b\lang1024\langfe1024\noproof\insrsid288235
|
|
Plus}{\lang1024\langfe1024\noproof\insrsid288235 buttons)}{\lang1024\langfe1024\noproof\insrsid288235\charrsid6882724
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid288235 LedLevel}{\lang1024\langfe1024\noproof\insrsid288235 (a level meter, set it to the range 0 to 1)
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid288235 Leds, Led1, Led2, Led3, Led4, LedPlayer}{\lang1024\langfe1024\noproof\insrsid288235
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid288235 Speaker, Mute, SampleRate, Volume, Frequency, Rumble}{\lang1024\langfe1024\noproof\insrsid288235\charrsid6882724
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid288235\charrsid288235
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4792824 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\cf6\lang1024\langfe1024\noproof\insrsid288235 \page }{\cf6\lang1024\langfe1024\noproof\insrsid6882724\charrsid6882724 {\*\bkmkstart _Toc251216733}{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid6882724
|
|
}{\lang1024\langfe1024\noproof\insrsid4792824 DJ Hero Turntable (for Wii){\*\bkmkend _Toc251216733}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\lang1024\langfe1024\noproof\insrsid4792824
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5456406 {\cf6\lang1024\langfe1024\noproof\insrsid5456406\charrsid5456406 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid5456406 Versions prior to 0.43 couldn\rquote t detect the Turntable due to a bug. It has theoretically been fixed.}{\lang1024\langfe1024\noproof\insrsid5456406\charrsid5456406
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid5456406
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4792824 This turntable comes with the game DJ Hero. It has a record turntable which can spin infinitely in each direction, with 3 coloured finger buttons on it: red, green, and blue. It also has a slid
|
|
er for mixing, a \'93Euphoria\'94 (star power) button, an effects dial, and plus and minus buttons. The turntable can be plugged into either side of the base, or into both sides at once (if you have 2).}{
|
|
\lang1024\langfe1024\noproof\insrsid4792824\charrsid4792824
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid4792824
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid4792824 Since I don\rquote t have a DJ Hero controller, I\rquote m relying on th
|
|
e incomplete protocol specifications posted on the web, and it is totally untested.}{\lang1024\langfe1024\noproof\insrsid6882724 Please send me your results and more information.}{\lang1024\langfe1024\noproof\insrsid4792824\charrsid4792824
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid4792824
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid4792824 The Turntables are accessed with \'93}{\b\lang1024\langfe1024\noproof\insrsid4792824\charrsid4792824
|
|
WiiTurntable}{\lang1024\langfe1024\noproof\insrsid4792824 \'94 followed by an optional number, then a dot, then the field name, eg. \'93}{\b\lang1024\langfe1024\noproof\insrsid4792824\charrsid4792824 WiiTurntable.RightGreen}{
|
|
\lang1024\langfe1024\noproof\insrsid4792824 \'94.}{\lang1024\langfe1024\noproof\insrsid4792824\charrsid4792824
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid4792824
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4792824 The buttons are like this (left and right are for which side it is plugged into):
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid4792824 LeftGreen, RightGreen, Green
|
|
\par LeftBlue, RightBlue, Blue
|
|
\par LeftRed, RightRed, Red
|
|
\par Euphoria, Plus, Minus
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4792824 The turntable spin is accessed like this:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid4792824 RawLeftTurntable, RawRightTurntable}{\b\lang1024\langfe1024\noproof\insrsid6882724 }{
|
|
\lang1024\langfe1024\noproof\insrsid6882724 (units and meaning are completely unknown)}{\lang1024\langfe1024\noproof\insrsid4792824\charrsid6882724
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\b\lang1024\langfe1024\noproof\insrsid6882724
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6882724 You can also access these values:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid6882724 StickX, StickY, Stick
|
|
\par EffectDial
|
|
\par CrossFade
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid6882724 And these fields correspond to the buttons from the Wii Remote that you can press if you open the lid:
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid948543 {\lang1024\langfe1024\noproof\insrsid6882724
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid6882724 DPad, DPadUp, DPadDown, DPadLeft, DPadRight}{\lang1024\langfe1024\noproof\insrsid6882724 (these already compensate for the rotation)
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid6882724 A, Home, One, Two
|
|
\par WiimoteMinus, WiimotePlus}{\lang1024\langfe1024\noproof\insrsid6882724 (not to be confused with the other }{\b\lang1024\langfe1024\noproof\insrsid6882724 Minus}{\lang1024\langfe1024\noproof\insrsid6882724 and }{
|
|
\b\lang1024\langfe1024\noproof\insrsid6882724 Plus}{\lang1024\langfe1024\noproof\insrsid6882724 buttons)}{\lang1024\langfe1024\noproof\insrsid6882724\charrsid6882724
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid6882724 LedLevel}{\lang1024\langfe1024\noproof\insrsid6882724 (a level meter, set it to the range 0 to 1)
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid6882724 Leds, Led1, Led2, Led3, Led4, LedPlayer}{\lang1024\langfe1024\noproof\insrsid6882724
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid6882724 Speaker, Mute, SampleRate, Volume, Frequency, Rumble}{\lang1024\langfe1024\noproof\insrsid6882724\charrsid6882724
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216734}Low level stuff{\*\bkmkend _Toc251216734}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can read the data reports from the Wiimote with:
|
|
\par
|
|
\par debug = Wiimote.InByteString
|
|
\par
|
|
\par Or you can read them individually with:
|
|
\par
|
|
\par var.a = Wiimote.InReport
|
|
\par var.b = Wiimote.InByte1
|
|
\par
|
|
\par You can send data reports to the Wiimote with this function (it has no dot):
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 WiimoteSend(1, 0x12, 1, 0x33)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
The first parameter of WiimoteSend is the Wiimote number you want to send it to, normally 1. The second parameter is the report
|
|
number. The remaining parameters are the report payload. In this case, the report tells the Wiimote to start vibrating, and to send data via report 0x33.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
The one-byte reports can also be sent another way by setting one of these values (it will only send the report when the value changes):
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
Wiimote.Report11, Wiimote.Report13, Wiimote.Report14, Wiimote.Report15, Wiimote.Report19, Wiimote.Report1A
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can set bytes in the Wiimote\rquote
|
|
s onboard memory (where Miis are stored) with the WiimotePoke command, and read bytes from its memory with the WiimotePeek command.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par WiimotePoke(1, 0x04B00033, 0x33)
|
|
\par var.value = WiimotePeek(1, 0x04B00033)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
The first parameter is optional, and it is the Wiimote number. The second parameter is the address. The third parameter is the value you want to set it to (between 0 and 255).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
Note that the Nunchuk and Classic Controller have their own memory space which is mapped to the Wiimote\rquote s when they are plugged in.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid16123643\charrsid2696905 You can set the Channel with Wiimote.Channel. The Channel should be a hexa
|
|
decimal number between 0x30 and 0x3F, which determines which information the Wiimote sends back to the computer.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid16123643\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 Don\rquote
|
|
t use these low level functions unless you know what you are doing and have read the }{\field{\*\fldinst {\lang1024\langfe1024\noproof\insrsid13708946 HYPERLINK "http://}{\lang1024\langfe1024\noproof\insrsid13708946\charrsid13708946
|
|
www.wiibrew.org/Wiimote}{\lang1024\langfe1024\noproof\insrsid13708946 " }{\lang1024\langfe1024\noproof\insrsid4008458 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b0200000017000000180000007700770077002e0077006900690062007200650077002e006f00720067002f005700690069006d006f00740065000000e0c9ea79f9bace118c8200aa004ba90b5600000068007400740070003a002f002f007700770077002e007700690069006200
|
|
7200650077002e006f00720067002f005700690069006d006f00740065000000795881f43b1d7f48af2c825dc485276300000000a5ab0000000100}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid13708946\charrsid10486978 www.wiibrew.org/Wiimote}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
page. One person has bricked their nunchuk by experimenting with writing to all its addresses (although that is how we discovered how the nunchuk works).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13967550 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 {\*\bkmkstart _Toc251216735}Multiple Wiimotes{\*\bkmkend _Toc251216735}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can tell how many Wiimotes there are with }{
|
|
\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid288235 Wiimote.Count}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can access a particular wiimote by putting a number after the word \'93wiimote
|
|
\'94 and before the dot. For example:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 Enter = wiimote2.A
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par You can tell whether a particular Wiimote exists with }{\b\lang1024\langfe1024\noproof\insrsid13967550\charrsid288235 Wiimote.Exists}{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 You can\rquote t read the Serial number (as text) anymore wi
|
|
th Wiimote.Serial, because I disabled it. It rebooted computers with BlueSoleil when you tried to read the serial.}{\lang1024\langfe1024\noproof\insrsid288235
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13967550 {\lang1024\langfe1024\noproof\insrsid288235
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 Don\rquote t forget to sync both Wiimotes with the PC before you try to use them.
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4152096 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13967550\charrsid2696905 \page
|
|
\par }\pard \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 {\*\bkmkstart _Toc251216736}P5 Glove
|
|
{\*\bkmkend _Toc251216736}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 You can read the P5 Virtual Reality Glove values using either the \'93P5\'94
|
|
object, or the \'93Glove\'94 object. Using Glove is better if you want to put a number after it (\'93P52\'94 would look silly).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
The Virtual Reality glove has lots of different fields you can set, in four main categories: Buttons, Finger bends, Location, and Rotation.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4152096 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 {\*\bkmkstart _Toc251216737}Buttons{\*\bkmkend _Toc251216737}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
The P5 Glove has 4 buttons on the back, labelled A, B, C, and D. The D button doubles as the Power button. You can only read the D button while the user is turning the glove on (while the user is turning the glove off, the D but
|
|
ton is always false). If you want to use the D button, you need to tell the user to double click it, (to your script it will look like a single click).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
\par You can read them like this:
|
|
\par
|
|
\par debug = P5.A
|
|
\par
|
|
\par They are either true or false.
|
|
\par
|
|
\par If the glove is out of range, or switched off, or behind something, they will always be false.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4152096 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905 {\*\bkmkstart _Toc251216738}Fingers{\*\bkmkend _Toc251216738}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
The five fingers are called Thumb, Index, Middle, Ring and Pinky. They return a value between 0 and 63 (unless you assign them to something true or false, like a key, then they return true if >= 32)}{
|
|
\lang1024\langfe1024\noproof\insrsid6255399\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid4152096\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6255399\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid6255399\charrsid2696905 0 means as straight as the maximum straightness for that finger during calibration.
|
|
|
|
\par 63 means as bent as the maximum bent-ness during calibration.
|
|
\par
|
|
\par You use them like this:
|
|
\par
|
|
\par Enter = p5.Index > 32
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid860613 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905 Raw Finger Bends
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid6255399\charrsid2696905 If you want to know t
|
|
he raw bend sensor values, then you can get an approximate version by reading the values AbsoluteThumb, AbsoluteIndex, AbsoluteMiddle, AbsoluteRing, and AbsolutePinky. They are }{\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
converted from the 0 to 63 values}{\lang1024\langfe1024\noproof\insrsid6255399\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905 so it won\rquote t give you more precision, or tell
|
|
you if it is outside the calibration range. But it will let you know what raw bend sensor value it corresponds to. The raw bend sensor values are backwards (small means bent) and may be roughly between 400 and 1000. These values are less useful than the
|
|
ones above.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid860613 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905 Joint Angles
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
If you want to know what angles the bend values represent for the different finger joints, then you can use the ThumbProximal, ThumbMedial, ThumbDistal, IndexProximal, IndexMedial, IndexDistal, etc. values.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905 Proximal is the closes
|
|
t joint on your finger where it joins the hand, Medial is the middle one, and Distal is the finger tip joint. Note that the thumb\rquote s proximal joint is actually INSIDE your hand.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905 These angles are only guesses, since the P5 only returns one value per finger
|
|
between 0 and 63. They only work if you calibrate the glove to the range: fingers completely flat to fingers bent as much as possible.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid860613 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905 Index Fingertip Position}{\lang1024\langfe1024\noproof\insrsid6255399\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
You can find the position of the index finger tip by using the P5.IndexPos vector. It is }{\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905 measured }{\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
in P5 Units (51.2ths of an inch, or half a mm) but you can convert it to whatever units you want. It is unfiltered, so you should use the Smooth function}{\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
, preferably with a both an average and a deadband parameter. It is calculated based on the position of LED 4, and the joint angles above. It is not very reliable, it is more experimental.}{\lang1024\langfe1024\noproof\insrsid860613\charrsid2696905
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4152096 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid9458590 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905 Finger Gestures
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
You can recognize various hand-shapes in GlovePIE by using the 5 letter codes for fingers. Each letter corresponds to one finger, and can be either \'93l\'94 (L) for straight, \'93r\'94 for partly bent, \'93n\'94 for completely bent, or \'93x\'94 for \'93
|
|
don\rquote t care\'94. Note that the shape of the letter corresponds to the shape of the finger.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905 So for example, to find out if the user is pointing, use this:
|
|
\par
|
|
\par debug = p5.xlnnn
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905 The first letter x means don\rquote
|
|
t care about the thumb. The second letter (l) means the index finger must be straight. The third letter (n) means the middle finger must be completely bent, and the same for the last two fingers.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par Note that the thumb comes first in these codes, even if it is your left hand.
|
|
\par
|
|
\par You can use any five-letter combination of those letters.
|
|
\par
|
|
\par It will be either true or false.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905 You can }{\b\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905 set}{
|
|
\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905 the values of }{\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905 p5.maxl and p5.minn }{\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
to values between 0 and 63 if you don\rquote t like the default }{\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905 bend amounts that correspond to those three ranges.}{\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid9458590 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905 Finger Velocity and Acceleration
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
I stupidly decided to use the absolute values for velocity and acceleration. So they will be in the opposite direction to what you expect, and have a different magnitude. Sorry.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905 They are
|
|
FingerVelocity0, FingerVelocity1, FingerVelocity2, FingerVelocity3, and FingerVelocity4 for velocity, and FingerAcceleration0, etc. for acceleration.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par These values probably need smoothing, or they aren\rquote t very useful.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid6233452 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905 Values that have nothing to do with Finger Bends}{\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
Beware of values like ThumbUp or FingersForwards. They have absolutely nothing to do with the thumb or finger bends, and are actually about the glove\rquote s ROTATION. They say what direction those parts WOULD be pointing IF they were not bent at all.}{
|
|
\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9458590 {\lang1024\langfe1024\noproof\insrsid9458590\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid6233452 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905 {\*\bkmkstart _Toc251216739}Location{\*\bkmkend _Toc251216739}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905 The glove\rquote
|
|
s filtered location is given by P5.x, P5.y, and P5.z. Or you can read them as a vector with P5.Pos.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
The units are in P5 Units by default. P5 Units are equal to a 51.2th of an inch, or roughly half a mm. But because GlovePIE supports units, you can read these values in any units that you want, like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
\par debug = p5.x in cm
|
|
\par
|
|
\par Also GlovePIE allows you to compare values that are in different units like this:
|
|
\par
|
|
\par Enter = p5.x > 1.5 inches
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905 GlovePIE uses Left-Handed coordinates, like Direct3D
|
|
does (which was a bad decision in hindsight). So x is the sideways position, with negative to the left and positive to the right. y is the vertical position with negative down and positive up. And z is the forwards/backwards position with negative away f
|
|
rom the screen and positive towards the screen. Note that the z value will always be negative, since you can\rquote t physically move the hand past the receptor. That makes z values confusing, and I\rquote m sorry. Just get used to negative numbers.
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid16274356 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905 Filtering
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905 You can }{\b\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905 set}{
|
|
\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905
|
|
the amount of filtering with P5.FilterFrames and P5.FilterDistance. P5.FilterFrames is the number of past frames to average together with the current frame to calculate a smoother position. P5.FilterDistance is the minimum distance the glove has to move
|
|
in order to register any movement at all. It is good for keeping the position completely still even if you move the glove a tiny bit. It is in P5 Units by default, but you can use any units you want.}{
|
|
\lang1024\langfe1024\noproof\insrsid6233452\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905
|
|
\par eg.
|
|
\par
|
|
\par P5.FilterFrames = 10
|
|
\par P5.FilterDistance = 5 mm
|
|
\par debug = P5.x
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid16274356 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905 Unfiltered Position
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905
|
|
You can also read the unfiltered position of the glove using P5.AbsoluteX, P5.AbsoluteY and P5.AbsoluteZ. You can also read it as a vector with P5.AbsPos.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6233452 {\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid16274356 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905 Relative Mode
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905 Back in the dark ages of the P5 Glove, it was only ab
|
|
le to support Relative Mode. Relative Mode means it works like a 3D mouse. You can read its movements, but you can\rquote t tell where it is currently located in physical space. The advantage of relative mode is that it is smoother, and that it doesn
|
|
\rquote }{\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905 t matter if the rotation isn\rquote t calculated correctly. The disadvantage is that you don\rquote t know where the glove is.}{
|
|
\lang1024\langfe1024\noproof\insrsid16274356\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
You can read the Relative Mode position with P5.RelativeX, P5.RelativeY, and P5.RelativeZ, (or P5.RelativePos for a vector). The units are still in P5 Units.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
I recommend using RelativeMode (with the smooth function) for things like aiming where you don\rquote t care about the glove\rquote s position, and the normal x, y, and z values when you care about the position.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8801260 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905 LED Positions
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905 The glove has 8 yellow infra-red LEDs
|
|
mounted on it at fixed locations. The receptor needs to see one of them to calculate a rough position, and three of them to calculate a rotation. It can see a maximum of four of them at a time.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905 You can read the positions of each LED individually with P5.L
|
|
ed0x, P5.Led0y, P5.Led0z, P5.Led1x, P5.Led1y, P5.Led1z, \'85, P5.Led7x, P5.Led7y, P5.Led7z. The default units are P5 Units.}{\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905 You can also use P5.Led0Pos, etc. if you prefer a vector.}{
|
|
\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905 If the LED is visible it will return the actual position of the LED, otherwi
|
|
se it will guess the position based on the positions of the other LEDs it can see.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10308617 {\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10308617 {\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905 LED 0 is the top one above the right hand side of your wrist.
|
|
\par LED 1 is the one to the right of your little (pinky) finger.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905 LED 2 is the one on the left of your little (pinky) finger.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905 LED 3 is the one on the back of your hand.}{
|
|
\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
\par LED 4 is the one near your index finger.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905 LED 5 is the top one above your thumb.}{\lang1024\langfe1024\noproof\insrsid8801260\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905 LED 6 is the lower one on the right hand side of your wrist.
|
|
\par LED 7 is the lower one near your thumb.
|
|
\par
|
|
\par You can tell whether an LED is visible or not, using p5.Led0vis, etc.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905 \line
|
|
You can also find out the raw (well almost raw) tan values that the glove returns for that LED. There are 3 values. }{\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905 \'93h\'94
|
|
is the horizontal position measured by the sensor at the top of the receptor tower. Negative means left, positive means right. }{\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
512 means roughly 45 degrees to the left, -512 means roughly 45 degrees to the right. It can exceed that range.}{\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905 \'93v1\'94
|
|
is the vertical position measured by the sensor at the top of the receptor tower. Negative means down, positive means up. This sensor is angled downwards about 10 degrees. The range is the same.}{
|
|
\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905 \'93v2\'94
|
|
is the vertical position measured by the sensor at the bottom of the receptor tower. This sensor is angled up about 17 degrees.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
\par These values are p5.Led0h, p5.Led0v1, p5.Led0v2, p5.Led1h, etc.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
These raw tan values are the ONLY values the glove hardware gives the computer about the position of the glove. Everything else is to be calculated from these values. Use them for testing how to improve the driv
|
|
er, or if you think you can do better than my driver.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
If you want to know the position of the LEDs relative to the glove (their unchanging physical position) use p5.ActualLed0Pos, p5.Actua}{\lang1024\langfe1024\noproof\insrsid13373289\charrsid2696905
|
|
lLed1Pos, etc. They are vectors. Their values never change, unless you buy a new version of the glove.}{\lang1024\langfe1024\noproof\insrsid16391730\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16274356 {\lang1024\langfe1024\noproof\insrsid13373289\charrsid2696905
|
|
\par P5.LedsVisible tells you how many LEDs are currently visible.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid10308617 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13373289\charrsid2696905 Speed and Acceleration}{\lang1024\langfe1024\noproof\insrsid10308617\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13373289 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13373289\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13373289 {\lang1024\langfe1024\noproof\insrsid13373289\charrsid2696905
|
|
You can tell how fast the glove is moving with P5.Speed. It is just a number measured in P5Units Per Second.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13373289 {\lang1024\langfe1024\noproof\insrsid13373289\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13373289 {\lang1024\langfe1024\noproof\insrsid13373289\charrsid2696905 If you want to know the
|
|
velocity (speed with direction) of the glove, on the x, y and z axes, then you can use P5.XVelocity, P5.YVelocity and P5.ZVelocity. They are also in P5Units per second.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13373289 {\lang1024\langfe1024\noproof\insrsid13373289\charrsid2696905
|
|
\par XVelocity is how fast it is moving to the right. Or negative if it is moving to the left.
|
|
\par YVelocity is how fast it is moving up. Or negative if it is moving down.
|
|
\par ZVelocity is how fast it is moving towards the screen. Or negative if it is moving backwards.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905
|
|
\par If you want a vector, use P5.Velocity.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13373289 {\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905 To find out how fast the velocity is increa
|
|
sing (the acceleration) you can read P5.XAcceleration, P5.YAcceleration, and P5.ZAcceleration. Or the vector P5.Acceleration. They are measured in metres per second per second.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13373289 {\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905
|
|
\par Velocity is good for detecting punches and gestures like that.
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid1595637 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905 When the glove is in range
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1595637 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1595637 {\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905 You can tell whether or not the glove is}{
|
|
\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 visible to the receptor}{\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905 by reading P5.InRange, or by the number P5.LedsVisible.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1595637 {\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 If you want to know WHY the glove isn\rquote t visible you can use one of these other values:
|
|
\par
|
|
\par P5.BehindSomething
|
|
\par P5.SwitchedOff
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 P5.TooFarLeft
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 P5.TooFarRight
|
|
\par P5.TooFarUp
|
|
\par P5.TooFarDown
|
|
\par P5.TooFarForward
|
|
\par P5.TooFarBack
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1595637 {\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 P5.UntrackableAngle}{\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1595637 {\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1595637 {\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 They are all only GlovePIE\rquote
|
|
s best guess. They are not guaranteed. The UntrackableAngle one doesn\rquote t work very well.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1595637 {\lang1024\langfe1024\noproof\insrsid1595637\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 They are true if the glove isn\rquote
|
|
t visible for that reason, and false if the glove is visible or if it is not visible for some other reason.}{\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid2061501 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 {\*\bkmkstart _Toc251216740}Rotation{\*\bkmkend _Toc251216740}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
Note that rotation requires at least 3 LEDs to be visible and accurate before it can be calculated. }{\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 Otherwise the rotation will stay much the same as it was before.}{
|
|
\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid5653980 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 Directions of Parts of the Hand
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 The recommended way to get the glove\rquote s orientation in GlovePIE is to use the values that tell you which way the parts of the glove are facing.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 For example:
|
|
\par
|
|
\par debug = P5.FingersForward
|
|
\par
|
|
\par Or if you want to be more precise:
|
|
\par
|
|
\par debug = P5.FingersForward and P5.PalmDown
|
|
\par
|
|
\par You need to specify two values to uniquely identify an orientation.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\b\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905 IMPORTANT: }{\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
These do NOT refer to the finger bends. The fingers are assumed to be straight and the thumb is assumed to b
|
|
e sticking out the side of your hand at right angles, for the purposes of these rotation values. The finger bends make no difference to these values.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 You can check}{\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905 the direction of the following parts:
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 BackOfHand, Fingers, Palm, Thumb, or Wrist}{\lang1024\langfe1024\noproof\insrsid2061501\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905
|
|
\par And you can check for one of the following directions:
|
|
\par
|
|
\par Forwards, Backwards, Left, Right, Up, Down
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 The part will always be pointing in one, and only one, of those 6 directions.}{
|
|
\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905 It can be pointing in that direction +/- 45 degrees in order to count as that direction.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905 Note that a Left handed glove the thumb is on the other side. So for example:
|
|
\par
|
|
\par debug = P5.FingersForward and P5.ThumbRight
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905
|
|
Will be palm-up if your glove is right-handed, and palm-down if your glove is left-handed. If you want to make your right-handed glove left-handed, please download the Dual Mode Driver and read the instructions about how to create a .ini file.
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid5653980 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 Diagonal Directions
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 You can also check for the diagonal directions:
|
|
\par
|
|
\par DownBackLeft, DownBack, DownBackRight,
|
|
\par DownLeft, DownRight
|
|
\par DownForwardsLeft, DownForwards, DownForwardsRight
|
|
\par BackLeft, BackRight
|
|
\par ForwardsLeft, ForwardsRight
|
|
\par UpBackLeft, UpBack, UpBackRight
|
|
\par UpLeft, UpRight
|
|
\par UpForwardsLeft, UpForwards, UpForwardsRight.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 But these directions overlap}{
|
|
\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905 with each other, and the non-diagonal directions above}{\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 . }{\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905
|
|
For example the Fingers might register as both}{\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905 DownBackLeft}{\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905 and DownBack at the same time.}{
|
|
\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2061501 {\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905
|
|
\par It needs to be within +/- 45 degrees of that angle for it to be true.
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid1331161 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905 Vague Directions}{\lang1024\langfe1024\noproof\insrsid5653980\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1331161 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1331161 {\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905 If you don\rquote t want to be that precise, for example, you only want
|
|
to know whether the palm is facing up or down, you can use the vague directions.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1331161 {\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905
|
|
\par For example:
|
|
\par
|
|
\par debug = P5.PalmUpVague
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1331161 {\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905
|
|
Will be true whenever the Palm is closer to being up than it is to being down. Either PalmUpVague or PalmDownVague will always be true. Even if the palm is facing left or forwards.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1331161 {\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1331161 {\lang1024\langfe1024\noproof\insrsid1331161\charrsid2696905 In other words, the angle only has to be +/- 90 degrees.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1331161 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par Vague also works for diagonals
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid15953647 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905 Strict Directions
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
If you want to be even more precise than normal, you can use the strict directions. For example if you want to know if the palm is facing directly up, but not facing diagonally up and to the left, then you can use the Strict version.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par eg.
|
|
\par
|
|
\par Debug = P5.PalmUpStrict.
|
|
\par
|
|
\par This also works with diagonals (which is the whole point).
|
|
\par
|
|
\par The angle must be within 22.5 degrees.
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid15953647 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905 Angle from Directions
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
You can also tell how far the part of your hand is from pointing in that direction. For example, how close are your fingers to pointing forwards?
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par You can do comparisons like this:
|
|
\par Enter = P5.FingersAngleFromForward <= 30 degrees
|
|
\par
|
|
\par That will hold down the Enter key whenever the fingers are within 30 degrees of pointing forwards.
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid15953647 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905 Direction }{\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905 Vectors and Matrix
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905 The other way of fi}{\lang1024\langfe1024\noproof\insrsid16189989\charrsid2696905
|
|
nding which direction the parts of the hand are pointing is to use the following direction vectors:}{\lang1024\langfe1024\noproof\insrsid15953647\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid16189989\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid16189989\charrsid2696905 P5.FingersDir
|
|
\par P5.ThumbDir
|
|
\par P5.PalmDir
|
|
\par P5.WristDir
|
|
\par P5.BackOfHandDir
|
|
\par
|
|
\par These are vectors, which means they have an x, y, and z component like this:
|
|
\par
|
|
\par [1, 0, 0]
|
|
\par
|
|
\par The total length will equal 1.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid16189989\charrsid2696905 The first component is the x component. It says how much of it is p
|
|
ointing in a right/left direction. In this example it is 1 which means it is pointing all the way to the right. The second component is the y component, which says how much of it is pointing in an up/down direction. In this case none, because it is pointi
|
|
ng exactly to the right. The third component is the z component, how much is pointing forwards/backwards, in this case none.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid16189989\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905 There is also a }{\b\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905 rotation matrix}{\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905
|
|
, which is just three rows of direction vectors like the ones above.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16189989\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905 The third row of the rotation
|
|
matrix is the fingers direction. The second row is the back of hand direction. And the first row of the rotation matrix is the right hand side of your hand direction (which isn\rquote t mentioned above). }{
|
|
\lang1024\langfe1024\noproof\insrsid16189989\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905 You can read the components of the rotation matrix indivi
|
|
dually, by specifying the row first and then the column:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905
|
|
\par debug = p5.mat31
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905
|
|
In the above example it will use the fingers direction (row three), and get the x component of it. In other words, how much are the fingers pointing to the right?
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905
|
|
\par debug = p5.mat22
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905
|
|
The above example would get the back-of-hand direction (row two) and get the y component of it. In other words, how much is the back of the hand pointing up?
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905 You can also get the entire matrix as a 3x3 matrix, by using P5.RotMat.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905 You can also access th
|
|
e unfiltered rotation matrix with P5.UnfilteredRotMat for the whole matrix, or P5.UnfilteredRotMat11 to P5.UnfilteredRotMat33.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid3367089 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905 Using Trigonometry to Convert Them to Angles}{\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905 (Isn\rquote t as hard as you might think)}{
|
|
\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905 If you understand }{\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
a very tiny bit of }{\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905 trigonomet
|
|
ry then you can convert those numbers into an angle. For example, if we want to know how much the fingers are pointing up, that would be p5.mat32. But that is a fraction, between 0 and 1, or 0 and -1. To convert a fraction to an angle, you use the inverse
|
|
of the sin, cos, and tan functions. The inverse is called ArcSin, ArcCos, and ArcTan in GlovePIE (But in C they are shortened to asin, acos and atan).}{\lang1024\langfe1024\noproof\insrsid10179789\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905
|
|
\par ArcSin converts 0 to 0 degrees, and converts 1 to 90 degrees.
|
|
\par ArcCos does the opposite, and converts 0 to 90 degrees and converts 1 to 0 degrees.
|
|
\par ArcTan converts 0 to 0 degrees and converts 1 to }{\b\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905 45 degrees.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
Note that you have to use these functions, rather than just multiplying by 90, because it is not linear. Sin(45 degrees) is actually about 0.7 not 0.5.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905 Let\rquote
|
|
s say we want an angle which says how much the fingers are angled upwards. We want 1 (completely up) to be 90 degrees, so we choose ArcSin.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3367089\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905 debug = ArcSin(p5.mat32)}{\lang1024\langfe1024\noproof\insrsid2773025\charrsid2696905 // a half-circle kind of pitch}{\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
\par
|
|
\par You could also write it like this:
|
|
\par
|
|
\par debug = ArcSin(p5.FingersDir[2])}{\lang1024\langfe1024\noproof\insrsid2773025\charrsid2696905 // the same half-circle kind of pitch}{\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
That will tell you how much the fingers are angled upwards. If they are angled downwards the value will be -90 degrees. In other words, this is a version of the \'93pitch\'94 angle.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905 There is also an ArcTan
|
|
2 function, which works like ArcTan but it can give you the angles of a full circle if you give it the fractions for the two directions. It can tell the difference between 45 degrees and 225 degrees.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905 ArcTan2 works like this: the first parameter is the fraction which corresponds to }{
|
|
\lang1024\langfe1024\noproof\insrsid738360\charrsid2696905 9}{\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905 0 degrees and the second parameter is th}{\lang1024\langfe1024\noproof\insrsid738360\charrsid2696905 e fraction that corresponds to }
|
|
{\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905 0 degrees. For example, lets say we want to find the horizontal angle of the fingers}{\lang1024\langfe1024\noproof\insrsid738360\charrsid2696905
|
|
, with 0 degrees meaning forwards, 90 degrees meaning right, 180 degrees
|
|
meaning backwards and -90 degrees meaning left. So we will use the forwards component (z or column 3) of the fingers for the second parameter (which represents 0 degrees) and we will use the right component (x or column 1) of the fingers for the first par
|
|
ameter (which represents 90 degrees). So it looks like this:}{\lang1024\langfe1024\noproof\insrsid1730733\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid738360\charrsid2696905
|
|
\par debug = ArcTan2(p5.mat31, p5.mat33)}{\lang1024\langfe1024\noproof\insrsid2773025\charrsid2696905 // a full circle, from forwards, kind of yaw}{\lang1024\langfe1024\noproof\insrsid738360\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid738360\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid738360\charrsid2696905 This gives us a version of the \'93yaw\'94
|
|
angle. Note that it is different from what we did above, because we want a complete circle for the yaw, from -180 to 180. But for the pitch we only wanted -90 to +90.}{\lang1024\langfe1024\noproof\insrsid2773025\charrsid2696905
|
|
Of course, we just decided that arbitrarily. We could have got different versions of the angles. For example, with these two angles, if you pitch your hand back 110
|
|
degrees then it will be considered to be a yaw of 180 degrees and a pitch of 80 degrees, because we made pitch only go up to 90, and yaw go all the way around. We could just as easily choose the opposite way around:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid2773025\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid2773025\charrsid2696905 Lets say we want the pitch to have forw
|
|
ards as 0, up as 90, and backwards as 180. That means we need to use ArcTan2 (for the whole circle) and we want the first parameter (90 degrees) to be the y part of the fingers row, and we want the second parameter (0 degrees) to be the z part of the fing
|
|
ers row.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid2773025\charrsid2696905
|
|
\par debug = ArcTan2(p5.mat32, p5.mat33) // a full-circle, from forwards, kind of pitch
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3294694\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3294694\charrsid2696905
|
|
That kind of pitch actually makes less sense to most people, since if you tilt your hand up a bit (say 10 degrees), then rotate it to the right 80 degree, the pi
|
|
tch will stay the same as you expect, but if you then rotate it 20 degrees more to the right, the pitch will change to 170 degrees. Of course that was the same problem we would have with the yaw if we rotated up more than 90 degrees, the yaw would have ju
|
|
mped.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3294694\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3294694\charrsid2696905
|
|
There is no perfect set of angles that makes the most sense. It depends which angles suit you and your application most. Just think what information you really want.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15953647 {\lang1024\langfe1024\noproof\insrsid3294694\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid3294694 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3294694\charrsid2696905 Euler Angles
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9582688\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid9582688\charrsid2696905 Euler angles suck. They exist solely to make a set of three steps to get to a parti}{
|
|
\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905 cular orientation.}{\lang1024\langfe1024\noproof\insrsid9582688\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905 Individually }{
|
|
\lang1024\langfe1024\noproof\insrsid9582688\charrsid2696905 they mean nothing}{\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905 though}{\lang1024\langfe1024\noproof\insrsid9582688\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid9582688\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905
|
|
If you rotate an object several times, the order is important. A different order gives you a different orientation.}{\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905 Not all programs use the same order, or directions.}{
|
|
\lang1024\langfe1024\noproof\insrsid9582688\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905 The Euler angl
|
|
es GlovePIE provides are in the order pitch, yaw, roll. First it rotates the hand upwards by the first angle. Then it takes the result of that and twists that thing sideways to the right by the second angle. Then whatever is left you tip over to the right
|
|
by the third angle, so that whatever was at the top after the first two steps becomes at the right after the third step.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905
|
|
So the Pitch, Yaw and Roll angles provide one way to get to the current orientation of the glove in three steps.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid14963874\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905 Anyway, these angles
|
|
can be read form P5.Pitch, P5.Yaw, and P5.Roll, but their usage is not recommended.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9582688 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid2644779 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905 Angular (rotation) velocity (speed)
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
If you want to measure how fast the hand is rotating, you can use PitchVelocity, YawVelocity and RollVelocity. Unlike Pitch, Yaw and Roll, they are not steps, and they do make sense individually. Their usage }{
|
|
\b\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905 is}{\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905 recommended.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905 They are measured in degrees per second.
|
|
\par
|
|
\par PitchVelocity is how fast the front is becoming the top.
|
|
\par YawVelocity is how fast the front is becoming the right.
|
|
\par RollVelocity is how fast the top is becoming the right.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
You can also get the acceleration in degrees-per-second per second. They are PitchAcceleration, YawAcceleration and RollAcceleration.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905
|
|
\par All these values may require smoothing to make them worth using.
|
|
\par
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid1447344 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 \page {\*\bkmkstart _Toc251216741}{\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI}{\lang1024\langfe1024\noproof\insrsid2644779\charrsid2696905 {\*\bkmkend _Toc251216741}{\*\xmlclose}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
is a system for musical instruments to communicate with each other and with computers.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 If you want to control {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
software with GlovePIE, you will need to download and install MidiYoke from }{\field\flddirty{\*\fldinst {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 HYPERLINK "http://www.midiox.com/myoke.htm" }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000002000000068007400740070003a002f002f007700770077002e006d006900640069006f0078002e0063006f006d002f006d0079006f006b0065002e00680074006d000000e0c9ea79f9bace118c8200aa004ba90b4000000068007400740070003a002f002f00
|
|
7700770077002e006d006900640069006f0078002e0063006f006d002f006d0079006f006b0065002e00680074006d0000000000000000000000000000ab00}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 http://www.midiox.com/myoke.htm}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 . MIDI Yoke will also allow you to read {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
output from other programs.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 Otherwise you can only control the soundcard or external {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}MIDI{\*\xmlclose} devices. You can also read input from {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} devices.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
devices can be plugged into your joystick port, if you have the right cable. Then you can use them for input.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14027689 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 {\*\bkmkstart _Toc251216742}MIDI Ports}{\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 {\*\bkmkend _Toc251216742}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905
|
|
Each computer may have multiple {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} output ports, and multiple {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
input ports. The output ports will include your sound card, software synthesisers, the external ports on the back of your computer, and MIDI Yoke ports. Input ports will include the input ports on the back of your soundcard, and the MIDI Yoke p}{
|
|
\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905 orts. There is no guarantee that}{\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905 input and output port}{\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905
|
|
s match up. There is also an output port called the \'93MIDI Mapper\'94 which in Windows 3.1 was a complicated system for forwarding {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
messages to different devices, but now it is just a setting in control panel which forwards everything to a chosen device.}{\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905 Each {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
port has 16 channels. It is possible to have multiple {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} devices connected to the same port, but for each one to be listening to a separate channel. It is also possible for one
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} device to use all the channels, with each channel representing a separate virtual instrument.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905
|
|
\par You can set which {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} output port you want GlovePIE to use, like this:}{\lang1024\langfe1024\noproof\insrsid1447344\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905
|
|
\par midi.DeviceOut = 2
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905 Where 1 is the first output port, and 0 is the {\*\xmlopen\xmlns1{\factoidname
|
|
stockticker}}MIDI{\*\xmlclose} mapper.
|
|
\par
|
|
\par Future writes to midi values will then go to port 2.
|
|
\par
|
|
\par You can set the input port like this:
|
|
\par
|
|
\par midi.DeviceIn = 2
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905 But there is no guara
|
|
ntee that input port 2 is connected to the same device as output port 2. In fact, most of the time it won\rquote t be.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid12932360\charrsid2696905
|
|
\par If you want to know what the name of that device is, use:
|
|
\par
|
|
\par debug = midi.OutDevName
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905
|
|
\par or
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274579 {\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905 debug = midi.InDevName
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274579 {\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 You can also look at OutVersion, OutTech, InVersion and InTech.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274579 {\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905
|
|
Instead of using the default ports that you set with DeviceOut and DeviceIn, you can also use several ports at once, by explicitly putting them after the \'93midi\'94 part of the value. For example to set the volume on (the default channel) of
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} output port 2:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11274579 {\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905
|
|
\par midi2.Volume = 50%
|
|
\par
|
|
\par Or you could do the same thing like this:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905 midi.DeviceOut = 2
|
|
\par midi.Volume = 50%
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905
|
|
\par A better way to control output ports, is to use the different port categories:
|
|
\par
|
|
\par midi.mapper.volume = 50%
|
|
\par midi.soundcard.volume = 50%
|
|
\par midi.software.volume = 50%
|
|
\par midi.wavetable.volume = 50%
|
|
\par midi.playback.volume = 50%
|
|
\par midi.yoke2.volume = 50%
|
|
\par midi.external2.volume = 50%
|
|
\par
|
|
\par You can optionally put a number after the category to use the n}{\lang1024\langfe1024\super\noproof\insrsid11274579\charrsid2696905 th}{\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905 device in that category.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905 If you want to set the default output device to one of those, then you can }{
|
|
\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 read from the DeviceOut or DeviceIn on one of those devices and use it to set the default device. Observe:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2644779 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par midi.DeviceOut = midi.yoke3.DeviceOut
|
|
\par
|
|
\par That will set the default output port to the 3}{\lang1024\langfe1024\super\noproof\insrsid14027689\charrsid2696905 rd}{\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 MIDI Yoke port.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14027689 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 {\*\bkmkstart _Toc251216743}{\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} Channels}{\lang1024\langfe1024\noproof\insrsid11274579\charrsid2696905 {\*\bkmkend _Toc251216743}
|
|
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 Each {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
port has 16 channels, numbered 1 to 16. You can set the default channel like this:
|
|
\par
|
|
\par midi.DefaultChannel = 4
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
Each channel has its own instrument number, volume and other parameters, and each channel can play multiple notes at once.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 Or you can specify the channel explicitly, like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par midi.Channel4.Volume = 50%
|
|
\par
|
|
\par You can specify both the port and the channel like this:
|
|
\par
|
|
\par midi.Yoke3.Channel4.Volume = 50%
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 All the channels behave the same, except for Channel 10 on Ge
|
|
neral MIDI devices (which most devices are these days). Channel 10 is always in percussion mode, and will play a different percussion instrument for each note of the scale. You can turn General Midi on or off by setting:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par midi.GeneralMidi = True
|
|
\par or
|
|
\par midi.GeneralMidi = False
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
If you tell GlovePIE to play a percussion instrument, it will automatically do it on channel 10, regardless of which channel you specify.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14027689 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 {\*\bkmkstart _Toc251216744}Playing notes{\*\bkmkend _Toc251216744}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 You can turn notes on and off by setting the note to either true or false. For exa
|
|
mple to play middle C when the press the space bar:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par midi.MiddleC = space
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905 Middle C is octave 5, so you can also write it like this:}{\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par midi.C5 = space
|
|
\par
|
|
\par You can also play other notes like this:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905 midi.FSharp8 = Enter
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par The lowest note is C0. The highest note is G10.
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8261370 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905 Striking notes with a particular velocity
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
If you want more control over how fast the note is struck, you can set the velocity instead. If you turn notes on and off like above they will always be struck with a velocity of 50%. But you can also turn notes on by setting their velocity:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par if pressed(Space) then midi.C5Velocity = 80%
|
|
\par if released(Space) then midi.C5Velocity = 0
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
Note that velocities are between 0 and 1 (80% is the same as 0.8). Setting the velocity to 0 turns the note off. Notes are always released with a release-velocity of 50%.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par Some instruments will sound the same whatever velocity you use.
|
|
\par
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid16415098 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905 Applying Pressure to a note
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
You can also apply extra pressure to a note when it is down. By default 0 extra pressure is applied. Applying extra pressure to a note may not have any effect on most instruments. The extra pressure is called \'93aftertouch\'94.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
\par if pressed(space) then
|
|
\par midi.C5 = true
|
|
\par midi.C5Aftertouch = 20%
|
|
\par else
|
|
\par midi.C5 = false
|
|
\par end if
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905 You can also apply extra pressure to every note that
|
|
is played on that channel by setting the ChannelPressure:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905 midi.ChannelPressure = 20%
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid8261370 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905 Playing notes by number
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8261370 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8261370 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
You can also play a note by setting midi.FirstNote to the number of the note you want to play. There are 12 notes per octave, including sharps an
|
|
d flats (anyone who tells you 8 is an idiot, even without sharps and flats there are only 7). C0 is note number 0. C1 is note number 12. MiddleC is note number 60. G10 is note number 127. You need to set it to -1 to turn the note off.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8261370 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par if pressed(Space) then midi.FirstNote = 60
|
|
\par if released(Space) then midi.FirstNote = -1
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
There is also a SecondNote, ThirdNote, and FourthNote, so you can play 4 notes by number at once. }{\lang1024\langfe1024\noproof\insrsid8261370\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
\par These notes are all struck (and released) with a velocity of 50%.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905 You can\rquote t read the no
|
|
te you are playing, so if you want to remember it, store it in a variable. {\*\xmlopen\xmlns1{\factoidname stockticker}}Reading{\*\xmlclose} from midi.FirstNote will read from the {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
input device instead!
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14027689 {\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14506655 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 {\*\bkmkstart _Toc251216745}Playing Percussion{\*\bkmkend _Toc251216745}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 You can play percussion instruments by setting one of the percussion instruments:
|
|
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 midi.AcousticBassDrum}{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 = space
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 AcousticBassDrum}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905
|
|
, BassDrum2, }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 SideStick}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 AcousticSnare}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 HandClap}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 ElectricSnare}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LowFloorTom}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 ClosedHiHat}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 HighFloorTom}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 PedalHiHat}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LowTom}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 OpenHiHat}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LowMidTom}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 HighMidTom}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 CrashCymbal1}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 HighTom}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 RideCymbal1}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 ChineseCymbal}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 RideBell}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 Tambourine}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 SplashCymbal}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 Cowbell}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , CrashCymbal2, }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 Vibraslap}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 RideCymbal2}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 HiBongo}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LowBongo}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 MuteHiConga}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 OpenHiConga}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LowConga}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 HighTimbale}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , LowTimbale, }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 HighAgogo}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LowAgogo}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 Cabasa}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 Maracas}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 ShortWhistle}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LongWhistle}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 ShortGuiro}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LongGuiro}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 Claves}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , HiWoodBlock, }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 LowWoodBlock}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 MuteCuica}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 OpenCuica}{\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 MuteTriangle}{
|
|
\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 OpenTriangle
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid9205223\charrsid2696905
|
|
\par You can also set other percussion instruments by setting Percussion0 to Percussion127.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid16415098 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905 {\*\bkmkstart _Toc251216746}{\*\xmlopen\xmlns1{\factoidname stockticker}}Reading{\*\xmlclose} Notes}{\lang1024\langfe1024\noproof\insrsid14027689\charrsid2696905 {\*\bkmkend _Toc251216746}
|
|
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905 You can read whether notes are being played on a {\*\xmlopen\xmlns1{\factoidname
|
|
stockticker}}MIDI{\*\xmlclose} input device like this:
|
|
\par
|
|
\par debug = midi.MiddleC
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
or you can read by number by using midi.FirstNote (SecondNote, ThirdNote and FourthNote don\rquote t work for {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} input yet).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16415098 {\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
\par if midi.FirstNote = 60 then say(\'93hello\'94)
|
|
\par
|
|
\par You can use these methods to control games by using a {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose} keyboard:
|
|
\par
|
|
\par Space = midi.MiddleC
|
|
\par Up = midi.}{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 MiddleDSharp}{\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 Down = midi.MiddleE
|
|
\par Left = midi.MiddleD
|
|
\par Right = midi.MiddleE
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16415098\charrsid2696905
|
|
\par You can also read the velocities and aftertouches.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid14506655 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 {\*\bkmkstart _Toc251216747}Setting the instrument{\*\bkmkend _Toc251216747}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 You can set the instrument to a number between 1 and 128 by setting mid
|
|
i.Instrument. See a midi instrument chart on the internet if you want to know what each instrument is.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
\par If you normally use instrument numbers between 0 and 127, you can set midi.Instrument0 instead.
|
|
\par
|
|
\par Note that each channel has its own instrument (except channel 10 on GeneralMidi)
|
|
\par
|
|
\par By default instrument 1 is used, which is normally a piano.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
If your instrument contains multiple banks of instruments, you can also set BankSelectLevel. But you need to divide by 16383\'85 for example, to set it to bank 2:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
\par midi.BankSelectLevel = 2 / 16383
|
|
\par
|
|
\par The first bank is bank 0. Instrument banks may have no effect on some devices.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid10698787 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905 {\*\bkmkstart _Toc251216748}Pitch Wheel}{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905 {\*\bkmkend _Toc251216748}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10698787 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10698787 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905 You can also set the pitch bend using the pitch wheel.
|
|
\par
|
|
\par The pitch wheel can be set to a value between 0 and 1. Setting it to 0.5 means no effect.
|
|
\par
|
|
\par midi.PitchWheel = 50%
|
|
\par
|
|
\par Each channel has its own Pitch Wheel.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905
|
|
You can also try setting the PitchBendRange to change the range that the maximum pitch bend represents, in semitones.}{\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid10698787 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905 {\*\bkmkstart _Toc251216749}Controls and Change Control messages{\*\bkmkend _Toc251216749}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14506655\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905 Each channel of each devic
|
|
e has a set of 32 different 14-bit controls, numbered 0 to 31, and a set of 7-bit controls numbered 64 onwards. You can also access the two 7-bit components of the 14-bit controls separately, as Coarse and Fine controls or as byte controls numbered 0 to 6
|
|
3.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905
|
|
Some of them have standard names, and some of them just have numbers. But you can use any control by number if you prefer. Sometimes the controls aren\rquote t used for their defined function.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905
|
|
\par For example, setting Midi.Volume is the same as setting Midi.Control7.
|
|
\par
|
|
\par So you can either write this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905 midi.Volume = 52.38%
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905 or}{\lang1024\langfe1024\noproof\insrsid10698787\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par midi.Control7 = 52.38%
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
It is a 14-bit control, so it is a value between 0 and 1, but with about 4 or 5 decimal places. In this case we are setting it to 0.5238
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par You can also access the coarse and fine parts separately, like this:
|
|
\par
|
|
\par midi.Control7Coarse = 0.5
|
|
\par
|
|
\par midi.Control7Fine = 0
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
The controls numbered 32 to 63 are the same as the fine parts of the controls numbered 0 to 31. So Control7Fine and Control38 are the same thing.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905 You can also use Byt
|
|
eControl7 to refer to the coarse part of Control7, or ByteControl38 to refer to the fine part of Control7.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
Controls numbered 64 onwards are only 7-bit controls, and have no coarse or fine components. They are also set to a value between 0 and 1, but they will be accurate to less decimal places (about 2). They also often have names.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14506655 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid403405 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905 {\*\bkmkstart _Toc251216750}RPN (Registered Parameter Numbers){\*\bkmkend _Toc251216750}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905 {\*\xmlopen\xmlns1{\factoidname stockticker}}MIDI{\*\xmlclose}
|
|
also has RPN messages. These include:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905 MasterTuning, }{\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905
|
|
MasterTuningCoarse, MasterTuningFine, }{\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905 PitchBendRange, TuningProgramSelect and TuningBankSelect.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par You can set them in GlovePIE like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 {\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905 Midi.PitchBendRange = 2 octaves
|
|
\par Midi.MasterTuning = }{\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905 -}{\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905 0.5 semitones // all notes will be off by half a note
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905 I can\rquote }{\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 t guarantee these will work.}{\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid403405\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905 You can also set other RPN values manually, Eg. to set RPN 0,1 like this:
|
|
\par
|
|
\par Midi.Control101 = 0 / 127
|
|
\par Midi.Control100 = 1 / 127
|
|
\par Midi.DataEntry = 0.75 // whatever value you want to set it to
|
|
\par Midi.Control101 = 127 / 127
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8924119 {\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905 Midi.Control100 = 127 / 127
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8924119 {\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid8924119 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905 {\*\bkmkstart _Toc251216751}NRPN (Non Registered Parameter Numbers){\*\bkmkend _Toc251216751}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 {\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905 There are no standard NRPN values}{
|
|
\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 (that\rquote s the point of NRPN)}{\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905 . But you can set them manually like this}{
|
|
\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 (for NRPN 0,1)}{\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905 :
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid403405 {\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 Midi.Control99 = 0 / 127}{\lang1024\langfe1024\noproof\insrsid8924119\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 Midi.Control98 = 1 / 127
|
|
\par Midi.DataEntry = 0.75 // or whatever value
|
|
\par Midi.Control99 = 127 / 127
|
|
\par Midi.Control98 = 127 / 127
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid935787 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 {\*\bkmkstart _Toc251216752}SysEx (System Exclusive){\*\bkmkend _Toc251216752}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905
|
|
\par You can set standard System Exclusive midi values like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\langnp1040\insrsid935787\charrsid13785436 Midi.GeneralMidi = true
|
|
\par Midi.MasterVolume = 76%
|
|
\par }{\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 Midi.IdentityRequest = pressed(space)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 If you want to set other System Exclusive midi values, you need to save them in a .
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}SYX{\*\xmlclose} file. You can then tell GlovePIE to send that file like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905
|
|
\par Midi.SetupFile = \'93c:\\coolsounds.syx\'94
|
|
\par
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid14901482 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905 \page {\*\bkmkstart _Toc251216753}Speech}{\lang1024\langfe1024\noproof\insrsid935787\charrsid2696905 {\*\bkmkend _Toc251216753}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
You need to install SAPI 5.1, (It comes with Windows XP and Office XP) to use speech in GlovePIE. If you don\rquote t have speech recognition installed, download and install this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par http://www.chant.net/downloads/sapi51.exe
|
|
\par
|
|
\par Unless you have XP Pro, in which case download and install this to get a later version:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
http://www.voicewebsolutions.net/community/tutorials/voicewebstudio/salt/MicrosoftInternetExplorerSpeechAddInSetup.exe
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par If you just want the Mike and Mary text-to-speech voices for XP, download this:
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 http://www.aldostools.com/sapi51xp.msi}{\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid6898166 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 {\*\bkmkstart _Toc251216754}Making GlovePIE talk{\*\bkmkend _Toc251216754}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905 You can make GlovePIE speak by using the \'93say\'94 command, like this:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905 say(\'93Hello World\'94)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par Or you can set speech.text, like this:
|
|
\par
|
|
\par speech.text = \'93Hello World\'94
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905 The advantage/disadvantage of setting speech.text is that it won\rquote
|
|
t say it again until you set speech.text to something different. Say will say it every time you use say.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par You can get it to speak in different voices like this:
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 speech.sam.text = \'93Hello, my name is Sam.\'94}{\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 speech.mike.text = \'93Hello, my name is Mike.\'94
|
|
\par speech.mary.text = \'93Hello, my name is Mary.\'94
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 If Mike and Mary sound the same as Sam, }{
|
|
\lang1024\langfe1024\noproof\insrsid16408641\charrsid2696905 and you have XP, }{\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 then you need to download this}{\lang1024\langfe1024\noproof\insrsid16408641\charrsid2696905 (don\rquote
|
|
t download this on {\*\xmlopen\xmlns1{\factoidname stockticker}}Vista{\*\xmlclose}!!!)}{\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 :
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\field\flddirty{\*\fldinst {\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 HYPERLINK "http://www.aldostools.com/sapi51xp.msi" }{
|
|
\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000002700000068007400740070003a002f002f007700770077002e0061006c0064006f00730074006f006f006c0073002e0063006f006d002f00730061007000690035003100780070002e006d00730069000000e0c9ea79f9bace118c8200aa004ba90b4e000000
|
|
68007400740070003a002f002f007700770077002e0061006c0064006f00730074006f006f006c0073002e0063006f006d002f00730061007000690035003100780070002e006d0073006900000000000000000000000003000100}}}{\fldrslt {
|
|
\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905 http://www.aldostools.com/sapi51xp.msi}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {
|
|
\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905
|
|
\par You can also use other popular text to speech engines by name, if you have them.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905 If you want to try out and download some high-quality voices, and don\rquote
|
|
t mind using up disk space, you can go to:}{\lang1024\langfe1024\noproof\insrsid6898166\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
\par }{\field\flddirty{\*\fldinst {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905 HYPERLINK "http://www.cepstral.com/demos/" }{\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000001f00000068007400740070003a002f002f007700770077002e0063006500700073007400720061006c002e0063006f006d002f00640065006d006f0073002f000000e0c9ea79f9bace118c8200aa004ba90b3e00000068007400740070003a002f002f007700
|
|
770077002e0063006500700073007400720061006c002e0063006f006d002f00640065006d006f0073002f0000000000000000000000000000f000}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905 http://www.cepstral.com/demos/}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
You can download the Cepstral voices, but they are trial versions which add stuff at the start of everything it says. Please buy them rather than cracking them with a keygen, as they are good quality.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905 There are lots of other speech parameters you can read or set. Just type \'93speech.
|
|
\'94 and use the code completion box.}{\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14901482 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid6572936 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905 {\*\bkmkstart _Toc251216755}Speech Recognition{\*\bkmkend _Toc251216755}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
You can use Speech recognition in GlovePIE to control games with speech.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
\par Just use the said( ) function like this:
|
|
\par
|
|
\par Enter = said(\'93jump\'94)
|
|
\par
|
|
\par That will press the \'93Enter\'94 key, whenever you say \'93jump\'94 into the microphone.
|
|
\par
|
|
\par You can also use the AskedFor( ) function like this:
|
|
\par
|
|
\par Four = AskedFor(\'93rocket launcher\'94)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905 The AskedFor function will only trigger if you say something like \'93
|
|
can I please have a rocket launcher?\'94. It will not trigger if you just say \'93rocket launcher\'94 or \'93rocket launcher please\'94. AskedFor does understand lots of different ways of phrasing a request, everything from \'93
|
|
I need a rocket launcher now\'94 to \'93please give me a rocket launcher\'94.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
\par }\pard\plain \s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel2\adjustright\rin0\lin0\itap0\pararsid6572936 \b\f1\fs26\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905 Amount of Confidence Required
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
You can change the amount of confidence required by specifying a second parameter which is a number. The default is 2.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
\par Eg.
|
|
\par
|
|
\par Enter = said(\'93jump\'94, 3)
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
The higher the number, the more confidence is required to recognise it. If it thinks you said \'93jump\'94 when you actually said \'93pump\'94, set the confidence value higher. If it doesn\rquote t recognise it when you do say \'93jump\'94 s
|
|
et the confidence value lower.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
\par The following confidence values exist:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
0: No confidence required: Will always recognise at least one of the phrases in your script, no matter how different what you said is, unless you only said the first word of a multi-word phrase.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
1: Partial phrase, low confidence: Will quickly guess what you said based on the first syllable or two, unless it is a multi-word phrase in which case it will wait for the start of the last word. Will accept anything that is even vaguely close,
|
|
and respond quickly.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
2: Partial phrase, medium confidence: Will quickly guess what you said based on the first syllable or two, unless it is a multi-word phrase. It will accept things that are reasonably close to what it is expecting.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905 3: Partial phrase,
|
|
high confidence: Will quickly guess what you said based on the first syllable, unless it is a multi-word phrase. It will only accept things that it is sure matches.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
4: Complete phrase, low confidence: Will wait until it is sure you have finished speaking, and it has processed the complete phrase before guessing. The whole phrase must be vaguely close to what it was expecting.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
5: Complete phrase, medium confidence: Will wait until it is sure you have finished speaking, and it has processed the complete phrase before guessing. T}{\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 he whole phrase must be reasonably }{
|
|
\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905 close to what it was expecting.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6572936 {\lang1024\langfe1024\noproof\insrsid6572936\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12265351 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 6}{\lang1024\langfe1024\noproof\insrsid12265351\charrsid2696905
|
|
: Complete phrase, high confidence: Will wait until it is sure you have finished speaking, and it has processed the complete phrase. The whole phrase must be very close to what it was expecting.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid14901482\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 If your script has a phrase that contains another phrase, like this:
|
|
\par
|
|
\par W = Said(\'93weapon\'94)
|
|
\par X = Said(\'93weapon fire linked\'94)
|
|
\par
|
|
\par then you need to set the shorter phrase to wait for the complete phrase, like this:
|
|
\par
|
|
\par W = Said(\'93weapon\'94, 5)
|
|
\par X = Said(\'93weapon fire linked\'94)
|
|
\par
|
|
\par Otherwise it will press W before you have finished saying \'93weapon fire linked\'94.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 If you are expecting the user to say things that aren\rquote
|
|
t in your script, and you want them to be ignored, you need to set the confidence reasonably high.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par Other than that, which confidence levels you choose is up to you.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 But if GlovePIE isn\rquote
|
|
t recognising what you say, the first thing you should do is go to the Speech Control Panel (You can use the CP-Settings menu in GlovePIE), and do some tr
|
|
aining. You should also change the recognition settings in Control Panel to change how quickly it responds, and how much accuracy it requires.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid935787 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15629807 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 {\*\bkmkstart _Toc251216756}Push-to-talk{\*\bkmkend _Toc251216756}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
If you only want it to recognise you when you are holding down a button, you need to set Microphone.Enabled. eg.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par Microphone.Enabled = joystick1.Button1
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
It will only trigger the speech commands when you are holding down the joystick button. The rest of the time it will ignore your speech. It doesn\rquote t turn the microphone off, or let other applications use it, it just ignores you when it hears you.
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par You can also do the opposite, like this:
|
|
\par
|
|
\par Microphone.PushToNotTalk = joystick1.Button2
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
Now, when you hold down button 2 it will ignore anything you say. Good for when you are talking to your team-mates.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par Don\rquote t use Microphone.PushToTalk, it doesn\rquote t work.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15629807 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par {\*\bkmkstart _Toc251216757}Other Microphone Stuff{\*\bkmkend _Toc251216757}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 There are other Microphone values you can read and set.
|
|
\par
|
|
\par For example:
|
|
\par
|
|
\par Mouse.LeftButton = Microphone.AudioLevel > 0.5
|
|
\par
|
|
\par That will click the left mouse button whenever you make a loud noise.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
TooFast, TooSlow, TooLoud and TooQuiet will be true for an instant when GlovePIE is trying to recognise your speech but you are speaking too fast, slow, loud or quietly.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 For example:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par if Microphone.TooFast then say(\'93Don\rquote t talk so fast.\'94)
|
|
\par if Microphone.TooSlow then say(\'93You need to talk faster.\'94)
|
|
\par if Microphone.TooLoud then say(\'93Stop shouting. I\rquote m not deaf.\'94)
|
|
\par if Microphone.TooQuiet then say(\'93Speak up, I can\rquote t hear you.\'94)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905 HeardNoise will be true for an instant when GlovePIE is trying to recognise your sp
|
|
eech and it hears some other noise.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par if Microphone.HeardNoise then say(\'93I can\rquote t hear you over the noise.\'94)
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 InPhrase will be true while you are speaking, and false while you are not.
|
|
\par InSound will be true while there is sound which might be speech, and false otherwise.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
Microphone.CompletePhrase will be whatever text you said, but it only works if you said one of the phrases in your script. It will only be set to something for an instant. For example:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par var.saidsomething = said(\'93hello\'94) or said(\'93goodbye\'94) or said(\'93thank you\'94)
|
|
\par if microphone.CompletePhrase <> "" then Say(microphone.CompletePhrase)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
Microphone.PartialPhrase will be set to whatever partial text you said, but it only works if you said one of the phrases in your script. It will only be set to something for an instant. For example:}{
|
|
\lang1024\langfe1024\noproof\insrsid15629807\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 var.saidsomething = said(\'93this is a test\'94) or said(\'93does it work\'94
|
|
) or said(\'93I don\rquote t know\'94)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 if microphone.PartialPhrase <> "" then debug = microphone.PartialPhrase
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15629807 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 Speak slowly for the above example. Notice how what you sa
|
|
y appears one word at a time in the debug box?
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4523222 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid16408641\charrsid2696905 {\*\bkmkstart _Toc251216758}Virtual Reality HMDs{\*\bkmkend _Toc251216758}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16408641\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8808373\charrsid2696905 GlovePIE supports two kinds of Virtual Reality head mounted displays. The Vuzix (previously known as Icuiti) VR920, and the eMagin Z800.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 The Trimersion could theoretically also be used
|
|
with GlovePIE, if you have Windows 2000, XP, or {\*\xmlopen\xmlns1{\factoidname stockticker}}Vista{\*\xmlclose} because GlovePIE supports reading multiple mice and multiple keyboards individually, and the Trimersion acts as a mouse and keyboard.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid8808373\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid8808373\charrsid2696905 The VR920 has 3 accelerometers, and 3 magnetometers (a compass). Th
|
|
e accelerometers are for measuring gravity which tells you pitch and roll, and the compass is for measuring yaw.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid8808373\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid8808373\charrsid2696905
|
|
The Z800 also has 3 accelerometers, and 3 magnetometers (a compass). But unlike the VR920, it also has 3 rate gyros}{\lang1024\langfe1024\noproof\insrsid9573049\charrsid2696905 which help}{\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905
|
|
make the other measurement}{\lang1024\langfe1024\noproof\insrsid9573049\charrsid2696905 s more accurate}{\lang1024\langfe1024\noproof\insrsid8808373\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid9573049\charrsid2696905
|
|
\par The main values that you will use are the yaw, pitch, and roll. Which are angles in degrees.
|
|
\par
|
|
\par Yaw is the angle when you turn your head left and right. Positive means to the right.
|
|
\par Pitch is the angle when you look up and down. Positive means up.
|
|
\par Roll is the angle when you tilt your head to the side. Positive means to the right.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid9573049\charrsid2696905 Normally you will want to }{
|
|
\lang1024\langfe1024\noproof\insrsid7634216\charrsid2696905 either emulate the mouse for mouse-look games (either first person, or third person ones), or emulate TrackIR for games that s
|
|
upport TrackIR (mostly flight simulators, or car racing games, but some other types of games).}{\lang1024\langfe1024\noproof\insrsid9573049\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid7634216\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11224077\charrsid2696905 For a list of TrackIR enabled games, see here:
|
|
\par }{\field\flddirty{\*\fldinst {\lang1024\langfe1024\noproof\insrsid11224077\charrsid2696905 HYPERLINK "http://www.naturalpoint.com/trackir/03-enhanced-games/enhanced-games-all.html" }{\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905
|
|
{\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000004e00000068007400740070003a002f002f007700770077002e006e00610074007500720061006c0070006f0069006e0074002e0063006f006d002f0074007200610063006b00690072002f00300033002d0065006e00680061006e006300650064002d006700
|
|
61006d00650073002f0065006e00680061006e006300650064002d00670061006d00650073002d0061006c006c002e00680074006d006c000000e0c9ea79f9bace118c8200aa004ba90bb400000068007400740070003a002f002f007700770077002e006e00610074007500720061006c0070006f0069006e0074002e0063
|
|
006f006d002f0074007200610063006b00690072002f00300033002d0065006e00680061006e006300650064002d00670061006d00650073002f0065006e00680061006e006300650064002d00670061006d00650073002d0061006c006c002e00680074006d006c000000795881f43b1d7f48af2c825dc485276300000000
|
|
a5ab0000000000000000000000000000}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid11224077\charrsid2696905 http://www.naturalpoint.com/trackir/03-enhanced-games/enhanced-games-all.html}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid7634216\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid11224077\charrsid2696905 Note that you may not use GlovePIE with {\*\xmlopen\xmlns1{\factoidname stockticker
|
|
}}America{\*\xmlclose}\rquote s Army. {\*\xmlopen\xmlns1{\factoidname stockticker}}America{\*\xmlclose}\rquote s Army is not a game, it is a military recruitment drive. Real people die because of it.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid11224077\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid11224077\charrsid2696905 In mouse-look games, it is not possible t
|
|
o get head-tracking to work perfectly. Almost all mouse-look games use some sort of acceleration based on how fast the mouse is moving, and you can\rquote
|
|
t switch it off. They also often cap the maximum amount that you can move the mouse in a certain period. The
|
|
se mean that when you turn 90 degrees in one direction and then turn back 90 degrees, you will not end up looking exactly the same direction you were at the start, only nearly.}{\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905
|
|
Also when you look up and down, the vertical angle in game can get out of sync with the angle of your head. Ideally you want the game to have a key which re-centres the view. }{\lang1024\langfe1024\noproof\insrsid11224077\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905
|
|
\par See the VR920Scripts folder for examples of TrackIR emulation, and mouse-look emulation.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\cs27\b\i\f1\fs28\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905 {\*\bkmkstart _Toc251216759}VR920{\*\bkmkend _Toc251216759}
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905 You can read the following angles from the VR920:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905 VR920.yaw, VR920.pitch, and VR920.roll
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905
|
|
Yaw will be between -180 and +180. Pitch will be between -90 and +90. Roll will be between -180 and 180.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905 \line There is also VR920.ContinuousYaw which is between \endash
|
|
infinity and +infinity. It keeps counti}{\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905 ng when you keep turning in the same}{\lang1024\langfe1024\noproof\insrsid12133867\charrsid2696905
|
|
direction. So if you spin around twice, it will go up to 720 degrees.}{\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
\par For First Person Shooters you should always use VR920.ContinuousYaw.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
These values are all read straight from the VR920 SDK supplied by Vuzix. These values will shake a little
|
|
bit, because the sensors are not precise. You also need to run the iWear Calibration program that came with your VR920. It is very important that it is calibrated correctly.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905 You may want to use GlovePIE\rquote
|
|
s Smooth function. It averages several frames together. This causes lag, but it also makes it smoother. For example:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
\par Var.yaw = smooth(vr920.yaw, 10)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid2192189\charrsid2696905 w}{\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
ill smooth the current frame by averaging it with the previous 10 frames. You can choose how many frames to use. The maximum is 30.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid2192189\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid2192189\charrsid2696905 Don\rquote t use the SmoothPit
|
|
ch, and SmoothRoll values for smoothness. They are not actually smoothed, they are the same as the Wiimote.SmoothPitch and Wiimote.SmoothRoll, and are calculated from the acceleration, making the false assumption that all acceleration is due to gravit
|
|
\u7925\'3f.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid2192189\charrsid2696905 GlovePIE also lets you read the VR920\rquote
|
|
s acceleration and compass sensors directly. This completely bypasses the SDK, and reads the values straight from the {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose}
|
|
port. Before this will work, you need to choose VR920 Accelerometer Calibration from the CP-Settings menu, and calibrate the accelerometers. This calibration only affects GlovePIE and has nothing to do with other programs that use the VR920.}{
|
|
\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid10356195\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid2192189\charrsid2696905
|
|
RawForceX, RawForceY, and RawForceZ give you the raw, uncalibrated accelerometer values. You don\rquote t need to us
|
|
e the accelerometer calibration for this to work. RawMagnetX, RawMagnetY, and RawMagnetZ give you the raw compass values. Note that the Z value will always be high, presumably due to the magnets in the VR920 earphones.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid2192189\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12207742\charrsid2696905 gx, gy, and gz give you the calibrat
|
|
ed accelerometer values. This includes both the opposite of gravity plus the real acceleration of the glasses. They will be zero for no force, or +/-1 for 1G of force. If you drop the glasses (not recommended!!) all the values will be zero. But if you are
|
|
holding them up, then gy will be 1 and gx and gz will be 0.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12207742\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12207742\charrsid2696905
|
|
RawAccX, RawAccY and RawAccZ are the same as gx, gy, and gz, but are measured in metres per second per second, instead of Gs. So they will be 9.8 m/s/s for 1G of force.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12207742\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid12207742\charrsid2696905 RelAccX, RelAccY, and Re
|
|
lAccZ are intended to be just the acceleration with the force of gravity filtered out. This is not completely possible, and thus not completely accurate. But it gives you a reasonable approximation of the acceleration of the glasses. }{
|
|
\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905 It is measured in 9.8 m/s/s. Unfortunately the acceleration of the glasses is normally caused by turning your head, rather than by moving your head.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905
|
|
StrictPitch, and StrictRoll are the pitch and roll of the glasses calculated by GlovePIE from the accelerometers. It does not use the SDK, and is only affected by GlovePIE\rquote
|
|
s accelerometer calibration, not by the iWear calibration. It is only calculated when the glasses are not accelerating and thus the total force is about 1G.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905 SmoothPitch and SmoothRoll are the pitch and roll, bu
|
|
t they are updated (wrongly) even when the glasses are accelerating. This will produce a slightly wrong answer when the glasses are accelerating, but it will be smoother instead of jerky.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905 BedYaw and BedPitch are the equivalent of Yaw and Pitch, but for wh
|
|
en you are lying down in bed.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12133867 {\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\cs27\b\i\f1\fs28\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905 {\*\bkmkstart _Toc251216760}Z800{\*\bkmkend _Toc251216760}
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid4008452\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905 I don\rquote
|
|
t have a Z800, so many of these features aren\rquote t really tested.
|
|
\par
|
|
\par Z800 has yaw, pitch, and roll, measured in degrees.
|
|
\par
|
|
\par But it also has many other values from all the various sensors.
|
|
\par
|
|
\par In addition to reading the inputs, you can also set the screen brightness, colours, etc.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905 I\rquote ll document this more later.}{
|
|
\lang1024\langfe1024\noproof\insrsid854924\charrsid2696905 In the meantime, you can look at VR920 examples and apply the same techniques.}{\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4983546 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 {\*\bkmkstart _Toc251216761}Trimersion{\*\bkmkend _Toc251216761}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9520219\charrsid2696905 I don\rquote t have a Trimersion, and nobody with a Trimersion has tested my pro
|
|
gram, so this section is entirely theoretical.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9520219\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 The Trimersion head-tracker acts as an ordinary mouse. So you can read it like this:
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid2559918\charrsid2696905 Var.mickeys = 1200
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 Var.yaw = }{\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905 MapRange(}{\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 mouse2.DirectInputX}{
|
|
\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905 , }{\lang1024\langfe1024\noproof\insrsid2559918\charrsid2696905 -var.mickeys,var.mickeys}{\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905 , -90 degrees,90 degrees) }{
|
|
\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905
|
|
\par Var.pitch = }{\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905 MapRange(}{\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 -mouse2.DirectInputY}{\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905 , -}{
|
|
\lang1024\langfe1024\noproof\insrsid2559918\charrsid2696905 var.mickeys,var.mickeys}{\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905 , -90 degrees,90 degrees)}{\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905 You }{\lang1024\langfe1024\noproof\insrsid3038337\charrsid2696905 may need }{
|
|
\lang1024\langfe1024\noproof\insrsid2559918\charrsid2696905 to experiment with changing var.mickeys}{\lang1024\langfe1024\noproof\insrsid3038337\charrsid2696905 to other numbers. I don\rquote
|
|
t know how many mickeys the Trimersion emulates per 90 degrees of rotation.}{\lang1024\langfe1024\noproof\insrsid351740\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 That}{\lang1024\langfe1024\noproof\insrsid9520219\charrsid2696905 code}{
|
|
\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 allows you to read it independently of the real mouse, which will probably be mouse}{\lang1024\langfe1024\noproof\insrsid14296656\charrsid2696905 1. There is no guarantee that the Trimersion}{
|
|
\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905 will be mouse2. If you are using a laptop, then the touchpad will probably be mouse1, the mouse will probably be mouse2, and the Trimersion will probably be mouse3.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid4983546\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid14296656\charrsid2696905
|
|
Normally, all the mice, including the Trimersion, will control the system mouse, and thus control the view in an FPS.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid14296656\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid14296656\charrsid2696905 But GlovePIE can swallow the mouse input so that it doesn\rquote
|
|
t control the system mouse anymore, if that is what you want\'85
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid14296656\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5312957 {\lang1024\langfe1024\noproof\insrsid5312957\charrsid2696905 mouse.Swallow = true
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5312957 {\lang1024\langfe1024\noproof\insrsid5312957\charrsid2696905 mouse.DirectInputX += Delta(mouse1.DirectInputX)
|
|
\par mouse.DirectInputY += Delta(mouse1.DirectInputY)
|
|
\par mouse.LeftButton = mouse1.LeftButton
|
|
\par mouse.RightButton = mouse1.RightButton
|
|
\par mouse.MiddleButton = mouse1.MiddleButton
|
|
\par mouse.XButton1 = mouse1.XButton1
|
|
\par mouse.XButton2 = mouse1.XButton2
|
|
\par
|
|
\par debug = var.yaw+', '+var.pitch
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid5312957\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid5312957\charrsid2696905
|
|
Adding the above code will allow mouse1 to control the system mouse, but the Trimersion and other mice will not have any effect on the }{\lang1024\langfe1024\noproof\insrsid9520219\charrsid2696905 system mouse.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9520219\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9520219\charrsid2696905 This is good fo
|
|
r if you want to emulate TrackIR with the Trimersion, while controlling other things with the mouse}{\lang1024\langfe1024\noproof\insrsid13239901\charrsid2696905 , o}{\lang1024\langfe1024\noproof\insrsid2704263\charrsid2696905
|
|
r for emulating the joystick with }{\lang1024\langfe1024\noproof\insrsid13239901\charrsid2696905 the }{\lang1024\langfe1024\noproof\insrsid2704263\charrsid2696905 Trimersion.}{\lang1024\langfe1024\noproof\insrsid9520219\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid2704263\charrsid2696905
|
|
\par To emulate a TrackIR you would add:
|
|
\par
|
|
\par FakeTrackIR.yaw = var.yaw
|
|
\par FakeTrackIR.pitch = var.pitch
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid13239901\charrsid2696905 If you have more than one real mouse, you might want to add \'93
|
|
or mouse2.LeftButton1\'94, and \'93+ Delta(mouse2.DirectInputX)\'94, etc.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid13239901\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid13239901\charrsid2696905
|
|
The Trimersion also acts as a keyboard. And GlovePIE can also read multiple keyboards individually. But }{\lang1024\langfe1024\noproof\insrsid14292408\charrsid2696905 unlike with the mouse,}{\lang1024\langfe1024\noproof\insrsid13239901\charrsid2696905
|
|
GlovePIE can\rquote t swallow the keyboard while still reading keyboards}{\lang1024\langfe1024\noproof\insrsid14292408\charrsid2696905 individually. So you can tell whether input came from the real keyboard or the Trimersion, but you can\rquote
|
|
t suppress the input from one while still allowing the input from another. However you can tell th
|
|
e game to ignore the input from the regular keys on both, and have the regular keys on the Trimersion emulate a different set of keys, and have the regular keys on the keyboard emulate a separate different set of keys. In that way, the keyboard and the Tr
|
|
imersion can control different things.}{\lang1024\langfe1024\noproof\insrsid13239901\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9048038\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9048038\charrsid2696905
|
|
Trimension acts like the following keys (you can use either keyboard2.whatever, or key2.whatever, it makes no difference):
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9048038\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9048038\charrsid2696905
|
|
Key2.R, Key2.Space, Key2.E, Key2.F, Key2.Esc, Key2.Enter, Key2.Up, Key2.Down, Key2.Left, Key2.Right, Key2.G, Key2.Tab, Key2.X, Key2.Q, Key2.Z, Key2.LCtrl, Key2.W, Key2.A, Key2.S, Key2.D
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid9520219\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16264857\charrsid2696905 Mouse2.LeftButton, Mouse2.RightButton, Mouse2.DirectInputX, Mouse2.DirectInputY
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2510693 {\lang1024\langfe1024\noproof\insrsid16408641\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid15233222 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905 {\*\bkmkstart _Toc251216762}TrackIR{\*\bkmkend _Toc251216762}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905 GlovePIE allows you to read from a real TrackIR, or emulate a fake TrackIR.}{
|
|
\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905 You can even do both at once. You can also read from other Optitrack devices.}{\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11497689
|
|
Currently reading from TrackIR the same way a game does is not working, although it will read from the fake TrackIRs created by other TrackIR emulators. To read from a real TrackIR you need to use GlovePIE\rquote s support for the OptiTrack SDK.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7479214 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905 {\*\bkmkstart _Toc251216763}TrackIR emulation{\*\bkmkend _Toc251216763}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905 Warning! TrackIR }{\lang1024\langfe1024\noproof\insrsid13121272\charrsid2696905
|
|
emulation }{\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905 support adds }{\lang1024\langfe1024\noproof\insrsid13121272\charrsid2696905
|
|
settings to your registry. The first time you run a script that uses fake TrackIR emulation, GlovePIE will add a registry setting
|
|
which tells programs where to look for the TrackIR driver. GlovePIE tells it that the TrackIR driver is in the GlovePIE directory. The TrackIR driver in the GlovePIE directory is a fake one. This fake driver will then be loaded by any TrackIR game, even i
|
|
f GlovePIE is not running. }{\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905 The fake driver just returns zeroes if GlovePIE isn\rquote t running. }{\lang1024\langfe1024\noproof\insrsid13121272\charrsid2696905
|
|
GlovePIE will also add another registry entry which says where the real driver is, so that GlovePIE can still use the}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 real driver, but other program}{
|
|
\lang1024\langfe1024\noproof\insrsid13121272\charrsid2696905 s can\rquote t.}{\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 To restor
|
|
e the registry to the correct setting, use the CP-Settings > Restore Real TrackIR menu. You only need to do that if you have a real TrackIR and you want to be able to use it instead of the fake one.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
\par There are six values that TrackIR tells the games: }{\b\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 Yaw}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 pitch}{
|
|
\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 roll}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 , }{
|
|
\b\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 x}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 , }{\b\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 y}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
, and }{\b\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 z.}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
The first three are angles in degrees. Yaw is turning to the right, pitch is looking up, and roll is tilting your head to the right. The last thre}{\lang1024\langfe1024\noproof\insrsid6295016\charrsid2696905 e are the position of your head:}{
|
|
\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905 x }{\lang1024\langfe1024\noproof\insrsid6295016\charrsid2696905 is how far you moved your head to the right, y i
|
|
s how far you moved your head up, and z is how far you moved the head towards the screen. The position is measured in metres.}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6295016\charrsid2696905
|
|
\par In your script you can set them like this:
|
|
\par
|
|
\par TrackIR.yaw = VR920.yaw
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6295016\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6295016\charrsid2696905 But I recommend that you be more specific that it is the FakeTrackIR:
|
|
\par
|
|
\par FakeTrackIR.yaw = vr920.yaw
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
They both work, but to prevent ambiguity for things like TrackIR.yaw = TrackIR.yaw + 1, you can specify RealTrackIR.yaw or FakeTrackIR.yaw. Normally reading TrackIR.yaw uses the real TrackIR, but writing it uses the fake one.}{
|
|
\lang1024\langfe1024\noproof\insrsid6295016\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11683326\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11076293\charrsid2696905 When you set the }{\b\lang1024\langfe1024\noproof\insrsid11076293\charrsid2696905
|
|
roll}{\lang1024\langfe1024\noproof\insrsid11076293\charrsid2696905
|
|
, you need to think about whether you want the game world to turn the same direction as your head to exaggerate the movement (like real TrackIR), or do you want the game world to turn in the opposite direction as your head t
|
|
urns, to counteract the movement (like in VR glasses)?
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11076293\charrsid2696905
|
|
\par For Virtual Reality, you want roll to be the opposite, like this:
|
|
\par FakeTrackIR.roll = -vr920.roll
|
|
\par
|
|
\par For a fixed screen not attached to your head, you want roll to be in the same direction, like this:
|
|
\par FakeTrackIR.roll = wiimote.roll
|
|
\par
|
|
\par In both cases it will feel backwards if you do it wrong.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11076293\charrsid2696905
|
|
Unfortunately, how a game responds to TrackIR input is not entirely standardised. The value that turns you 180 degrees in one game, might only turn you 90 degrees in another game. I tried to guess which}{
|
|
\lang1024\langfe1024\noproof\insrsid8413703\charrsid2696905 behaviour was most common and used that as the standard, but it still varies from game to game. So sometimes you will have to multiply it or divide it to make it right:}{
|
|
\lang1024\langfe1024\noproof\insrsid11076293\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid8413703\charrsid2696905
|
|
\par FakeTrackIR.yaw = vr920.yaw / 2
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905 Some games need a
|
|
totally different multiplier or divisor for the roll than for pitch and yaw. And some games may invert the roll.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905
|
|
Many TrackIR games limit the maximum amount you can turn in each direction. But some games allow you the complete 360 degrees.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905 To tell whic
|
|
h TrackIR game is running, you can read FakeTrackIR.ProfileID. It will be a different number for different games.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905
|
|
You can read FakeTrackIR.Active to tell whether any TrackIR game is currently reading }{\lang1024\langfe1024\noproof\insrsid422073\charrsid2696905 from the fake TrackIR.}{\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905
|
|
Games set their ProfileID when they start, but often only set Active while in the main game play part.}{\lang1024\langfe1024\noproof\insrsid7479214\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid422073\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid422073\charrsid2696905 FakeTrackIR.RequestFormat tells you which }{
|
|
\lang1024\langfe1024\noproof\insrsid12204237\charrsid2696905 data the TrackIR game wants. }{\lang1024\langfe1024\noproof\insrsid744561\charrsid2696905 GlovePIE provides the same complete data regardless of what the game wants. I\rquote
|
|
m guessing the RequestFormat is a bitflag representing the x, y, z, yaw, pitch, and roll fields. }{\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905 This may allow you to work out which fields a game supports. }{
|
|
\lang1024\langfe1024\noproof\insrsid744561\charrsid2696905 But games sometimes ask for the wrong RequestFormat.}{\lang1024\langfe1024\noproof\insrsid422073\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11076293\charrsid2696905 }{\lang1024\langfe1024\noproof\insrsid11683326\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905 FakeTrackIR.WindowHandle tells you the handle of the window that the game regi
|
|
stered with TrackIR. }{\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905 FakeTrackIR.Cursor is true or false and can be turned on or off by games. I don
|
|
\rquote t know what it means. It may be an attempt to switch between TrackIR being used for mouse-look and being used for TrackIR.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905 FakeTrackIR.Version is the on
|
|
ly value that you can set and the game reads. Games often ask for the version of TrackIR. You can tell it whatever you want. I don\rquote t know the format of this value.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13254174\charrsid2696905 To get a list of at least 87 }{\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905 TrackIR games you can try, see}{\lang1024\langfe1024\noproof\insrsid13254174\charrsid2696905 :}{
|
|
\lang1024\langfe1024\noproof\insrsid11873135\charrsid2696905
|
|
\par }{\field\flddirty{\*\fldinst {\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905 HYPERLINK "http://www.naturalpoint.com/trackir/03-enhanced-games/enhanced-games-all.html" }{\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905
|
|
{\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000004e00000068007400740070003a002f002f007700770077002e006e00610074007500720061006c0070006f0069006e0074002e0063006f006d002f0074007200610063006b00690072002f00300033002d0065006e00680061006e006300650064002d006700
|
|
61006d00650073002f0065006e00680061006e006300650064002d00670061006d00650073002d0061006c006c002e00680074006d006c000000e0c9ea79f9bace118c8200aa004ba90bb400000068007400740070003a002f002f007700770077002e006e00610074007500720061006c0070006f0069006e0074002e0063
|
|
006f006d002f0074007200610063006b00690072002f00300033002d0065006e00680061006e006300650064002d00670061006d00650073002f0065006e00680061006e006300650064002d00670061006d00650073002d0061006c006c002e00680074006d006c000000795881f43b1d7f48af2c825dc485276300000000
|
|
a5ab0000000000000079004100}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905 http://www.naturalpoint.com/trackir/03-enhanced-games/enhanced-games-all.html}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905
|
|
\par
|
|
\par The license agreement prohibits use with {\*\xmlopen\xmlns1{\factoidname stockticker}}America{\*\xmlclose}\rquote s Army.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905 TrackIR emulation won\rquote t work with applications}{
|
|
\lang1024\langfe1024\noproof\insrsid11497689 or games}{\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905 that use the Optitrack SDK}{\lang1024\langfe1024\noproof\insrsid11497689 , eg. ProgrammerArt\rquote s "Le Cauchemar"}{
|
|
\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid9834901 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905 {\*\bkmkstart _Toc251216764}{\*\xmlopen\xmlns1{\factoidname stockticker}}Reading{\*\xmlclose} TrackIR like a game{\*\bkmkend _Toc251216764}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9834901
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9836931 NOTE! }{\lang1024\langfe1024\noproof\insrsid11497689 This isn\rquote t working yet, except }{
|
|
\lang1024\langfe1024\noproof\insrsid9836931 for reading from fake TrackIRs from other emulators.}{\lang1024\langfe1024\noproof\insrsid11497689
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11497689\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905 In theory, if you have a real TrackIR, then GlovePIE can read from it
|
|
the same way a game would. GlovePIE pretends to be a game, and asks for the Yaw, Pitch, Roll, x, y, and z values. The TrackIR software must be running for this to work.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid13254174\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905 You can read it like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905 RealTrackIR.yaw, RealTrackIR.pitch, RealTrackIR.roll, Real
|
|
TrackIR.x, RealTrackIR.y, and RealTrackIR.z
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905
|
|
Note that these values are NOT the angles and position of the physical vector clip. They are the }{\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
angles and position of the virtual in-game head which is normally a large exaggeration of the physical movements. You can change that behaviour if you want.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
Also note that TrackIR may change the way the x, y ,z values move based on the yaw, pitch, and roll values. Which is good if you are only interested in the virtual head, but bad if you are interested in the real
|
|
head. You can turn that feature off in TrackIR.}{\lang1024\langfe1024\noproof\insrsid9834901\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905 You can also read the TrackIR version:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
\par RealTrackIR.version
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7747608 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905 {\*\bkmkstart _Toc251216765}Raw TrackIR camera input{\*\bkmkend _Toc251216765}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
You can also use the Optitrack SDK to read from a physical TrackIR camera. This existed in previous versions, but didn\rquote t work, because I forgot to start the camera. In theory it should be fixed now.}{
|
|
\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905 Although some of the names have been changed so as not to clash with the new TrackIR stuff.}{\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905
|
|
\par The TrackIR software should NOT be running when using the TrackIR like this.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905 TrackI
|
|
R.Illumination controls the IR LEDs on the TrackIR that shine on things so TrackIR can see them. It is true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905
|
|
TrackIR.GreenLED controls the green status LED. TrackIR.RedLED controls the red LED. TrackIR.BlueLED controls the blue LED.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905 You may need to set the lights a couple of times if their actual state didn\rquote
|
|
t match the state GlovePIE thought they were in.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16536908\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905 VectorClipX, VectorClipY, and VectorClipZ give the 3D position of the vector clip.
|
|
\par VectorClipYaw, VectorClipPitch, and VectorClipRoll give the orientation of the vector clip.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16536908 {\lang1024\langfe1024\noproof\insrsid16536908\charrsid2696905
|
|
You can tell whether it can see all the dots that make up the clip by reading AllDotsVisible.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16536908\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905
|
|
You can set Dist01, Dist02, Dist12 and DistoL if you have a custom vector clip that doesn\rquote t match the standard one. }{\lang1024\langfe1024\noproof\insrsid16536908\charrsid2696905 They are th
|
|
e distances between dots and between certain points on the clip.}{\lang1024\langfe1024\noproof\insrsid16722553\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16536908\charrsid2696905
|
|
\par If you don\rquote t have a vector clip, or if you just want to read dots individually, you can use:
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\langnp1036\insrsid16536908\charrsid9594416 Dot0x, Dot0y, Dot1x, Dot1y, Dot2x, Dot2y.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16536908\charrsid2696905 You may need to read the width and the height of the
|
|
camera resolution, which are in Width, and Height. You can also read the framerate of the camera in FrameRate. Note that this might not match GlovePIE\rquote s frame rate.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16536908\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid16536908\charrsid2696905
|
|
You can also read Serial, ModelNumber, ModelName, RevisionNumber, and RevisionName. }{\lang1024\langfe1024\noproof\insrsid7747608\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9836931 \page }{\lang1024\langfe1024\noproof\insrsid13254174\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid9134557 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\cf6\lang1024\langfe1024\noproof\insrsid9836931\charrsid2696905 {\*\bkmkstart _Toc251216766}{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid9836931\charrsid2696905 }{
|
|
\lang1024\langfe1024\noproof\insrsid9836931 HAT-Track{\*\bkmkend _Toc251216766}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9836931
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid9836931 VRinsight\rquote
|
|
s HAT-Track is a wired head-tracking device similar to a TrackIR with the VectorClip Pro.}{\lang1024\langfe1024\noproof\insrsid15302560 It has a frame rate of 60Hz and a field of view of 30 degrees.}{\lang1024\langfe1024\noproof\insrsid9836931
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid9836931
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid15302560 To attach the HAT-Track receiver to your screen, you will need to open the base of the receiver}{
|
|
\lang1024\langfe1024\noproof\insrsid9918381 (it opens at the horizontal cut)}{\lang1024\langfe1024\noproof\insrsid15302560 . The receiver can also swivel on it\rquote
|
|
s base so that it is facing the right direction. The receiver plugs into the transmitter. You should run the software on the CD that comes with it, and then plug in the {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose} port.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid15302560
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid15302560 Without GlovePIE, the HAT-Track software can output in 5 different ways\'85
|
|
For flight simulators it can use FSUIPC or SimConnect, for mouse-look games it can control the mouse, for joystick games it can emulate the joystick using PPJoy, and for ap
|
|
plications designed specifically for the HAT-Track (like GlovePIE) it uses something called HAT3DIPC. }{\lang1024\langfe1024\noproof\insrsid9918381
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid9918381
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid9918381
|
|
To use HAT-Track with GlovePIE you will need to run the HAT-Track software and click on the Settings menu. Then you need to choose \'93HAT3DIPC\'94.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid9918381
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid9918381 When the
|
|
HAT-Track software is running and working, it will show three small crosses connected by two lines, that move when you move your head. The receiver will also flash blue. The crosses and lines will move when you move your head. You need to press the space
|
|
bar when your head is looking at the centre of the screen, so that the deadzone will be in the right place. If you can\rquote
|
|
t get the crossses and lines to show up, then make sure the transmitter is plugged into the receiver correctly and that your transmitter is roughly vertical and up the right way}{\lang1024\langfe1024\noproof\insrsid12216738 and pointing at the receiver}{
|
|
\lang1024\langfe1024\noproof\insrsid9918381 .}{\lang1024\langfe1024\noproof\insrsid12216738 I had lots of trouble getting it to show up, but it worked eventually.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid12216738
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid12216738 The sensitivity settings in the HAT-Track software use confusing names for the 6 axes\'85
|
|
DX means Yaw, and DY means
|
|
Pitch. But DZ does not mean roll, DZ means the Z position, also known as zoom. DT means roll (tilt). DH means X position (horizontal), and DV means Y position (vertical). These settings can be left as default, or set to 100, for use with GlovePIE.
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid12216738
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid9054819 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12216738 {\*\bkmkstart _Toc251216767}Reading from HAT-Track in GlovePIE{\*\bkmkend _Toc251216767}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12216738
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid12216738 HAT-Track }{\lang1024\langfe1024\noproof\insrsid8331238
|
|
is called either hattrack or hat_track in GlovePIE. It has 6 useful values that you can read, plus some raw values that you won\rquote t need.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9836931 {\lang1024\langfe1024\noproof\insrsid8331238
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8331238 {\lang1024\langfe1024\noproof\insrsid8331238 Hattrack.Yaw is the yaw angle in degrees, it will be between -180 and 180. }{
|
|
\lang1024\langfe1024\noproof\insrsid6977743 Positive is right, negative is left. It is the angle to use in-game, not the real-world angle.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8331238 {\lang1024\langfe1024\noproof\insrsid8331238
|
|
Hattrack.Pitch is the pitch angle in degrees, it will be between -180 and 180. Positive is up and negative is down.}{\lang1024\langfe1024\noproof\insrsid6977743 It is the angle to use in-game, not the real-world angle.}{
|
|
\lang1024\langfe1024\noproof\insrsid8331238
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\insrsid6977743\charrsid6977743 Hattrack.Roll is the roll angle in degrees, between -180 and 180. Positive is right, negative is left.}{
|
|
\insrsid6977743 }{\lang1024\langfe1024\noproof\insrsid6977743 It is the angle to use in-game, not the real-world angle.}{\insrsid6977743
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\insrsid6977743 Hattrack.X is the horizontal position in metres. Positive is right, negative is left. It is the }{
|
|
\lang1024\langfe1024\noproof\insrsid6977743 distance to use in-game, not the real-world distance.}{\insrsid6977743\charrsid6977743
|
|
\par }{\insrsid6977743 Hattrack.Y is the vertical position in metres. Positive is up, negative is down. It is the }{\lang1024\langfe1024\noproof\insrsid6977743 distance to use in-game, not the real-world distance.}{\insrsid6977743\charrsid6977743
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\insrsid6977743 Hattrack.Z is the forwards/backwards position in metres. Positive is forwards, negative is back. It is the }{
|
|
\lang1024\langfe1024\noproof\insrsid6977743 distance to use in-game, not the real-world distance.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid3561877
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid534534
|
|
You can also read the XYZ position as a vector with Hattrack.pos, it is in metres in-game, and not the real world position.}{\lang1024\langfe1024\noproof\insrsid3561877
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid534534
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid534534 You can also read the raw values, but they don\rquote
|
|
t provide any additional information, so their usage is not recommended. RawX, RawY, RawZ, RawPitch, RawYaw, and RawRoll are integer values with 16383 representing the centre. Raw values starting with \'93g\'94 are decimal values
|
|
scaled so that 0 is the centre and it is between roughly -1 and 1. gDx is Yaw, gDy is Pitch, gDz is Z, gDt is Roll, gPx is X, and gPy is Y. They do not provide any additional information}{\lang1024\langfe1024\noproof\insrsid4325625
|
|
, and the axes are not always measured in the same direction as the processed values above}{\lang1024\langfe1024\noproof\insrsid534534 .
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid534534
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4325625 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4325625 {\*\bkmkstart _Toc251216768}Emulating TrackIR}{\lang1024\langfe1024\noproof\insrsid534534 {\*\bkmkend _Toc251216768}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4325625
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid4325625 You can emulate TrackIR easily like this:
|
|
\par FakeTrackIR.yaw = HatTrack.yaw
|
|
\par FakeTrackIR.pitch = HatTrack.pitch
|
|
\par FakeTrackIR.roll = HatTrack.roll
|
|
\par FakeTrackIR.x = HatTrack.x
|
|
\par FakeTrackIR.y = HatTrack.y
|
|
\par FakeTrackIR.z = HatTrack.z
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid4325625 You might want to scale the values though, by dividing or multiplying by something. For example\'85
|
|
FakeTrackIR.roll = HatTrack.roll / 3
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid4325625 You might also want to leave out the roll altogether if you find it annoying.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4325625 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid4325625 {\*\bkmkstart _Toc251216769}Emulating HAT-Track{\*\bkmkend _Toc251216769}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4325625
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid4325625 You can (theo
|
|
retically) emulate a HAT-Track, for any game or application that uses the HAT3DIPC interface. This allows you to play a HAT-Track game with a TrackIR, VR920, Z800, or whatever. Just set the HatTrack.yaw, HatTrack.Pitch, etc. values instead of reading the
|
|
m.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6977743 {\lang1024\langfe1024\noproof\insrsid4325625 Eg.
|
|
\par
|
|
\par HatTrack.yaw = VR920.yaw
|
|
\par HatTrack.pitch = VR920.pitch
|
|
\par HatTrack.roll = VR920.roll
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4325625\charrsid6977743
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid6977743 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905 \page {\*\bkmkstart _Toc251216770}Novint Falcon{\*\bkmkend _Toc251216770}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
The Novint Falcon is a consumer-priced 3D input device with extremely sophisticated haptic feedback. To create the sense of touch, or physical objects accurately, it normally updates the forces 1000 times per second. GlovePIE can\rquote
|
|
t really go that fast, but you can set GlovePIE\rquote s frame rate quite high with lines like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
\par PIE.FrameRate = 500Hz
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905 With the normal grip, the falcon has 4 buttons, which you c
|
|
an read as follows. They are either true or false:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
\par Falcon.Button1, Falcon.Button2, Falcon.Button3, and Falcon.Button4
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
But the Falcon supports grips with up to 31 buttons, so GlovePIE also supports Button5 to Button31 just in case Novint release}{\lang1024\langfe1024\noproof\insrsid5528763\charrsid2696905 s}{\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
new grips one day.}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
\par The Falcon }{\lang1024\langfe1024\noproof\insrsid5528763\charrsid2696905 can measure the 3D position of the grip, which will be in these values:}{\lang1024\langfe1024\noproof\insrsid9134557\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5528763\charrsid2696905
|
|
\par Falcon.x (How far to the right the grip is)
|
|
\par Falcon.y (How far up the grip is)
|
|
\par Falcon.z (How far towards the body of the falcon the grip is)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5528763\charrsid2696905 They are all measur
|
|
ed in metres by default. But GlovePIE supports units, so you can use whatever units you want, like this:}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5528763\charrsid2696905
|
|
\par Key.D = Falcon.X > 1 inch
|
|
\par Key.A = Falcon.X < -1 inch
|
|
\par Key.W = Falcon.Z > 3 cm
|
|
\par Key.S = Falcon.Z < -3 cm
|
|
\par
|
|
\par The range of the Falcon is small, it goes from -2 inches to +2 inches in each direction.}{\lang1024\langfe1024\noproof\insrsid8546000\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid15492009\charrsid2696905
|
|
\par You can also read the position as a vector, with falcon.pos.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid15492009\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\b\lang1024\langfe1024\noproof\insrsid5528763\charrsid2696905 Warning! Danger! }{\lang1024\langfe1024\noproof\insrsid5528763\charrsid2696905
|
|
The Falcon also allows you to set forces. This means that the falcon can push your hand in any direction. It also means it can injure you, break things, or whatever}{\lang1024\langfe1024\noproof\insrsid15492009\charrsid2696905
|
|
else a robot arm can do. Even if your script is perfect, GlovePIE is not, it has bugs, so there is a chance that the grip may move about in unexpected ways. So hold it carefully and in such a way that it won\rquote t injure you if i
|
|
t moves suddenly. And start by using only small forces in your script, then make them bigger.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid15492009\charrsid2696905
|
|
\par You can set the forces in the 3 directions like this:
|
|
\par
|
|
\par Falcon.ForceX, Falcon.ForceY, Falcon.ForceZ
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid15492009\charrsid2696905 The force is in {\*\xmlopen\xmlns1{\factoidname stockticker}}Newtons{\*\xmlclose}
|
|
by default. The force of Gravity is -9.8 {\*\xmlopen\xmlns1{\factoidname stockticker}}Newtons{\*\xmlclose} per kilogram. }{\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905
|
|
That means that when you hold something that weighs 100 grams in your hand, it will push down on your hand with a force of 1 {\*\xmlopen\xmlns1{\factoidname stockticker}}Newton{\*\xmlclose}.}{\lang1024\langfe1024\noproof\insrsid15492009\charrsid2696905
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905
|
|
But you can also use units of weight to specify the force, and GlovePIE will convert them. For example:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905
|
|
\par Falcon.ForceY = -0.5 pounds
|
|
\par
|
|
\par That will make the grip feel half a pound heavier.}{\lang1024\langfe1024\noproof\insrsid5528763\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905
|
|
\par The maximum force is about 2 pounds, 1 kilogram, or 10 {\*\xmlopen\xmlns1{\factoidname stockticker}}Newtons{\*\xmlclose}.
|
|
\par
|
|
\par Here is an example of how to make a force at a certain point:
|
|
\par
|
|
\par If falcon.x < -1 inch then
|
|
\par }\pard \ql \fi120\li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4535543 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905 falcon.ForceX = 2 newtons
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4535543 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905 else
|
|
\par }\pard \ql \fi120\li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4535543 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905 falcon.ForceX = 0
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4535543 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905 end if
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905 That makes the falcon push you back if you try to move too far to the left.
|
|
\par
|
|
\par You can also set the force as a vector with Falcon.Force
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid13133920\charrsid2696905 Falcon.exists will be true when the falcon (and driver) exists, and false
|
|
when it doesn\rquote t.}{\lang1024\langfe1024\noproof\insrsid4535543\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13133920\charrsid2696905
|
|
\par Falcon.homed will be true when the falcon has been homed, and false when it hasn\rquote t.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid9440993\charrsid2696905 See }{\field\flddirty{\*\fldinst {
|
|
\lang1024\langfe1024\noproof\insrsid9440993\charrsid2696905 HYPERLINK "http://home.novint.com/community/message_boards.php" }{\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000003400000068007400740070003a002f002f0068006f006d0065002e006e006f00760069006e0074002e0063006f006d002f0063006f006d006d0075006e006900740079002f006d006500730073006100670065005f0062006f0061007200640073002e007000
|
|
680070000000e0c9ea79f9bace118c8200aa004ba90b8000000068007400740070003a002f002f0068006f006d0065002e006e006f00760069006e0074002e0063006f006d002f0063006f006d006d0075006e006900740079002f006d006500730073006100670065005f0062006f0061007200640073002e007000680070
|
|
000000795881f43b1d7f48af2c825dc485276300000000a5ab0000000000000000009f000000}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid9440993\charrsid2696905 http://home.novint.com/community/message_boards.php}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid9440993\charrsid2696905 for discussion on using the Novint Falcon.}{
|
|
\lang1024\langfe1024\noproof\insrsid13133920\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid9440993\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid5316775 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905 {\*\bkmkstart _Toc251216771}3DConnexion SpaceNavigator, etc.{\*\bkmkend _Toc251216771}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
GlovePIE now supports 3DConnexion 6DOF input devices like the SpaceNavigator, SpaceTraveler, SpaceExplorer, and SpacePilot. These are the modern descendents of the original SpaceBall which you might have heard of many years ago.}{
|
|
\lang1024\langfe1024\noproof\insrsid6308141\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
\par GlovePIE calls them all \'93SpaceBall\'94.
|
|
\par
|
|
\par The \'93SpaceBall\'94 provides 3 position values, and three rotation values:
|
|
\par
|
|
\par SpaceBall.x, SpaceBall.y, and SpaceBall.z.
|
|
\par
|
|
\par X is how far you are pushing to the right
|
|
\par Y is how far you are pulling up
|
|
\par Z is how far you are pushing forwards (away from your body)
|
|
\par
|
|
\par SpaceBall.yaw, SpaceBall.pitch, and SpaceBall.roll
|
|
\par
|
|
\par Yaw is how far you are twisting it to the right
|
|
\par Pitch is how far you are tilting it upwards
|
|
\par Roll is how far you are tilting it to the right
|
|
\par
|
|
\par The spaceball can only move a limited amount in each direction.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905 The units for x, y, z, yaw, pitch and roll are the same. But they depend on the }{
|
|
\lang1024\langfe1024\noproof\insrsid8410455\charrsid2696905 settings in the control panel. }{\lang1024\langfe1024\noproof\insrsid3944772\charrsid2696905 3DConnexion does that deliberately so that users can choose the speed and sensitivit
|
|
y they want outside the applications. So the maximum value could be 80 or it could be more than a thousand, depending on control panel settings.}{\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid3944772\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid3944772\charrsid2696905 It is not recommended to require the full use of the spaceball\rquote
|
|
s range. Most of the time users will only use about 75% of the range.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid3944772\charrsid2696905
|
|
Most people will only have a SpaceNavigator. It has two buttons. But the user can choose what those two buttons are in Control Panel.}{\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905
|
|
You need to know what those buttons are set to, if you want to use them in GlovePIE.}{\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905 For example if the left button is set to be the \'93Fit\'94
|
|
button in control panel, then you need to read it like this in GlovePIE:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905
|
|
\par Enter = SpaceBall.Fit
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905 In control panel, the buttons can be set to either \'93Fit\'94, \'93ApplicationPanel
|
|
\'94, or \'93Button1\'94\'85 \'93Button29\'94.}{\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905 If you have
|
|
a SpaceExplorer or SpacePilot, then there will be more than two buttons and they might have fixed functions.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid5316775\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905 You can detect what kind of spaceball it is, by reading SpaceBall.Type.
|
|
\par You can also detect whether the SpaceBall exists by reading SpaceBall.exists.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid6901694\charrsid2696905
|
|
If you want the angles in some other form besides Yaw, Pitch, and Roll, then you can use }{\lang1024\langfe1024\noproof\insrsid222623\charrsid2696905
|
|
AxisAngle or a rotation matrix. For the rotation matrix, just use SpaceBall.RotMat. For AxisAngle just use SpaceBall.Axis to get the axis vector that the rotatio
|
|
n is rotating around, and use SpaceBall.AxisAngle to get the angle of rotation around that axis.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid222623\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid222623\charrsid2696905 \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid222623 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid222623\charrsid2696905 {\*\bkmkstart _Toc251216772}PlayStation 3 SIXAXIS{\*\bkmkend _Toc251216772}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid222623\charrsid2696905
|
|
The SIXAXIS, or PS3 Controller, is intended to be a wireless Bluetooth HID device, which can also connect via a {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose} charge cable.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid222623\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid222623\charrsid2696905 Unfortunately it is NOT a valid Bluetooth device, so it can\rquote
|
|
t connect to the PC via Bluetooth without rewriting the operating system. Rewriting the operating system is only an option on Linux.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid222623\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7281959\charrsid2696905 So you can only use it with GlovePIE while it is plugged into a {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}USB{\*\xmlclose} port with a {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose} charge cable. So it effectively becomes a wired controller instead of a wireless one.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905 If you don\rquote t own a PS3, you will need to buy a {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}USB{\*\xmlclose} charge cable. I bought a MadCatz one.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid7281959
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid13258629 GlovePIE 0.40 now sort of supports the Dual Shock 3, except that you can\rquote
|
|
t use the gyro without making it rumble constantly at 50% strength.}{\lang1024\langfe1024\noproof\insrsid4012407 That\rquote s because the same value seems to control the voltage to both the gyro and the rumble.}{
|
|
\lang1024\langfe1024\noproof\insrsid13258629
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid13258629\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15472096 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905 {\*\bkmkstart _Toc251216773}Installation{\*\bkmkend _Toc251216773}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7281959\charrsid2696905 True to form, it is also NOT a valid HID device, so the only way to
|
|
read it from Windows is by using a special driver called LibUSB-win32.}{\lang1024\langfe1024\noproof\insrsid2836244\charrsid2696905 This driver allows it to communicate with {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose}
|
|
devices directly without going through the normal windows HID layer.}{\lang1024\langfe1024\noproof\insrsid7281959\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15233222 {\lang1024\langfe1024\noproof\insrsid7281959\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905 You can download LibUSB-win32 from here:
|
|
\par }{\field\flddirty{\*\fldinst {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905 HYPERLINK "http://sourceforge.net/project/showfiles.php?group_id=78138" }{\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000003c00000068007400740070003a002f002f0073006f00750072006300650066006f007200670065002e006e00650074002f00700072006f006a006500630074002f00730068006f007700660069006c00650073002e007000680070003f00670072006f007500
|
|
70005f00690064003d00370038003100330038000000e0c9ea79f9bace118c8200aa004ba90b9000000068007400740070003a002f002f0073006f00750072006300650066006f007200670065002e006e00650074002f00700072006f006a006500630074002f00730068006f007700660069006c00650073002e00700068
|
|
0070003f00670072006f00750070005f00690064003d00370038003100330038000000795881f43b1d7f48af2c825dc485276300000000a5ab00000000000000000000000000}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
http://sourceforge.net/project/showfiles.php?group_id=78138}}}\sectd \linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4676548 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
There are two varieties of LibUSB-Win32. There is a "Filter Driver", which allows the program to talk to any {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose} device but also allows Windows t
|
|
o talk to it at the same time. This means you can use the SIXAXIS with GlovePIE and as a normal joystick at the same time.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4676548 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4676548 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
The other variety is the the "Device Driver", which is a replacement driver for that particular device, and only allows GlovePIE and
|
|
other libusb-win32 programs to talk to that hardware. Windows will no longer be able to talk to that device if you use the device driver. The "Device Driver" works fine with GlovePIE (you will need PPJoy to use it as a fake joystick) but won't work with
|
|
anyone else's sixaxis driver, because they rely on windows being able to talk to it.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4676548 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4676548 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
On Windows Vista, I couldn't get the Filter Driver to install successfully, so you will probably need to use the "Device Driver" if you have {\*\xmlopen\xmlns1{\factoidname stockticker}}Vista{\*\xmlclose}. On my Windows XP comput
|
|
er I got the Filter Driver to install, but it crashes whenever I run GlovePIE or any of the SIXAXIS drivers made by other people. However it must work for some people, because all the other sixaxis drivers say to use the Filter Driver. So if you are not u
|
|
sing {\*\xmlopen\xmlns1{\factoidname stockticker}}Vista{\*\xmlclose}, try the Filter Driver first.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4676548 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
\par The filter driver is easy to install. So you won't need any help with that.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4676548 {\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
The device driver is much harder to install. It comes with a program called "inf-wizard" in the "bin" folder. You need to run this program. Then you need to plug in your SIXAXIS into a {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose}
|
|
port that you {\*\xmlopen\xmlns1{\factoidname stockticker}}DON{\*\xmlclose}
|
|
'T want to use for the SIXAXIS. Because windows will detect it and install its own driver on that port, stopping that port from working with LibUSB. If windows asks you about installing a
|
|
driver when you plug it in, say no. Then press "Next" in inf-wizard. Then choose the device which says "0x054C, 0x0268" (your SIXAXIS). Then click next. You don't need to change the manufacturer name or device name unless you want to, so click next. Then
|
|
i
|
|
t will pop up a save dialog box. You need to save it in the same bin folder where you ran inf-wizard from. It doesn't matter what you call it, but I called it "sixaxis-libusb.inf". If User Account Control won't let you save it in the bin folder, save it s
|
|
o
|
|
mewhere you can find it, and then afterwards copy the ".inf" and ".cat" files into the bin folder manually. You now have a libusb driver for the sixaxis ready to install. You can't install it by right-clicking, so instead go into Control Panel, Add [New]
|
|
Hardware. Click Next. Choose to install the hardware from a list, Show all devices, have disk. Then browse to the }{\lang1024\langfe1024\noproof\insrsid13785436 libusb-win32 }{\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905 bin directory. }{
|
|
\lang1024\langfe1024\noproof\insrsid13785436 Select the .inf file you created, and click next to install it. The driver is unsigned because Microsoft doesn\rquote t al
|
|
low anyone except companies to sign drivers, so if it complains, tell it to install anyway. }{\lang1024\langfe1024\noproof\insrsid4676548\charrsid2696905
|
|
Then your libusb device driver should be installed. Now you need to plug your SIXAXIS into a port that you haven't plugged it into before, and it should work. To us
|
|
e it on a port that you have plugged it into before, you will need to remove the existing HID driver installed by windows.}{\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
Once you have got the libusb installed, and your sixaxis plugged into a new usb port, you should use the testlibusb-win program to t
|
|
est it. It should include the Sony Playstation 3 controller in its list. If it doesn't, and the driver says version -1,-1,-1,-1 it means the filter driver didn't install correctly, so you may want to uninstall it and either try again, or use the device dr
|
|
i
|
|
ver instead. On the other hand, if the driver version is right, but the Sony playstation 3 controller isn't listed, try plugging it into a different port and running testlibusb-win again. If it doesn't show up in testlib-usb then it won't work with GloveP
|
|
IE.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par Once you have libusb-win32 working, you can run GlovePIE.
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid877281 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 {\*\bkmkstart _Toc251216774}Using SIXAXIS in GlovePIE{\*\bkmkend _Toc251216774}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\cf2\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 The SIXAXIS won't do anything until you switch it on by pressing the PS button.
|
|
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10037298\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 There is a chance glovepie will freeze up when you try to use the sixaxis due to a bu
|
|
g in Libusb-win32. This happened to me on my WinXP computer. If this happens then you won't be able to end the task in task manager, and you have to reboot. Uninstall the filter driver if this is happening and try the device driver.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15601759\charrsid2696905 When you start your sc
|
|
ript, you should leave the SIXAXIS sitting still for a few seconds while it calibrates the rate gyro so it can calculate }{\lang1024\langfe1024\noproof\insrsid268768\charrsid2696905
|
|
Yaw. The SIXAXIS accelerometers should be calibrated first from the CP-Settings menu for this to work properly.}{\lang1024\langfe1024\noproof\insrsid15601759\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15601759\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 To read the raw accele
|
|
rations, use SixAxis.RawForceX, Sixaxis.RawForceY, and Sixaxis.RawForceZ. When the sixaxis is in free-fall all the forces will be 0. When you hold it up against gravity, the force of you holding it up will be included, along with any actual accelerations.
|
|
X means towards the right of the sixaxis (in the direction of the circle button), Y means towards the top of the sixaxis, Z means towards the front of the sixaxis (where the {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose} cable is).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 You should not use the raw accelerations in your scripts. Instead
|
|
you should go to the CP-Settings menu and choose SIXAXIS calibration. Then follow the instructions to calibrate all your SIXAXES. Once you have saved the calibration you will be able to use SixAxis.Roll, SixAxis.Pitch, SixAxis.SmoothRoll, and SixAxis.Smoo
|
|
thPitch to get the SIXAXIS rotation. You will also be able to use SixAxis.gx, SixAxis.gy, and sixaxis.gz to get the raw accelerations (including gravity) measured in Gs.}{\lang1024\langfe1024\noproof\insrsid10037298\charrsid2696905
|
|
You can then use SixAxis.RelAccX, SixAxis.RelAccY, and SixAxis.RelAccZ.}{\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 To read the an
|
|
alog sticks use SixAxis.Joy1x, Joy1y, Joy2x, and Joy2y. They are between -1 and 1. You can also read DPadX and DPadY the same way.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
Pushing vertically down on the analog sticks gives you the L3 and R3 buttons. They are digital and can only be true or false. The Select, Start, and PS buttons are the same.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
The other buttons can all be read as either analog or digital. The analog version will be between 0 and 1, and end with "Analog". The digital versions are true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 Sixaxis.y}{\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
aw tells you the yaw angle}{\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 . Unlike the pitch and roll, the }{\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905 absolute }{\lang1024\langfe1024\noproof\insrsid877281\charrsid2696905 ya}
|
|
{\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
w can never be measured. The SIXAXIS uses a rate-gyro to measure the speed of yaw rotation, and keeps track of the yaw value based on yaw speed. If you rotate the SIXAXIS too fast, the gyro sensor will max out,
|
|
and the yaw value will become incorrect. Also if you are tilting the SIXAXIS while you yaw it, the yaw value will also become incorrect.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
Unlike pitch and roll, your script can set Sixaxis.yaw. Normally you will want to set it to zero when the user presses a button. For example:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
\par If sixaxis.circle then sixaxis}{\lang1024\langfe1024\noproof\insrsid11427262\charrsid2696905 .yaw = 0}{\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11427262\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid11427262\charrsid2696905 To calibrate the SIXAXIS gyro, you can read}{
|
|
\lang1024\langfe1024\noproof\insrsid10037298\charrsid2696905 sixaxis.RawG}{\lang1024\langfe1024\noproof\insrsid11427262\charrsid2696905 yro. Y}{\lang1024\langfe1024\noproof\insrsid10037298\charrsid2696905 ou can then set sixaxis.RawGyroZ}{
|
|
\lang1024\langfe1024\noproof\insrsid11427262\charrsid2696905 ero to the value that corresponds to not rotating at all. You should do this if your yaw keeps drifting. }{\lang1024\langfe1024\noproof\insrsid10037298\charrsid2696905 Eg.}{
|
|
\lang1024\langfe1024\noproof\insrsid11427262\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10037298\charrsid2696905
|
|
\par If sixaxis.square then sixaxis.RawGyroZero = smooth(sixaxis.RawGyro)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15601759\charrsid2696905
|
|
You can also read or set sixaxis.DegreesPerRawGyro if turning the SIXAXIS 180 degrees doesn\rquote t turn the yaw by 180 degrees.}{\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905 The SIXAXIS has 4 player LEDs, like the Wiimote.
|
|
Unlike the Wiimote, these LEDs are controlled by a timer chip}{\lang1024\langfe1024\noproof\insrsid13909937\charrsid2696905 and can be set to flash at any rate, in any pattern}{\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905 .}{
|
|
\lang1024\langfe1024\noproof\insrsid13909937\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid13909937\charrsid2696905
|
|
\par Sixaxis.Led1Frequency = 10Hz}{\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13909937\charrsid2696905
|
|
\par You can also make an LED turn itself off after a specific duration:
|
|
\par
|
|
\par Sixaxis.Led1Duration = 1 second
|
|
\par
|
|
\par You can set it to infinity if you want it to stay on:
|
|
\par
|
|
\par Sixaxis.Led1Duration = infinity
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15472096 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905 {\*\bkmkstart _Toc251216775}Bluetooth{\*\bkmkend _Toc251216775}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15472096 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15472096 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905 You can read or set the BlueTooth {\*\xmlopen\xmlns1{\factoidname stockticker}}MAC
|
|
{\*\xmlclose} Address which is stored in the Sixaxis, by using Sixaxis.BlueToothMAC. On a new sixaxis it will be "{\*\xmlopen\xmlns1{\factoidname stockticker}}00:00:00:00:00:00{\*\xmlclose}". You shou
|
|
ld set it to the address of the bluetooth adapter on your computer. Then your SIXAXIS will be able to connect to that Bluetooth adapter. You will need to go into your bluetooth stack to find the address of your bluetooth adapter. You could also try settin
|
|
g it to the bluetooth address of any other device you want to pair the SIXAXIS with. Here is an example of how to use it:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15472096 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
\par debug = sixaxis.BluetoothMAC
|
|
\par if pressed(sixaxis.PS) then
|
|
\par sixaxis.BluetoothMAC = "{\*\xmlopen\xmlns1{\factoidname stockticker}}00:10{\*\xmlclose}:C6:59:00:4A" // put your BT address here
|
|
\par end if
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15472096 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
Once you have set the BluetoothMAC, you can make the SIXAXIS discoverable by pressing the PS button.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15472096 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15472096 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
Unfortunately when I try to pair the SIXAXIS using Bluetooth it keeps connecting and then disconnecting. I have never successfully paired the SIXAXIS
|
|
via bluetooth. If you do get the SIXAXIS to pair via bluetooth, let me know how you did it. But GlovePIE does not support SIXAXES connected via Bluetooth yet.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15472096 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15472096 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905 {\*\bkmkstart _Toc251216776}Sometimes it stops working{\*\bkmkend _Toc251216776}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15472096 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10359353\charrsid2696905 If your SIXAXIS}{\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905 stops working one day, you can fix the problem by pressing the Reset bu}{
|
|
\lang1024\langfe1024\noproof\insrsid10359353\charrsid2696905 tton on the back of your SIXAXIS}{\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
. You will need a pin or skewer or something like that. The reset button will not reset the BluetoothMac. You can set the BluetoothMac back to its original value by setting it to "" or "{\*\xmlopen\xmlns1{\factoidname stockticker}}00:00:00:00:00:00
|
|
{\*\xmlclose}" in }{\lang1024\langfe1024\noproof\insrsid10359353\charrsid2696905 GlovePIE}{\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid1261146\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15472096\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid13789401 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15233222\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 {\*\bkmkstart _Toc251216777}PlayStation 3 BDRemote{\*\bkmkend _Toc251216777}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 The BD Remote is the PlayStation 3's Blueray Disc remote. It is a }{
|
|
\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 Bluetooth}{\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
remote control, like the Wii Remote is. You need to connect it using your Bluetooth software before you can use it in GlovePIE. You also need
|
|
to use the correct setting for Bluetooth Fix in the troubleshooter menu. It should be off for BlueSoleil, and on for Microsoft.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
The BD Remote has many buttons, they will be either true or false. You can assign them to keys like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
\par Escape = BDRemote.Eject
|
|
\par
|
|
\par Here is the complete list of buttons:
|
|
\par
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 Eject, Num1, Num2, Num3,
|
|
\par Audio, Num4, Num5, Num6,
|
|
\par Angle, Num7, Num8, Num9,
|
|
\par Subtitle, Clear, Num0, Time,
|
|
\par Blue, Red, Green, Yellow,
|
|
\par Display, TopMenu, Popup, Return,
|
|
\par Triangle, Circle
|
|
\par Up, Down, Left, Right, Enter
|
|
\par Square, Cross
|
|
\par L1, PS, R1,
|
|
\par L2, R2,
|
|
\par L3, Select, Start, R3,
|
|
\par Rewind, Play, FastForward,
|
|
\par Prev, Stop, Next,
|
|
\par StepRev, Pause, StepFwd
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
Some buttons can be read while you're holding down multiple buttons, and some buttons can only be read when you're only holding down a single button.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
The buttons which are also on a SIXAXIS or normal playstation controller, plus the Enter button (which is not on a SIXAXIS) can always be read even when you hold down multiple buttons. Other buttons can't.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 You can tell when the user i
|
|
s holding down too many buttons at the same time with: BDRemote.}{\b\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 TooManyButtons}{\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 . It is true or false.\line
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 You can also tell which button is currently down by reading: BDRemote.}{
|
|
\b\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 Button}{\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 which is 0 for no button, or a number between 1 and 254 indicating which button is down, or -1 for too many buttons.
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13789401 {\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 You can tell whether}{\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905
|
|
any button is pressed }{\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 or not }{\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 with }{\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 BDRemote.}{
|
|
\b\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 AnyButton}{\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 which is either true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 There is also BDRemote.}{
|
|
\b\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 Exists}{\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 , and BDRemote.}{\b\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 Count}{
|
|
\lang1024\langfe1024\noproof\insrsid15799068\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid13789401\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid538645\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid2828343 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid2828343\charrsid2696905 {\*\bkmkstart _Toc251216778}XBox360 Controller{\*\bkmkend _Toc251216778}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid2828343\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid2828343\charrsid2696905 The XBox360 controller is a Microsoft gamepad}{
|
|
\lang1024\langfe1024\noproof\insrsid6514582\charrsid2696905 that is only partially compatible with Microsoft\rquote s DirectInput}{\lang1024\langfe1024\noproof\insrsid2828343\charrsid2696905 . }{
|
|
\lang1024\langfe1024\noproof\insrsid6514582\charrsid2696905 GlovePIE can read it both as a joystick, or as an XInput device. XInput is Microsoft\rquote s new alternative to DirectInput that only works on Microsoft gamepads.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905
|
|
\par I don\rquote t have an XBox360 controller, so I haven\rquote t GlovePIE with it yet.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6514582\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905
|
|
Unlike its competitors, the XBox360 controller has no motion sensing. It has two analog sticks (joy1, and joy2), and two analog triggers (}{\lang1024\langfe1024\noproof\insrsid15478467\charrsid2696905 LeftTrigger, RightTrigger}{
|
|
\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905 ). The rest of the buttons are digital.}{\lang1024\langfe1024\noproof\insrsid9780913\charrsid2696905 The gamepad can also vibrate.}{\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905
|
|
GlovePIE supports a maximum of four XBox360 controllers. They will be called XInput1, XInput2, XInput3, and XInput4.}{\lang1024\langfe1024\noproof\insrsid9780913\charrsid2696905 If you need more than 4, then you can read them as joysticks instead.}{
|
|
\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid9780913\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15478467\charrsid2696905 You can\rquote t control the LEDs in the \'93Ring Of Light\'94
|
|
. They will be set automatically to whatever the player number is.}{\lang1024\langfe1024\noproof\insrsid2714939\charrsid2696905 You also can\rquote t use the home button.}{\lang1024\langfe1024\noproof\insrsid9780913\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15478467\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2714939 {\lang1024\langfe1024\noproof\insrsid15478467\charrsid2696905 XInput1.A, XInput1.B, XInput1.X, and XInput1.Y are the main buttons. }{
|
|
\lang1024\langfe1024\noproof\insrsid2714939\charrsid2696905 They are either true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid2714939\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2714939 {\lang1024\langfe1024\noproof\insrsid2714939\charrsid2696905 XInput1.Back and XInput1.Start are the Back a
|
|
nd Start buttons on either side of the ring of light. They are either true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15478467\charrsid2696905
|
|
\par XInput1.Up, XInput1.Down, XInput1.Left, and XInput1.Right are the DPad directions. They are }{\lang1024\langfe1024\noproof\insrsid2714939\charrsid2696905 also }{\lang1024\langfe1024\noproof\insrsid15478467\charrsid2696905 either true or false.}{
|
|
\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid15478467\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid2714939\charrsid2696905 XInput1.LeftShoulder and XInput1.RightShoulder are
|
|
the (digital) shoulder buttons, and are true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid2714939\charrsid2696905 \line XInput1.LeftTrigger}{
|
|
\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905 and XInput1.RightTrigger are the analog trigger buttons under the shoulder buttons. They will be between 0 and 1.}{\lang1024\langfe1024\noproof\insrsid2714939\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905 XInput1.LeftThumb and XInput1.RightThumb are the buttons that yo
|
|
u trigger by pushing in the two joysticks (with your thumb). They are the equivalent of L3 and R3 buttons on a PlayStation controller (But don\rquote t try this on a Wii Classic Controller).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905 XInput1.Joy1X is the horizontal input of the left joystick. It is betwe
|
|
en -1 and 1, with 1 being to the right. Joy1Y is the vertical input of the left joystick. Positive means down. You can also access it as a vector [x, y], with just XInput1.Joy1.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905
|
|
\par XInput1.Joy2X, XInput1.Joy2Y, and XInput1.Joy2 are the right joystick.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid1655232\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905 XInput1.ExtraButton1, and XInput1.ExtraButton2 don\rquote
|
|
t exist yet. But XInput allows for future controllers to add those buttons.}{\lang1024\langfe1024\noproof\insrsid6514582\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905
|
|
XInput1.Vibration1, and XInput1.Vibration2 control the vibration. You can set them to a value between 0 and 1.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid10834487\charrsid2696905 XInput1.Exists is tru
|
|
e if that controller exists. XInput.count is the total number of XInput controllers connected (0 to 4).}{\lang1024\langfe1024\noproof\insrsid538645\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid12595373 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905 {\*\bkmkstart _Toc251216779}Concept 2 Rowing Machine{\*\bkmkend _Toc251216779}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
If you have a Concept 2 rowing machine, also known as an ergo, you can connect it to the PC via a {\*\xmlopen\xmlns1{\factoidname stockticker}}USB{\*\xmlclose} cable (which it should have come with).}{
|
|
\lang1024\langfe1024\noproof\insrsid4205215\charrsid2696905 It can be a PM3 or PM4.}{\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\cf2\lang1024\langfe1024\noproof\insrsid4205215\charrsid2696905 You must run GlovePIE.exe as an administrator if you are using {\*\xmlopen\xmlns1
|
|
{\factoidname stockticker}}Vista{\*\xmlclose}! Otherwise the rowing machine won\rquote t work.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid4205215\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
That allows you to use it with programs like GlovePIE, or to update the rowing machine\rquote s firmware.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905 Updating the rowing machine\rquote
|
|
s firmware is a good idea, because it downloads the Fish Game onto your rowing machine. The fish game is really fun and works when it is not connected to the computer. You can update the firmware from here: }{\field\flddirty{\*\fldinst {
|
|
\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905 HYPERLINK "http://www.concept2.com/us/support/software/firmware/" }{\lang1024\langfe1024\noproof\insrsid4008458\charrsid2696905 {\*\datafield
|
|
00d0c9ea79f9bace118c8200aa004ba90b02000000170000003600000068007400740070003a002f002f007700770077002e0063006f006e00630065007000740032002e0063006f006d002f00750073002f0073007500700070006f00720074002f0073006f006600740077006100720065002f006600690072006d007700
|
|
6100720065002f000000e0c9ea79f9bace118c8200aa004ba90b8400000068007400740070003a002f002f007700770077002e0063006f006e00630065007000740032002e0063006f006d002f00750073002f0073007500700070006f00720074002f0073006f006600740077006100720065002f006600690072006d0077
|
|
006100720065002f000000795881f43b1d7f48af2c825dc485276300000000a5ab000000000000000000000300}}}{\fldrslt {\cs15\ul\cf2\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905 http://www.concept2.com/us/support/software/firmware/}}}\sectd
|
|
\linex0\footery964\colsx708\endnhere\sectlinegrid326\sectdefaultcl\sectrsid5865126\sftnbj {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par
|
|
\par To use the rower in GlovePIE, the following are available:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid877281 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12595373 {\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905 Rower.Distance}{\lang1024\langfe1024\noproof\insrsid16127199\charrsid2696905
|
|
: The total distance rowed, in metres.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12595373 {\lang1024\langfe1024\noproof\insrsid16127199\charrsid2696905 Rower.Distance2: Another version of the above. May be slightly different.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12595373 {\lang1024\langfe1024\noproof\insrsid16127199\charrsid2696905
|
|
Rower.StrokeState: The part of the stroke you are currently in. 0 and 1 correspond to the wheel starting up. 2 means pulling. 3 means holding. 4 means releasing.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12595373 {\lang1024\langfe1024\noproof\insrsid16127199\charrsid2696905 Rower.Pulling: True when doing the pulling part of the stroke
|
|
\par Rower.Holding: True when doing the holding part of the stroke
|
|
\par Rower.Releasing: True when doing the releasing part of the stroke
|
|
\par
|
|
\par Rower.Power: How hard they were pulling during the stroke. In watts (Joules per second).
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4155809\charrsid2696905
|
|
\par Rower.HeartRate: Beats per minutes (if you have a heart-rate monitor) in \'93per minute\'94.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid16127199\charrsid2696905
|
|
\par Rower.Calories: Total calories burned so far}{\lang1024\langfe1024\noproof\insrsid4155809\charrsid2696905 .}{\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid4155809\charrsid2696905
|
|
\par Rower.Cadence: Strokes per minute.
|
|
\par
|
|
\par Rower.Pace: How many seconds it takes to row a kilometre.
|
|
\par
|
|
\par Rower.Time: Current session time.}{\lang1024\langfe1024\noproof\insrsid13989829\charrsid2696905 Divide calories or distance by this to get rates.}{\lang1024\langfe1024\noproof\insrsid4155809\charrsid2696905
|
|
\par Rower.Time2: }{\lang1024\langfe1024\noproof\insrsid13989829\charrsid2696905 Another version of the above.}{\lang1024\langfe1024\noproof\insrsid4155809\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid13989829\charrsid2696905
|
|
\par Rower.Exists: True if the rowing machine exists.
|
|
\par Rower.Count: Number of rowing machines (of the same type).
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12595373 {\lang1024\langfe1024\noproof\insrsid13989829\charrsid2696905 Rower.Speed: Doesn\rquote
|
|
t really work that well. You need to use Smooth(Rower.Speed,30) for maximum smoothing. }{\lang1024\langfe1024\noproof\insrsid11684647\charrsid2696905 In m}{\lang1024\langfe1024\noproof\insrsid13989829\charrsid2696905 etres per second.}{
|
|
\lang1024\langfe1024\noproof\insrsid12595373\charrsid2696905 \page }{\lang1024\langfe1024\noproof\insrsid2510693
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid876133 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {\cf6\insrsid876133\charrsid6364245
|
|
{\*\bkmkstart _Toc251216780}{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid876133 Wild Divine Lightstone{\*\bkmkend _Toc251216780}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid876133 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid876133
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid876133 {\insrsid876133 GlovePIE 0.42 now (theoretically) supports Wild Divine Lightstones. You can read multiple Lightstones with \'93Lightstone1\'94,
|
|
\'93Lightstone2\'94, etc.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid876133 {\insrsid876133
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid876133 {\insrsid876133 Currently the only \'93Heart Rate Variance\'94 and \'93Skin Conductance Level\'94 are measured. It can\rquote
|
|
t calculate your pulse rate yet.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid876133 {\insrsid876133
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid876133 {\b\insrsid5786284 LightStone.HeartRateVariance}{\insrsid5786284 : A value that goes high when there is a heart beat, and low when there isn
|
|
\rquote t.}{\insrsid82040 It will }{\insrsid82040\charrsid82040 usually be between 1.5 and 2.5}{\insrsid82040 .}{\insrsid876133\charrsid82040
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid876133 {\b\insrsid5786284 LightStone.SkinConductanceLevel}{\insrsid5786284
|
|
: A value that says how much electricity your skin can conduct, and thus indicates how much you are sweating or how stressed you are.}{\insrsid82040 It will usually be between 3.0 and 15.0}{\insrsid5786284\charrsid5786284
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12595373 {\lang1024\langfe1024\noproof\insrsid876133
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12595373 {\b\lang1024\langfe1024\noproof\insrsid11478483\charrsid11478483 LightStone.SerString}{\lang1024\langfe1024\noproof\insrsid11478483
|
|
: probably a string that contains a serial number.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid11478483\charrsid11478483 LightStone.VerString}{\lang1024\langfe1024\noproof\insrsid11478483 : probably a string that contains a version string.
|
|
\par }{\b\lang1024\langfe1024\noproof\insrsid11478483\charrsid11478483 LightStone.Exists}{\lang1024\langfe1024\noproof\insrsid11478483 : whether this lightstone exists and is connected.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\lang1024\langfe1024\noproof\insrsid5786284 \page }{\lang1024\langfe1024\noproof\insrsid5786284\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid5786284 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\cf6\insrsid5786284\charrsid6364245 {\*\bkmkstart _Toc251216781}{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid5786284 Mind Reading with Neurosky ThinkGear{\*\bkmkend _Toc251216781}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid5786284
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid5786284 GlovePIE 0.42 now (theoretically) supports Neurosky\rquote s ThinkGear EE
|
|
G headsets. The headset must be connected via Bluetooth, and the Bluetooth data needs to be set to a virtual COM port. I think you can do that in your Bluetooth software. Make a note of which COM port your Neurosky is using.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid5786284
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid3950243 The Neurosky headset also incl
|
|
udes a microphone, which GlovePIE can use for voice commands (speech recognition). You should train speech recognition in Control Panel, and then use the }{\b\insrsid3950243 said(\'93whatever\'94) }{\insrsid3950243 function in GlovePIE.}{
|
|
\insrsid3950243\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid3950243
|
|
\par }{\insrsid5786284 In GlovePIE you need to specify the COM port after the \'93Neurosky.\'94.
|
|
\par
|
|
\par eg.
|
|
\par Debug = Neurosky.Com5.RawAttention
|
|
\par
|
|
\par If you don\rquote t specify a COM port, it will assume COM5.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid5786284 Unlike the Emotiv Epoc, Neurosky don\rquote t detect facial expressions or \'93cognitiv\'94
|
|
thoughts. They can only detect 2 emotional states: Attention (like Engagement), and Meditation.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid5786284
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.RawAttention (aka RawEngagement)
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.RawMeditation
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid3950243 But Neurosky can detect the strength }{\insrsid6825663 of various kinds of brain-waves:}{\insrsid5786284
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.RawAlpha}{\b\insrsid6825663 1}{\b\insrsid3950243\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6825663 {\b\insrsid6825663 Neurosky.Com5.RawAlpha2}{\b\insrsid6825663\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.RawBeta}{\b\insrsid6825663 1}{\b\insrsid3950243\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6825663 {\b\insrsid6825663 Neurosky.Com5.RawBeta2}{\b\insrsid6825663\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.RawGamma}{\b\insrsid6825663 1}{\b\insrsid3950243\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6825663 {\b\insrsid6825663 Neurosky.Com5.RawGamma2}{\b\insrsid6825663\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.RawDelta}{\b\insrsid3950243\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.RawTheta}{\b\insrsid3950243\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid6825663
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid3950243 And you can tell whether it exists, and the battery level:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.Exists}{\b\insrsid3950243\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\b\insrsid3950243 Neurosky.Com5.RawBattery}{\b\insrsid3950243\charrsid3950243
|
|
\par }{\b\insrsid3950243 Neurosky.Com5.RawPoorSignal }{\insrsid3950243 (this needs to be 0 for it to work properly)
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3950243 {\insrsid3950243 Exists is true or false. The others are decimals with unknown units and ranges. I\rquote
|
|
m guessing RawAttention and RawEngagement are between 1 and 100, with 0 meaning not working. But I can\rquote t be sure, which is why everything is marked \'93Raw\'94.}{\insrsid3950243\charrsid3950243
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5786284 {\insrsid3950243\charrsid5786284
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12595373 {\lang1024\langfe1024\noproof\insrsid876133 \page }{\lang1024\langfe1024\noproof\insrsid876133\charrsid2696905
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid7306894 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\cf6\insrsid7306894\charrsid6364245 {\*\bkmkstart _Toc251216782}{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid7306894 Mind Reading with Emotiv Epoc{\*\bkmkend _Toc251216782}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid7306894
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6554115 {\insrsid6554115
|
|
The Emotiv Epoc headset uses an EEG to read your thoughts, feelings, and facial expressions, and it uses gyros to read your head rotation.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6554115 {\insrsid13400356
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6554115 {\insrsid13400356 Currently a maximum of two Emotiv Epocs can be used at once in GlovePIE (as Emotiv1 and Emotiv2).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\cf6\insrsid6554115\charrsid6554115 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\insrsid6554115
|
|
GlovePIE 0.40 had a bug which stopped it from compiling scripts that use Emotiv Epoc, but it has now been fixed in GlovePIE 0.41.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid6554115 This release of GlovePIE 0.41}{\insrsid4603617 only supports the $500 ({\*\xmlopen\xmlns1{\factoidname stockticker}}US
|
|
{\*\xmlclose}) SDK version of the Emotiv Epoc, not the $300 consumer version. Don\rquote t blame me, Emotiv deliberately prevent developers from supporting their product unless they pay.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid4603617
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid4603617 If you don\rquote t have an Emotiv Epoc, you can download the free SDK Lite from Emotiv\rquote
|
|
s website and use the included EmoComposer }{\insrsid6554115 and Emotiv Control Panel }{\insrsid4603617 to simulate an Emotiv Epoc.}{\insrsid6554115 Or you can download the Epoc Control Panel from the Emotiv website and use it\rquote s EmoComposer.}{
|
|
\insrsid4603617
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid7306894
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7306894 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid7306894
|
|
{\*\bkmkstart _Toc251216783}Running{\*\bkmkend _Toc251216783}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5448924 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid5448924
|
|
GlovePIE will first try to connect to Emotiv Control Panel. If Control Panel is not running then it will try to connect to EmoComposer. If EmoComposer is not running then it will try to c}{\insrsid12405394 onnect directly to the headset.}{\insrsid5448924
|
|
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5448924 {\insrsid12405394
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5448924 {\insrsid6554115 If you don\rquote
|
|
t have an Epoc, then I recommend running EmoComposer, then running Emotiv Control Panel, then choosing Connect > To EmoComposer\'85 in the Emotiv Control Panel\rquote s menu, then running your GlovePIE script.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5448924 {\insrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5448924 {\insrsid6554115
|
|
If you do have an Epoc, then I recommend running Emotiv Control Panel, then running your GlovePIE script. GlovePIE has not been tested with a real Epoc yet, but it should theoretically work.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5448924 {\insrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5448924 {\insrsid6554115 But t}{\insrsid12405394 ry changing which of those applications are running if you are having trouble getting it to work.}{
|
|
\insrsid12405394\charrsid5448924
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid7306894
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13580318 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid13580318
|
|
{\*\bkmkstart _Toc251216784}{\*\xmlopen\xmlns1{\factoidname stockticker}}Reading{\*\xmlclose} thoughts}{\insrsid7306894 {\*\bkmkend _Toc251216784}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid13580318
|
|
There are currently 13 different thoughts that can be detected. But the Emotiv Epoc can only listen for a maximum of 4 thoughts at a time.}{\insrsid15366571 }{\insrsid592153 They must be set in Control Panel}{\insrsid12405394 (I assume)}{\insrsid592153
|
|
.}{\insrsid12405394 }{\insrsid6554115 I don\rquote t know if you can get around that limitation by running Control Panel twice.}{\insrsid592153
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid12405394 Currently GlovePIE }{\insrsid6554115 doesn\rquote t tell the Epoc which thoughts}{\insrsid12405394 to}{\insrsid15366571
|
|
listen for}{\insrsid12405394 , or which profile to load}{\insrsid6554115 , so you probably need to do that in Control Panel.}{\insrsid13580318
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid13580318
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid15366571
|
|
Each thought will have a value between 0 and 1. Only one thought can be non-zero at a time. If one thought is greater than zero, all the other thoughts will be zero.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid15366571
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid13580318 emotiv.push: }{\insrsid15366571 pushing forwards with your mind
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid15366571 emotiv.pull: pulling backwards with your mind
|
|
\par emotiv.lift: lifting upwards with your mind
|
|
\par emotiv.drop: dropping down with your mind
|
|
\par emotiv.left: pushing something to the left
|
|
\par emotiv.right: pushing something to the right
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid15366571 emotiv.RotateForwards: rotating an object like a wheel moving forwards, or pitching the far side of an object downwards}{
|
|
\insrsid10950032 .}{\insrsid15366571
|
|
\par emotiv.RotateReverse: rotating an object like a wheel moving packwards, or pitching the far side of an object upwards}{\insrsid10950032 .}{\insrsid15366571
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid15366571 emotiv.RotateLeft: despite its name, this actually ro
|
|
tates an object clockwise (as viewed from above), so that the near side of an object moves left while the far side of an object moves right.}{\insrsid10950032 You can also think of this as yawing the far side of an object right.
|
|
\par emotiv.RotateRight: despite its name, this ac
|
|
tually rotates an object anticlockwise (as viewed from above), so that the near side of an object moves right while the far side of an object moves left. You can also think of this as yawing the far side of an object left.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid10950032 emotiv.RotateClockwise: rolling o
|
|
r tilting an object sideways, so that the top moves to the right and the bottom moves to the left. You can think of this as rolling right.
|
|
\par emotiv.RotateCounterClockwise: rolling or tilting an object sideways, so that the top moves to the left and the bottom moves to the right. You can think of this as rolling left.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid10950032
|
|
\par emotiv.disappear: visualising an object disappearing.
|
|
\par
|
|
\par To use any of these values in your script, just write a line like this:
|
|
\par Enter = emotiv.push
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid10950032 That will make it press Enter whenever you are thinking \'93push\'94
|
|
. By default, the push thought needs to be stronger than 0.5 for it to work.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid10950032
|
|
\par If you want more control, then you can }{\insrsid8940270 specify how hard they have to push:
|
|
\par Enter = emotiv.push > 20%
|
|
\par
|
|
\par 20% is an alternative way of writing 0.2. You can use either way:
|
|
\par Enter = emotiv.push > 0.2
|
|
\par }{\insrsid12405394
|
|
\par }{\insrsid13258629 There are also axes and vectors:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid13258629 CognitivX, CognitivY, CognitivZ,
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid13258629 CognitivYaw, CognitivPitch, CognitivRoll,
|
|
\par CognitivXY, CognitivXZ, CognitivXYZ}{\b\insrsid13258629\charrsid13258629
|
|
\par }{\insrsid13258629
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid12405394 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid12405394
|
|
{\*\bkmkstart _Toc251216785}Emotions{\*\bkmkend _Toc251216785}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid12405394
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid12405394 Multiple emotions can be true at the same time. These emotions have a value between 0 and 1:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12405394 {\b\insrsid12405394\charrsid12405394 Excitement
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12405394 {\b\insrsid12405394\charrsid12405394 Meditation
|
|
\par Frustration
|
|
\par EngagementBoredom
|
|
\par ExcitementLongTerm
|
|
\par LongTermExcitement}{\b\insrsid8940270\charrsid12405394
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\insrsid12405394
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid12405394 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid12405394
|
|
{\*\bkmkstart _Toc251216786}Facial Expressions{\*\bkmkend _Toc251216786}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid12405394
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid12405394\charrsid13258629 Blink
|
|
\par WinkLeft
|
|
\par WinkRight
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12405394 {\b\insrsid12405394\charrsid13258629 EyesOpen
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid12405394 {\b\insrsid12405394\charrsid13258629 LeftEye
|
|
\par RightEye
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid12405394\charrsid13258629 EyeX
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid12405394\charrsid13258629 EyeY}{\insrsid13258629 (probably always 0)}{\insrsid12405394
|
|
\par }{\b\insrsid12405394\charrsid13258629 EyeXY}{\b\insrsid13258629 }{\insrsid13258629 (y is probably always 0)}{\insrsid12405394\charrsid13258629
|
|
\par }{\b\insrsid12405394\charrsid13258629 LookingUp}{\b\insrsid13258629\charrsid13258629 , }{\b\insrsid12405394\charrsid13258629 LookingDown}{\insrsid13258629 (probably always 0)}{\insrsid12405394
|
|
\par }{\b\insrsid12405394\charrsid13258629 LookingLeft
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid12405394\charrsid13258629 LookingRight}{\b\insrsid12405394
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid13258629 Eyebrow
|
|
\par Furrow
|
|
\par Smile
|
|
\par Clench
|
|
\par Laugh
|
|
\par SmirkLeft
|
|
\par SmirkRight
|
|
\par SmirkX
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid13258629 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\insrsid13258629
|
|
{\*\bkmkstart _Toc251216787}Other{\*\bkmkend _Toc251216787}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\b\insrsid13258629
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid13258629 Exists
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid13258629 Count}{\b\insrsid6554115 \endash }{\insrsid6554115
|
|
total number of headsets connected, may be less than number of the maximum headset if the first headset is not connected.}{\insrsid13258629\charrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid13258629 HeadsetOn
|
|
\par WirelessSignalStrength}{\b\insrsid6554115 \endash }{\insrsid6554115 0, 0.5, or 1. Must be 1 for it to work properly.}{\insrsid13258629\charrsid6554115
|
|
\par }{\b\insrsid13258629 LedPlayer}{\b\insrsid6554115 \endash }{\insrsid6554115 Sets the player number shown on the leds for that headset}{\insrsid13258629\charrsid6554115
|
|
\par }{\b\insrsid13258629 {\*\xmlopen\xmlns1{\factoidname stockticker}}Battery{\*\xmlclose}
|
|
\par }{\b\insrsid6554115 RawGyroDeltaX }{\insrsid6554115\charrsid6554115 \endash }{\insrsid6554115 Horizontal }{\insrsid6554115\charrsid6554115 Gyro movement since last frame?}{\insrsid13258629
|
|
\par }{\b\insrsid6554115 RawGyroDeltaY}{\insrsid6554115 \endash Vertical Gyro movement since last frame?
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6554115 {\b\insrsid6554115 RawGyroDeltaXY}{\insrsid6554115 \endash Gyro movement since last frame? As a vector
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\cf6\insrsid14502825\charrsid14502825 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\b\insrsid14502825 }{\b\insrsid6554115
|
|
RawGyroTotalX}{\insrsid6554115 \endash Total Horizontal Gyro movement since the start
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\cf6\insrsid14502825\charrsid14502825 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\b\insrsid14502825 }{\b\insrsid6554115
|
|
RawGyroTotalY}{\insrsid6554115 \endash Total Vertical Gyro movement since the start}{\insrsid6554115\charrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid6554115 {\b\cf6\insrsid14502825\charrsid14502825 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\b\insrsid14502825 }{\b\insrsid6554115
|
|
RawGyroTotalXY}{\insrsid6554115 \endash Total Gyro movement since the start as a vector}{\insrsid6554115\charrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid6554115 CognitivActive}{\insrsid6554115 \endash Cognitiv is working before enough electrodes are connected properly}{
|
|
\insrsid13258629
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid6554115 ExpressivHasTrainedSig}{\insrsid6554115 \endash A trained signature is available for Expressiv}{
|
|
\insrsid6554115\charrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid9248426 {\b\insrsid9248426 ExpressivUsingTrainedSig}{\insrsid9248426 \endash Use the trained signature for Expressiv (instead of the universal one)}{
|
|
\insrsid5908870 You can set ExpressivUsingTrainedSig.}{\insrsid9248426\charrsid6554115
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7306894 {\b\insrsid13258629\charrsid13258629
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4008452 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid13258629 \page }{\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 {\*\bkmkstart _Toc251216788}Screen{\*\bkmkend _Toc251216788}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
You can get information about the screen, or screens, connected to the computer. Which may be important for controlling mouse pointers and stuff like that.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 Use \'93Screen\'94 to refer to the primary monitor, or use \'93Screen\'94
|
|
followed by a number to refer to individual screens.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15077622 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid16408641\charrsid2696905 {\*\bkmkstart _Toc251216789}Orientation{\*\bkmkend _Toc251216789}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid16408641\charrsid2696905
|
|
In theory you can now set the screen orientation. It doesn\rquote t work for me, but that might just be nvidia\rquote s, or {\*\xmlopen\xmlns1{\factoidname stockticker}}Vista{\*\xmlclose}\rquote s fault.}{
|
|
\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905 Use it like this:}{\lang1024\langfe1024\noproof\insrsid16408641\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid16408641 {\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905
|
|
\par Screen.Orientation = 90 degrees
|
|
\par
|
|
\par You can only rotate the screen by a multiple of 90 degrees.
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid10558540 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905 {\*\bkmkstart _Toc251216790}Scrolling the entire screen{\*\bkmkend _Toc251216790}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10558540 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\cf2\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905
|
|
Wallpaper must be switched off and set to a solid colour for this to work!
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10558540 {\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10558540 {\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905 This is mostly used for Virtual Reality Head Mounte
|
|
d Displays, but it may also be useful for other purposes. It shifts the entire screen contents in any direction, exposing new desktop space. This allows you to create a much larger virtual }{\lang1024\langfe1024\noproof\insrsid5969929\charrsid2696905
|
|
desktop that you can pan around, and spread windows over.}{\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10558540 {\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10558540 {\lang1024\langfe1024\noproof\insrsid5969929\charrsid2696905 It is buggy, but still very cool. With a {\*\xmlopen\xmlns1{\factoidname stockticker
|
|
}}HMD{\*\xmlclose} you could be surrounded by a 360 degree desktop. You could then drag windows all around you and place them at points in space.}{\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10558540 {\lang1024\langfe1024\noproof\insrsid5969929\charrsid2696905
|
|
\par Use Screen.ScrollX and Screen.ScrollY, they are measured in pixels.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10558540\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15077622 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5526621\charrsid2696905 {\*\bkmkstart _Toc251216791}Size{\*\bkmkend _Toc251216791}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5526621\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 Screen.Width is
|
|
the width in pixels, but you can also get the width in real units by writing something like:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905 debug = Screen.Width in cm
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par The Physical width will only be right for a single Plug and Play monitor you have connected.
|
|
\par
|
|
\par Screen.Height is the height in pixels. You can also get the real units.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3102386\charrsid2696905 Screen.PhysicalWidth is a better way of getting the screen width in physical units.}{\lang1024\langfe1024\noproof\insrsid4523222\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3102386\charrsid2696905 Screen.PhysicalHeight is the same for height.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid5526621\charrsid2696905 Screen.ViewableSize is the actual viewable size of the monitor. If it is a
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}CRT{\*\xmlclose} monitor then
|
|
it will be less than the advertised size, because the advertised size is always the size of the tube itself rather than the viewable area. If it is an LCD monitor, then it will be about the right size.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
\par Screen.PixelsPerInch is the number of dots per inch that your monitor has.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid5526621\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid5526621\charrsid2696905
|
|
Screen.WorkAreaWidth and Screen.WorkAreaHeight is the size in pixels of the work-area, which is all of the screen that isn\rquote t covered up with the task-bar and other bars.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid5526621\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905 Screen.}{\lang1024\langfe1024\noproof\insrsid5526621\charrsid2696905
|
|
DesktopWidth and Screen.DesktopHeight are the size in pixels of the Virtual Desktop, which stretches across all monitors in a multiple monitor setup.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid5526621\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15077622 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905 {\*\bkmkstart _Toc251216792}Position{\*\bkmkend _Toc251216792}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
Screen.Left is the position of the left hand side of the screen in pixels, relative to the top left corner of the primary monitor. So for screen1 it will be 0, but for screen2 it may be something else.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
Screen.Top is the position of the top of the screen in pixels, relative to the primary monitor.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
Screen.Right is the position of the right hand side of the screen in pixels, relative to the primary monitor.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
Screen.Bottom is the position of the bottom of the screen in pixels, relative to the primary monitor.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
Screen.DesktopLeft is the position of the left hand side of the virtual desktop relative to the top left corner of the primary monitor.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905 etc.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905 Screen.WorkAreaLeft is the position of the left hand side of that screen\rquote
|
|
s work area (the parts not covered by the taskbar).
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905 etc.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4523222 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid15077622 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905 {\*\bkmkstart _Toc251216793}Plug & Play Monitor Stuff{\*\bkmkend _Toc251216793}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15077622 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15077622 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905 These only work for a single Plug & Play monitor.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15077622 {\lang1024\langfe1024\noproof\insrsid15077622\charrsid2696905 PlugAndPlayAvailable, ManufactureDate, EDIDVersion, EDI
|
|
DRevision, PhysicalWidth, PhysicalHeight, VendorCode, ProductCode, VendorShortName, VendorLongName, SerialNumber, IsProjector, ViewableSize
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid15077622 {\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7801339 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905 {\*\bkmkstart _Toc251216794}ScreenSaver stuff{\*\bkmkend _Toc251216794}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905 ScreenSaverEnabled, ScreenSaverRunning, ScreenSaverTimeout
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7801339 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905 {\*\bkmkstart _Toc251216795}GlovePIE stuff{\*\bkmkend _Toc251216795}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905 IsPieScreen, PieScreen
|
|
\par
|
|
\par }\pard\plain \s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid7801339 \b\i\f1\fs28\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905 {\*\bkmkstart _Toc251216796}Other Stuff{\*\bkmkend _Toc251216796}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid7801339\charrsid2696905 There\rquote
|
|
s lots of other stuff in the Screen object, mostly control panel settings.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5073134\charrsid2696905 \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid5073134 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5073134\charrsid2696905 {\*\bkmkstart _Toc251216797}Window{\*\bkmkend _Toc251216797}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5073134\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5073134\charrsid2696905
|
|
The Window object gives you information about the currently active window. It is useful to find out which application is currently active, what size it is, and where it is.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5073134\charrsid2696905
|
|
\par The Window\rquote s title can be read like this:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5073134\charrsid2696905 Window.Title
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5073134\charrsid2696905
|
|
\par You can also read specific parts of the title:
|
|
\par
|
|
\par Window.BeforeDash
|
|
\par Window.AfterDash
|
|
\par Window.AppName
|
|
\par Window.FileName
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11673226\charrsid2696905 You can read the window class name like this:}{\lang1024\langfe1024\noproof\insrsid5073134\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11673226\charrsid2696905
|
|
\par Window.Class
|
|
\par
|
|
\par You can read its size like this:
|
|
\par
|
|
\par Window.Width
|
|
\par Window.Height
|
|
\par Window.ClientWidth
|
|
\par Window.ClientHeight
|
|
\par
|
|
\par You can read its position like this:
|
|
\par
|
|
\par Window.Left
|
|
\par Window.Top
|
|
\par
|
|
\par Many of the properties of the Window object are useless or don\rquote t work.}{\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905 It is a work in progress.}{\lang1024\langfe1024\noproof\insrsid11673226\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905 \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid5640278 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905 {\*\bkmkstart _Toc251216798}FakeSpace Pinch Gloves{\*\bkmkend _Toc251216798}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
FakeSpace pinch gloves have two gloves with electrical contacts on each finger. So you can tell which gesture the user is doing by which fingers are touching each other.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
\par They must be plugged into a serial, aka COM, aka RS232 port.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
There is probably a switch on your pinch gloves control box that says which baud rate you want. If it is not set to 9600 then you need to add a line in your script like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5640278 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905 Pinch.Baud115200 = true
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5640278 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5640278 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905 Here is a list of supported baud rates: 120
|
|
0, 2400, 4800, 9600, 14400, 19200, 38400, 56000, 57600, 76800, 115200, 128000, 153600, 256000
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid11673226\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
You can then read any of the possible combinations of fingers to see if those two fingers are touching:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
\par Eg.
|
|
\par Key.Enter = Pinch.RightThumbRightIndex
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905 You can use any combination of the following fingers:}{\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8456040 {\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905
|
|
LeftThumb, LeftIndex, LeftMiddle, LeftRing, LeftPinky, RightThumb, RightIndex, RightMiddle, RightRing, RightPinky
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid5640278\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905 If you want to use a combination of 3 fingers touching you must do it like this:
|
|
|
|
\par
|
|
\par Key.Enter = Pinch.RightThumbRightIndex and Pinch.RightThumbRightMiddle
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905 There have been reports that GlovePIE has the right and left hands backwards. I don
|
|
\rquote t know because I can\rquote t test it. Can someone check and let me know?
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905 If you have multiple sets of pinch gloves, or it
|
|
is plugged into a strange COM port, you can specify a COM port like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905
|
|
\par Key.Enter = Pinch.Com1.RightThumbRightIndex
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905
|
|
\par \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid3880873 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid3888645\charrsid2696905 {\*\bkmkstart _Toc251216799}5DT Data Glove}{\lang1024\langfe1024\noproof\insrsid8456040\charrsid2696905 {\*\bkmkend _Toc251216799}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14249833 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\cf6\lang1024\langfe1024\noproof\insrsid14249833
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14249833 {\cf6\lang1024\langfe1024\noproof\insrsid14249833\charrsid14249833 {\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{
|
|
\lang1024\langfe1024\noproof\insrsid14249833 Because this dll caused problems for Emotiv\rquote s edk.dll, you need to run Glovepie_bird_5dt.exe if you downloaded the Emotiv version of GlovePIE.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid3888645\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid3888645\charrsid2696905
|
|
The 5DT Data Glove is a cheaper, but not consumer-priced VR glove. It is more expensive than the Essential Reality P5 Glove, but in many ways it has less features.}{\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905
|
|
It has no tracker, and no buttons.}{\lang1024\langfe1024\noproof\insrsid3888645\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid15022740\charrsid2696905 I don\rquote t have a 5DT Data Glove, so this is untested.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12133235\charrsid2696905 You can detect whether the FiveDT glove exists with: FiveDT.Exists
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905 The DG5 model has just the five fingers. You can read their raw values like this:
|
|
\par
|
|
\par FiveDT.AbsoluteThumb
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905 FiveDT.AbsoluteIndex
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905 FiveDT.AbsoluteMiddle
|
|
\par FiveDT.AbsoluteRing
|
|
\par FiveDT.AbsolutePinky
|
|
\par
|
|
\par Or you can read their calibrated values like this:
|
|
\par
|
|
\par FiveDT.Thumb, FiveDT.Index, FiveDT.Middle, FiveDT.Ring, and FiveDT.Pinky
|
|
\par
|
|
\par To tell if it is a left-handed glove, you can read FiveDT.LeftHand, which is true or false.
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid7872106\charrsid2696905 You can tell which type of glove it is with FiveDT.Type, or FiveDT.TypeName.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid7872106\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905 The DG14 model has }{\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905
|
|
near (proximal) and far (medial) sensors for each finger. Although for the thumb it measures the medial and distal joints. The distal joints are the finger tips, which are only measured for the thumb.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905 FiveDT.AbsoluteThumbMedial
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1534021 {\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905 FiveDT.AbsoluteIndexProximal
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1534021 {\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905 FiveDT.AbsoluteMiddleProximal
|
|
\par FiveDT.AbsoluteRingProximal
|
|
\par FiveDT.AbsolutePinkyProximal
|
|
\par FiveDT.AbsoluteThumbDistal
|
|
\par FiveDT.AbsoluteIndexMedial
|
|
\par FiveDT.AbsoluteMiddleMedial
|
|
\par FiveDT.AbsoluteRingMedial
|
|
\par FiveDT.AbsolutePinkyMedial
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905 You can read the calibrated values like this:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905
|
|
\par FiveDT.ThumbNear
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1534021 {\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905 FiveDT.ThumbFar
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905 FiveDT.IndexNear
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905 FiveDT.IndexFar
|
|
\par FiveDT.MiddleNear
|
|
\par FiveDT.Middle}{\lang1024\langfe1024\noproof\insrsid6247202\charrsid2696905 Far}{\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid6247202\charrsid2696905 FiveDT.RingNear
|
|
\par FiveDT.RingFar
|
|
\par FiveDT.PinkyNear
|
|
\par FiveDT.PinkyFar
|
|
\par
|
|
\par On the DG14, you can also rea}{\lang1024\langfe1024\noproof\insrsid10553984\charrsid2696905 d the gaps between the fingers:}{\lang1024\langfe1024\noproof\insrsid1534021\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid10553984\charrsid2696905 FiveDT.AbsoluteGapThumbIndex
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10553984 {\lang1024\langfe1024\noproof\insrsid10553984\charrsid2696905 FiveDT.AbsoluteGapIndexMiddle
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10553984 {\lang1024\langfe1024\noproof\insrsid10553984\charrsid2696905 FiveDT.AbsoluteGapMiddleRing
|
|
\par FiveDT.AbsoluteGapRingPinky
|
|
\par FiveDT.AbsoluteGapThumbPalm
|
|
\par
|
|
\par FiveDT.GapThumbIndex
|
|
\par FiveDT.GapIndexMiddle
|
|
\par FiveDT.GapMiddleRing
|
|
\par FiveDT.GapRingPinky
|
|
\par FiveDT.GapThumbPalm
|
|
\par
|
|
\par There is also a wrist bend sensor:
|
|
\par
|
|
\par FiveDT.AbsoluteWristBend
|
|
\par FiveDT.WristBend
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905 Some gloves also have a rotation sensor:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905
|
|
\par FiveDT.RawPitch
|
|
\par FiveDT.RawRoll
|
|
\par FiveDT.ScaledPitch
|
|
\par FiveDT.ScaledRoll
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid7872106\charrsid2696905 You can read a number to identify a gesture like this:
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10553984\charrsid2696905 FiveDT.}{\lang1024\langfe1024\noproof\insrsid7872106\charrsid2696905 Gesture}{\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid7872106\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid7872106\charrsid2696905
|
|
You can also recognise gestures the GlovePIE way, by using a 5-letter code representing the 5 fingers: thumb, index, middle, ring, pinky
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid7872106\charrsid2696905
|
|
\par Eg. FiveDT.xlnnn
|
|
\par
|
|
\par The letters can be:
|
|
\par x: don\rquote t care
|
|
\par n: fully bent
|
|
\par r: partly bent
|
|
\par l: straight
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12133235\charrsid2696905 The gesture will be either true or false.}{\lang1024\langfe1024\noproof\insrsid7872106\charrsid2696905
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12133235\charrsid2696905 You can set FiveDT.minn and FiveDT.maxl (maxL) to specify the ranges that correspond to l and n.}{\lang1024\langfe1024\noproof\insrsid3880873\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid12133235\charrsid2696905
|
|
\par If you want to calibrate the glove from GlovePIE, you can start calibration by setting
|
|
\par FiveDT.calibrating = true
|
|
\par
|
|
\par And you can stop calibration by setting
|
|
\par FiveDT.calibrating = false
|
|
\par
|
|
\par There is also a FiveDT.NewData value, but I don\rquote t remember what it does.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid15022740\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid8994108\charrsid2696905 \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid8994108 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid8994108\charrsid2696905 {\*\bkmkstart _Toc251216800}Polhemus Fastrack and compatible trackers{\*\bkmkend _Toc251216800}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid8994108\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905 You must set the Fastrack\rquote
|
|
s baud rate to 115200, otherwise it will not work with GlovePIE.}{\lang1024\langfe1024\noproof\insrsid8994108\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905
|
|
Other trackers may also be compatible, eg. The IsoTrak, Latus, or Patriot, or even some competing brands.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905 You can read the following values:
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid3880873 {\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905
|
|
\par x, y, z: the position in inches by default
|
|
\par yaw, pitch, roll: the angles in degrees by default
|
|
\par exists: true if that sensor exists, false if it doesn\rquote t}{\lang1024\langfe1024\noproof\insrsid8994108\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905
|
|
\par I can\rquote t guarantee that the coordinates will be in the conventional GlovePIE coordinate system.
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905 To read multiple sensors, use Fastrak1, Fastrak2, Fastrak3 and Fastrak4. eg.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905
|
|
\par debug = Fastrak2.x
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905 You can also read from different COM ports}{
|
|
\lang1024\langfe1024\noproof\insrsid11210738\charrsid2696905 , and have more than one tracker system connected, like this:}{\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid11210738\charrsid2696905
|
|
\par Debug = Fastrak1.Com2.x + \'93, \'93 + Fastrak1.Com1.x
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid11210738\charrsid2696905 \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid11210738 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid11210738\charrsid2696905 {\*\bkmkstart _Toc251216801}Ascension Flock of Birds{\*\bkmkend _Toc251216801}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\cf6\lang1024\langfe1024\noproof\insrsid14249833\charrsid14249833
|
|
{\*\xmlopen\xmlns1{\factoidname stockticker}}NEW{\*\xmlclose}!}{\lang1024\langfe1024\noproof\insrsid14249833 Because this dll caused problems for Emotiv\rquote
|
|
s edk.dll, you need to run Glovepie_bird_5dt.exe if you downloaded the Emotiv version of GlovePIE.}{\lang1024\langfe1024\noproof\insrsid11210738
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid14249833\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid11210738\charrsid2696905
|
|
You can read from the Ascension Flock of Birds tracker almost exactly the same as the Polhemus tracker above, except you use Bird instead of Fastrak.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid11210738\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 It must be set to 115200 baud.}{\lang1024\langfe1024\noproof\insrsid11210738\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par You can read:
|
|
\par Bird1.x, Bird1,y, Bird1.z: position in inches
|
|
\par Bird1.yaw, Bird1.pitch, Bird1.roll: angles in degrees
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 You can change the 1 to other numbers to read multiple birds.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par You can also choose which com port to use if the default isn\rquote t working:
|
|
\par
|
|
\par Debug = Bird1.com2.x
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid9652555 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 {\*\bkmkstart _Toc251216802}InterSense trackers{\*\bkmkend _Toc251216802}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 You can read InterSense trackers like this:
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 InterSense.Pos1, InterSense.Pos2, InterSense.Pos3: x, y, and z coordinates. I don
|
|
\rquote t know which axes the correspond to though, which is why they have the strange names.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 InterSense.Angle1, InterSense.Angle2, InterSense.Angle3: some euler angles. I don
|
|
\rquote t know which are yaw, pitch, and roll.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 InterSense.Button1 to InterSense.Button8: If you are using a tracked Wand with butt
|
|
ons on it, these will be the buttons. They are either true or false.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par InterSense.JoyX and InterSense.JoyY are the joystick on the Wand.
|
|
\par
|
|
\par InterSense.AuxInput1 to AuxInput4: Additional inputs. These are returned as a 1-byte number
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905 InterSense.Analog3 to Inte
|
|
rSense.Analog10: Additional analog inputs. Analog1 and Analog2 are the same as JoyX and JoyY.
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11747059\charrsid2696905 InterSense.Exists: True if it exists, false if it doesn\rquote t.}{\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11747059\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10963779\charrsid2696905 You can use multiple trackers by adding a number after InterSense, eg. InterSense2.JoyX
|
|
\par
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid10963779\charrsid2696905 \page
|
|
\par }\pard\plain \s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid10963779 \b\f1\fs32\lang3081\langfe1033\kerning32\cgrid\langnp3081\langfenp1033 {
|
|
\lang1024\langfe1024\noproof\insrsid10963779\charrsid2696905 {\*\bkmkstart _Toc251216803}WorldViz PPT Tracker{\*\bkmkend _Toc251216803}
|
|
\par }\pard\plain \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 \fs24\lang3081\langfe1033\cgrid\langnp3081\langfenp1033 {\lang1024\langfe1024\noproof\insrsid10963779\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid10963779\charrsid2696905 The WorldViz Precision Position Tracker is an optical tracking system.
|
|
\par
|
|
\par It has the following properties:
|
|
\par }{\lang1024\langfe1024\noproof\langnp1036\insrsid10963779\charrsid9594416 Exists,
|
|
\par x, y, z,
|
|
\par quat1, quat2, quat3, quat4,
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10963779\charrsid2696905 XVelocity, YVelocity, ZVelocity,}{\lang1024\langfe1024\noproof\insrsid9652555\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid10963779\charrsid2696905 HasPosition, HasOrientation, HasGoodPosition, HasGoodOrientation
|
|
\par
|
|
\par You can track multiple targets with ppt1, ppt2, ppt3, etc.
|
|
\par
|
|
\par You can also optionally specify the com port if you want, like this:
|
|
\par Debug = ppt1.com2.x
|
|
\par
|
|
\par The orientations are in quat1, quat2, quat3, and quat4. But it is a quaternion. Sorry.
|
|
\par }{\lang1024\langfe1024\noproof\insrsid11210738\charrsid2696905
|
|
\par
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3415323\charrsid2696905
|
|
\par }{\lang1024\langfe1024\noproof\insrsid3888645\charrsid2696905
|
|
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7801339 {\lang1024\langfe1024\noproof\insrsid3888645\charrsid2696905
|
|
\par }} |