狐、ジャッカル、コヨーテと同様に、犬および狼はイヌ科の種です。
このページでは、イヌ科のスケルトンをHumanIK で使用するためにどのようにキャラクタライズしたらよいのか、いくつかの提案を記載しています。イヌ科のスケルトンをキャラクタライズする方法は数多くある点に注意してください。下記の提案は独自のキャラクタでの使用が適切な場合もありますし、適切でない場合もあります。
このページに提案されているものが実際に動くデモンストレーションを見るには、HumanIK SDK に含まれている Quadrupeds サンプルを実行します。<HumanIK_installation_folder>/solutions/<platform_and_toolset> の HIKSamples.sln ソリューションはプロジェクトとサンプルのソース コードを統合します。詳細については、「 HumanIK のサンプル」を参照してください。
また、<HumanIK_installation_folder>/data/molecule/scenes で Quadrupeds.fbx ファイルを参照してください。
キャラクタのニュートラル スタンスは、「Quadruped に HumanIK を使用する」のページで概説されている Quadruped のニュートラル スタンスの要件をすべて満たさなければなりません。
狼などのイヌ科動物の後肢の上部ジョイントのマッピングは単純です。下部ジョイントのマッピングには若干注意が必要です。狼はつま先で歩くためです。
IK ソルバによって後脚に生成されるポーズの全体的な印象を改善するには、通常は IK ソルバ中に後脚が完全に伸びた状態まで開かないようにすることが最善の方法です。これを行うには、キャラクタの HIKPropertySetState で脚の最大伸長の値を小さくすることができます。狼に適した値は通常、約 170 度です。
HIKSetPropertyValue(props, HIKLeftLegMaxExtensionAngle, 170.0f); HIKSetPropertyValue(props, HIKRightLegMaxExtensionAngle, 170.0f);
下記のテンプレートに従えば、狼などのイヌ科動物の前肢のマッピングはとても単純です。
狼の肘のジョイントは地面よりずっと高い位置にあるため、最大伸長の値を 120°から 150°の間に制限すると良い場合があります。これにより、ターゲットまで達しようとするときに前肢がまっすぐに伸びすぎなくなります。
HIKSetPropertyValue(props, HIKLeftArmMaxExtensionAngle, 140.0f); HIKSetPropertyValue(props, HIKRightArmMaxExtensionAngle, 140.0f);