7.6.โครงสร้างพื้นฐาน (Basic constructs) (ตั้งแต่ 1.1.0)
7.6.1.ลำดับ A | B
รายการถูกวางตามลำดับบนเส้นเวลาเดียว คั่นด้วยช่องว่างอัตโนมัติ (§7.5).
7.6.2.กลอส NAME, NAME(speed), NAME(speed,label)
วางกลอสที่แปลงชื่อแล้ว (§7.4). speed ต้อง (MUST) เป็นตัวเลข > 0 (ค่าเริ่มต้น 1); ความเร็ว 2
เล่นในครึ่งหนึ่งของความยาวต้นฉบับ. label เป็นคำบรรยายสำหรับแสดงผลของรายการที่วาง (ไม่บังคับ);
ไม่มีผลต่อ P และต้องไม่ (MUST NOT) มี ; (เป็นข้อผิดพลาด) หรือตัวคั่นสงวนอื่น.
7.6.3.การหยุด $pause, $pause(N)
คงท่าพักไว้ N เฟรม (ปัดเศษ). N ต้อง (MUST) ≥ 1; $pause เปล่าคง 15 เฟรม. การหยุดเป็น
รายการที่มีเวลา: มีช่องว่างอัตโนมัติทั้งสองข้างและไม่มีคีย์เฟรม.
7.6.4.การเลื่อน $shift(x,y,z,twist), $reset
เครื่องหมายแบบมีสถานะที่เลื่อนค่าของกลอสทุกตัวที่ตามมา จนถึง $shift หรือ $reset ถัดไป
(หรือจบบล็อก $spell, §7.6.6). ทุกแกนละได้และ ค่าเริ่มต้นเป็น 0; $shift เปล่า (ศูนย์ทั้งหมด)
เท่ากับ $reset. สำหรับแต่ละคีย์เฟรมที่กลอสเขียนไว้เอง:
a_hand_x_l += x,a_hand_x_r −= x(x สะท้อนซ้าย/ขวา ค่า x บวกจึงพามือทั้งสองไปทางเดียวกัน ของลำตัว);a_hand_y_{l,r} += y,a_hand_z_{l,r} += z;b_twist += twist;
ผลลัพธ์แต่ละค่าถูกหนีบให้อยู่ใน [−1, 1]. มิติที่กลอสไม่ได้เขียนไว้จะไม่ถูกสร้างขึ้น. กลอส
fixed_position ไม่ถูกเลื่อน. การเลื่อนกระทำกับคีย์เฟรมที่วาง; นิยามของ P ไม่เปลี่ยน.
7.6.5.กลุ่ม [A | B](speed,gap,label)
สมาชิกถูกวางเป็นหน่วยเดียว เชื่อมด้วย ช่องว่างคงที่ แทนช่องว่างอัตโนมัติ. speed ต้อง (MUST) > 0
(ค่าเริ่มต้น 1) และใช้กับสมาชิกที่ความเร็วของตนเป็น 1; ความเร็วของสมาชิกเองมาก่อน.
gap ต้อง (MUST) ≥ 0 (ค่าเริ่มต้น 3) และถูกปัดเศษ; สมาชิกถัดไปเริ่ม เฟรมหลัง
เฟรมสุดท้ายของสมาชิกก่อนหน้า. สมาชิกเป็นกลอสหรือชุด $spell; สมาชิก $spell ถูกขยายเป็นตัวอักษร
โดยอบขั้นบันไดการเลื่อนของ §7.6.6 ลงในตัวอักษร โดยไม่เปลี่ยนสถานะการเลื่อนภายนอกกลุ่ม. กลุ่มต้อง
ไม่ (MUST NOT) ซ้อนกัน. กลุ่มว่างหรือสมาชิกชนิดอื่นเป็นข้อผิดพลาด. กลุ่มเป็นหน่วยเดียวสำหรับคำบรรยาย
(label หรือชื่อสมาชิก).
7.6.6.ชุดสะกดนิ้วมือ $spell(x,y,z,twist,label){A | B | …}
ชุดสะกดนิ้วมือที่มีขั้นบันไดการเลื่อนของตนเอง. การเลื่อน ค่าเริ่มต้นเป็น (0.1, 0, 0, 0). สมาชิก
เป็นกลอสหรือกลุ่ม [ ]; กลุ่มนับเป็นตัวอักษร หนึ่ง ตัว. สำหรับตัวอักษรที่ i จาก N (เริ่มที่ 0)
การเลื่อนที่มีผลคือการเลื่อนตั้งต้นคูณ : ตัวแรกเลื่อนเต็มและตัวสุดท้ายเป็นศูนย์.
ตัวอักษรเดียวคงการเลื่อนเต็ม. หลังบล็อก สถานะการเลื่อนเป็นศูนย์ ($shift ก่อนหน้าไม่ถูกคืน).
เมื่อมี label ทั้งชุดเป็นหน่วยเดียวสำหรับคำบรรยาย. บล็อกว่างเป็นข้อผิดพลาด.
7.6.7.การแสดงออก @name(alpha,rampIn,rampOut), @none, @break
@name เปิดช่วงการแสดงออกบนช่องอ้างอิง (lane) ที่ว่างช่องแรกจาก 3 ช่อง โดยเริ่มที่จุดเริ่มของ
รายการที่มีเวลาถัดไป. alpha คืออัตราขยายสูงสุดและต้อง (MUST) เป็น (ค่าเริ่มต้น 1).
rampIn/rampOut เป็นจำนวนเฟรม ≥ 0 (ปัดเศษ); หากละไว้ ใช้ช่วงไล่ระดับการแสดงออกของผู้บริโภค
(6 เฟรม หากไม่ได้ตั้งค่า). การแสดงออกพร้อมกันตัวที่สี่เป็นข้อผิดพลาด. @break ปิดช่วงที่เปิด
ล่าสุด และ @none ปิดทุกช่วงที่เปิดอยู่ ณ จุดเริ่มของรายการที่มีเวลาถัดไป. ช่วงที่ค้างเปิดสิ้นสุดที่
ปลายรายการสุดท้ายที่ช่วงนั้นครอบ (ไม่ใช่ที่ช่วงปิดท้าย). ช่วงที่ไม่ครอบเฟรมใดถูกทิ้ง. ช่องที่ถูกปล่อย
และเปิดใหม่ในเฟรมเดียวกันจะเริ่มช้าไปหนึ่งเฟรม. ในลำดับ ช่วงเหล่านี้เป็น การอ้างอิง: เดลตาของ
การแสดงออกถูกใช้ตอนถอดรหัสเป็น บน h b f m (§3.3) และไม่ถูก
เขียนลงในคีย์เฟรมท่าทาง. (กลอสประกอบอบเดลตาลงไปแทน, §7.4.)