Kinh tế ngược

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Kinh tế ngược (IK) là một kỹ thuật phổ biến trong hoạt hình máy tính để hiệu quả làm cho nhân vật di chuyển và tương tác thực tế với môi trường của họ.Quá trình tạo một chuyển động thực tế cho một nhân vật thường yêu cầu nhiều lần lặp lại và điều chỉnh nhỏ của các khớp khác nhau.Với IK, bạn có thể tạo và diễn hoạ nhiều phần nhân vật bằng cách đặt hoặc điều chỉnh một đối tượng duy nhất.

Kỹ thuật hoạt hình này có thể cung cấp các giải pháp cho các ví dụ sau:

Nắm và tạo dáng tay của một nhân vật trong khi tự động điều chỉnh các chi cơ liên quan, chẳng hạn như khuỷu tay, khuỷu khuỷu và vai.
>

Làm cho đôi chân của một nhân vật tương tác một cách thực tế trên các bề mặt và dốc khác nhau.
>

Nắm và di chuyển một đối tượng mục tiêu duy nhất để nhanh chóng tạo các tương tác thực tế với nhân vật và phụ kiện của bạn.
>

Kiểm soát IKControl

Bạn có thể sử dụng một IKControl để thêm IK vào nhân vật của bạn bằng cách thủ công bên ngoài Trình chỉnh sửa hoạt hình.Studio cho phép bạn áp dụng IK một cách lập trước cho tất cả các nhân vật, chẳng hạn như R15, Rthro và nhân vật có sẵn tùy chỉnh, để tạo ra chuyển động và tương tác thực tế trong trải nghiệm của bạn.

Khi thêm một IKControl , hãy đặt các thuộc tính cần thiết đúng để tránh kết quả hoạt hình bất ngờ và bất tự nhiên.Như với tất cả các hiệu ứng động, kiểm tra IKControls của bạn để đảm bảo rằng bạn đạt được hành vi mong muốn.

Các thuộc tính cần thiết

Khi thêm IKControl vào Humanoid hoặc AnimationController của nhân vật của bạn, bạn phải đặt các thuộc tính bắt buộc sau để bật kích hoạt IK:

Tài sảnMô tả
TypeXác định loại hành vi của điều khiển IK. Xem Enum.IKControlType đối với danh sách các lựa chọn hành vi. Các loại hành vi phổ biến là Position hoặc Transform .
EndEffectorA BasePart hoặc Bone trong nhân vật của bạn theo dõi hướng tới Target .Ví dụ, bạn có thể đặt một xương Tay trái như một EndEffector để tiếp cận một bộ điều khiển cửa được thiết lập như Target .
TargetĐối tượng mà EndEffector đạt tới hoặc chỉ vào. Một Target có thể là bất kỳ đối tượng nào với vị trí thế giới.
ChainRootXác định chuỗi BaseParts hoặc BonesIKControl ảnh hưởng.Tất cả các bộ phận kết nối giữa và đều bị ảnh hưởng bởi loại hành vi được xác định. Ví dụ, nếu tay nhân vật của bạn LeftHand được đặt là Target , bạn có thể áp dụng IK cho toàn bộ cánh tay trái bằng cách đặt ChainRoot đến LeftUpperArm .Để áp dụng IK chỉ cho các phần dưới khuỷu tay, hãy đặt ChainRoot đến LeftLowerArm .

Thử nghiệm IKControls

Bạn có thể thêm và chỉnh sửa IKControl chương trình theo cách thủ công hoặc trực tiếp thông qua Explorer.Bạn thậm chí có thể thêm và thay đổi IKControl trong quá trình thử nghiệm Chơi để nhanh chóng kiểm tra cách các thuộc tính khác nhau ảnh hưởng đến chuyển động của một nhân vật.

Để nhanh chóng kiểm tra IKControl của bạn bằng cách sử dụng Attachment như một mục tiêu:

  1. Trong tab Thử nghiệm của thanh công cụ, chọn Chơi để bắt đầu thử nghiệm chơi.

  2. Trong Explorer , điều hướng đến WorkspaceModel.Ví dụ này Model được đặt tên là tài khoản Roblox hiện tại của bạn.

  3. Nhấp vào biểu tượng bên cạnh mô hình nhân vật của bạn HumanoidRootPart và thêm một Tập tin đính kèm .

  4. Chọn Phụ lục và sử dụng công cụ Di chuyển để đặt vật phẩm trước nhân vật của bạn trong cửa sổ xem.

  5. Trong cửa sổ Explorer , chọn biểu tượng bên cạnh Humanoid của nhân vật của bạn và thêm một IKControl .

  6. Chọn IKControl và đặt các giá trị thuộc tính sau trong panel Tính năng :

    1. Loại : Chọn Transform từ menu thả xuống.
    2. EndEffector : Chọn LeftHand MeshPart của mô hình của bạn trong Explorer.
    3. Mục tiêu : Chọn đối tượng Phụ lục được tạo mới trong Trình khám phá.
    4. ChainRoot : Chọn LeftUpperArm MeshPart trong Explorer.

    Tính năng kiểm soát IK
    >

    Bảng khám phá - Mô hình nhân vật

    Cánh tay trái của nhân vật bây giờ nên tiếp cận mục tiêu Attachment .Bạn có thể thử nghiệm với việc di chuyển Attachment hoặc chỉnh sửa IKControl tính chất để đạt được kết quả khác nhau.

Thêm các hạn chế

Bạn có thể sử dụng Constraints để hạn chế cách các khớp có thể di chuyển khi đạt đến mục tiêu của nó.Các hạn chế có thể đảm bảo các khớp như khuỷu và đầu gối xoay tự nhiên, hoặc để làm cho các khớp cơ khí quay theo một hướng cụ thể.

Khuỷu tay bị cong không tự nhiên
>

Khuỷu tay bị cong đúng cách
>

Để thêm hạn chế cho nhân vật của bạn bằng cách sử dụng IKControl , IKControl và hạn chế phải đáp ứng các điều kiện sau:

  • Các tài liệu đính kèm được tham chiếu trong tính năng hạn chế Attachment0 / Attachment1 của thuộc tính được gắn vào cùng một phần với Class.Motor6D``Class.Motor6D.Part0|Part0 / Part1 .
  • Vị trí tương đối của Attachment0 / Attachment1 phải bằng với vị trí tương ứng của Class.Motor6D``Class.Motor6D.C0|C0 / C1 CFrames.
  • Hạn chế và IKControl chia sẻ cùng một cha Model .

Các hướng dẫn sau đây mô tả quá trình thêm HingeConstraint để hạn chế việc xoay khuỷu tay của một nhân vật và thêm BallSocketConstraint để hạn chế góc xoay.

Khuỷu

Các nhân vật Roblox R15 đã bao gồm các phụ kiện trong khớp của chúng mà bạn có thể sử dụng để áp dụng hạn chế khuỷu.Đối với khuỷu, cả LeftUpperArm và LeftLowerArm đều bao gồm một LeftElbowRigAttachment.Ngoài việc thêm một hạn chế, bạn cũng cần thêm các phụ kiện con bổ sung cho mỗi phần LeftElbowRigAttachment để xác định trục mà khuỷu có thể xoay quanh.

Để thêm HingeConstraint và các phụ kiện con:

  1. Trong Trình khám phá, tìm LeftLowerArm của mô hình của bạn và nhấp vào nút .

  2. Thêm một HingeConstraint với tên LeftElbowConstraint .

  3. Trong Trình khám phá, di chuyển đến LeftUpperArm.LeftElbowRigAttachment và thêm một phụ kiện:

    1. Nhấp vào nút để thêm một Tập tin đính kèm với tên LeftElbowConstraintAttachment0.

    2. Trong viewport, chọn phụ kiện và sử dụng công cụ xoay để xoay phụ kiện để màu vàng Trục chính là trục của sự xoay mong đợi của khuỷu tay của bạn.

    3. Đặt thuộc tính LeftElbowConstraint.Attachment0 đến chi tiết mới này.

  4. Trong Trình khám phá, di chuyển đến LeftLowerArm.LeftElbowRigAttachment của mô hình của bạn và thêm một phụ kiện:

    1. Nhấp vào nút và thêm một Tập tin đính kèm với tên LeftElbowConstraintAttachment1.
    2. Đặt thuộc tính LeftUpperArm.LeftElbowConstraint.Attachment1 đến chi tiết mới này.
    3. Sao chép thuộc tính LeftElbowConstraintAttachment0.CFrameOrientation và dán nó làm giá trị LeftElbowConstraint.Attachment1.CFrameOrientation .

Kiểm tra IKControl của bạn để xác minh khuỷu chỉ quay quanh trục khớp:

Mắt cá chân

Ngay cả với hạn chế khuỷu, IKControl vẫn có thể sản xuất các tư thế vô thực với cổ tay.

Khuỷu tay bị cong bất thường ở một số hướng nhất định

Bạn có thể cải thiện điều này bằng cách thêm một BallSocketConstraint để giới hạn sự xoay của khuỷu tay.Mặc dù điều này giống như quá trình thêm HingeConstraint vào khuỷu, bạn có thể sử dụng thuộc tính LimitsEnabled trên hạn chế này để kiểm soát thêm phạm vi di chuyển của cổ tay.

Để thêm một BallSocketConstraint cho cổ tay:

  1. Trong Trình khám phá, tìm tay trái của mô hình của bạn và nhấp vào nút .
    1. Thêm một BallSocketConstraint với tên LeftWristConstraint.
  2. Tìm LeftLowerArm.LeftWristRigAttachment của mô hình của bạn và thêm một phụ kiện:
    1. Nhấp vào nút và thêm một Tập tin đính kèm với tên LeftWristConstraintAttachment0.
    2. Trong viewport, chọn phụ kiện và sử dụng công cụ xoay để xoay phụ kiện để các điểm màu vàng của trục chính hướng về ngón tay của mô hình.
    3. Đặt thuộc tính LeftWristConstraint.Attachment0 đến mới LeftWristConstraintAttachment0.
  3. Tìm LeftHand.LeftWristRigAttachment của mô hình của bạn và thêm một phụ kiện:
    1. Nhấp vào nút và thêm một Tập tin đính kèm với tên LeftWristConstraintAttachment1.
    2. Sao chép thuộc tính LeftWristConstraintAttachment0.CFrameOrientation và dán nó là thuộc tính LeftWristConstraintAttachment1.CFrameOrientation .
    3. Đặt thuộc tính LeftWristConstraint.Attachment1 đến thuộc tính mới này LeftWristConstraintAttachment1 .
  4. Trong Trình khám phá, hãy chọn Giới hạn cánh tay trái .
  5. Trong Trình chỉnh sửa Thuộc tính, hãy đặt các thuộc tính theo dõi:
    1. Bật Giới hạn được bật .
    2. Đặt Góc trên cùng80 .Điều này kiểm soát việc di chuyển trục của hạn chế bao nhiêu, và 80 độ là khoảng bao nhiêu khuỷu tay có thể uốn cong.
  6. Tùy thuộc vào nhân vật của bạn, bạn có thể muốn điều chỉnh hướng mà hình nón chỉ vào.Bạn có thể làm điều này bằng cách sử dụng công cụ Quay để quay Phụ lục 0 của hạn chế.

Khi chọn Giới hạn cánh tay trái , một hình nón xanh xuất hiện minh họa phạm vi di chuyển của cổ tay.

Với bộ hạn chế được thiết lập, kiểm tra IKControl với tay chỉ xuống phía trước nhân vật và khuỷu tay nên quay và xoay một cách thực tế hơn.