Skip to content

รูปแบบการตั้งชื่อ

Fightura ตามทุก Figura part ผ่าน 3 ทาง:

  1. parentType — กลุ่มโครงร่างที่ Figura สร้างไว้แล้ว (Head, Body, LeftArm, …)
  2. ชื่อ part — match แบบ case-insensitive กับชุด alias ในตัว
  3. Lua override — สคริปต์ผูกชื่ออะไรก็ได้กับ joint ใดก็ได้ตอน runtime

ถ้าทางใดทางหนึ่ง resolve ไปยัง Epic Fight joint ได้ → part นั้นเกาะ joint ถ้าไม่ได้เลย → fallback ไปยัง render path ปกติของ Figura และ inherit จาก parent

ชื่อ joint ที่สามารถ target ได้:

Jointตำแหน่ง
Rootจุดอ้างอิง entity
Pelvisสะโพก
Spineลำตัวล่าง
Chestลำตัวบน (อก)
Headคอ/หัว
Arm_L, Arm_Rต้นแขน (ข้อไหล่)
Hand_L, Hand_Rปลายแขนและมือ
Thigh_L, Thigh_Rต้นขา
Leg_L, Leg_Rขาท่อนล่างและเท้า

Alias built-in (ไม่ต้องเขียน Lua)

Section titled “Alias built-in (ไม่ต้องเขียน Lua)”

Match แบบ case-insensitive ทั้งหมด — เลือกใช้ตามรูปแบบที่ tool ของคุณส่งออกมา

ชื่อMap ไปยัง
Head, Neck, HatHead
Body, Chest, Torso, UpperChest, JacketChest
Spine, Spine1, Spine2, WaistSpine / Chest
Hips, Hip, PelvisPelvis
LeftArm, LeftShoulder, LeftUpperArm, LeftSleeveArm_L
LeftHand, LeftForearm, LeftLowerArm, LeftElbow, LArmLowerHand_L
RightArm, RightShoulder, RightUpperArm, RightSleeveArm_R
RightHand, RightForearm, RightLowerArm, RightElbow, RArmLowerHand_R
LeftLeg, LeftThigh, LeftUpperLeg, LeftPantsThigh_L
LeftFoot, LeftShin, LeftLowerLeg, LeftKnee, LLegLowerLeg_L
RightLeg, RightThigh, RightUpperLeg, RightPantsThigh_R
RightFoot, RightShin, RightLowerLeg, RightKnee, RLegLowerLeg_R

ถ้า import rig จาก Mixamo มา bone ใช้งานได้ทันที:

Mixamo boneMap ไปยัง
mixamorig:Head, mixamorig:NeckHead
mixamorig:HipsPelvis
mixamorig:Spine, Spine1, Spine2Spine / Chest
mixamorig:LeftShoulder, LeftArmArm_L
mixamorig:LeftForeArm, LeftHandHand_L
mixamorig:LeftUpLegThigh_L
mixamorig:LeftLeg, LeftFootLeg_L
(ฝั่งขวาเหมือนกัน)
BoneMap ไปยัง
head, neckHead
spine, spine.001Spine
spine.002, spine.003Chest
shoulder.L, upper_arm.LArm_L
forearm.L, hand.LHand_L
thigh.LThigh_L
shin.L, foot.LLeg_L
(.R เหมือนกัน)
BoneMap ไปยัง
J_Bip_C_Head, J_Bip_C_NeckHead
J_Bip_C_HipsPelvis
J_Bip_C_Spine, Chest, UpperChestSpine / Chest
J_Bip_L_Shoulder, UpperArmArm_L
J_Bip_L_LowerArm, HandHand_L
J_Bip_L_UpperLegThigh_L
J_Bip_L_LowerLeg, FootLeg_L
(ฝั่งขวาเหมือนกัน)

ชื่อกำหนดเอง — Lua override

Section titled “ชื่อกำหนดเอง — Lua override”

ถ้าชื่อ part ไม่ตรงตารางข้างบน ผูกครั้งเดียวใน events.LOAD:

function events.LOAD()
fightura:mapBone("MyTailRoot", "Pelvis")
fightura:mapBone("LeftSleeveCuff", "Hand_L")
fightura:mapBone("HornLeft", "Head")
end

อาร์กิวเมนต์แรกคือชื่อ part หรือ parentType ที่ต้องการให้ตรง อาร์กิวเมนต์ที่สองต้องเป็นชื่อ Epic Fight joint จากตารางข้างบนเป๊ะ

ลบ override:

fightura:clearBone("MyTailRoot") -- ลบทีละอัน
fightura:clearBones() -- ลบทุกอันของ avatar นี้

ดูสิ่งที่มีตอน runtime:

print(fightura:getSupportedBones()) -- รายการ alias built-in ทั้งหมด
print(fightura:getJoints()) -- รายการ joint ใน armature ของ entity ตอนนี้

Hierarchy ทำงานต่อปกติ

Section titled “Hierarchy ทำงานต่อปกติ”

คุณ bind เฉพาะ part ที่ต้องการให้ transform ตัวเอง ตาม Epic Fight joint child ของ part ที่ bound แล้วจะ inherit ผ่าน flow ปกติของ Figura

ตัวอย่าง: ถ้า bind LeftShoulder ไปยัง Arm_L แล้ว child ชื่อ LeftElbowAccessory (ที่ไม่มี mapping พิเศษ) จะตามต้นแขนอัตโนมัติ — ไม่ต้อง bind เพิ่ม

  • Lua API — รายการ Lua method ทั้งหมด + การอ่านสถานะ Epic Fight
  • แก้ปัญหา — ทำยังไงเมื่อ part ไม่ตาม