mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-05-25 12:28:43 -05:00
31 lines
1.0 KiB
C#
31 lines
1.0 KiB
C#
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
namespace UniVRM10
|
|
{
|
|
public interface ITPoseProvider
|
|
{
|
|
/// <summary>
|
|
/// ボーンを親ボーンとセットで列挙する</returns>
|
|
/// </summary>
|
|
/// <returns>hips の場合は parent は HumanBodyBones.LastBone で null を表す</returns>
|
|
IEnumerable<(HumanBodyBones Head, HumanBodyBones Parent)> EnumerateBoneParentPairs();
|
|
|
|
/// <summary>
|
|
/// * bone 無いときは throw するべし
|
|
/// * EnumerateBoneParentPairs で事前に有無を確認できる
|
|
/// </summary>
|
|
/// <param name="bone"></param>
|
|
/// <returns></returns>
|
|
Quaternion GetBoneWorldRotation(HumanBodyBones bone);
|
|
|
|
/// <summary>
|
|
/// * bone 無いときは throw するべし
|
|
/// * EnumerateBoneParentPairs で事前に有無を確認できる
|
|
/// </summary>
|
|
/// <param name="bone"></param>
|
|
/// <returns></returns>
|
|
Vector3 GetBoneWorldPosition(HumanBodyBones bone);
|
|
}
|
|
}
|