前回までの本編は、Mecanimを使ったユニティちゃんの制御を行いました。 今回はMecanimから離れて、物理エンジンを使った揺れ物の制御を行っていきましょう。 なお今回も前回までのUnityプロジェクトを引き続き使用します。 頭のリボンを物理演算で揺らす -リジッドボディ、ジョイント- ユニティちゃんの頭に付いているリボン。今のままでは走っても止まってもビクともしません、とても固そうです。これに物理エンジンでそれらしい動きをつけましょう。 物理エンジンを用いてこれを表現するには、リジッドボディ と ジョイント を用います。 それぞれ、「剛体としての性質」、「他のオブジェクトとの連結」を設定するものです。 オブジェクト階層構造を変更する 物理演算を使うときは下準備として、まずオブジェクトの階層構造を物理演算に適したものに変えなければいけません。 物理的に干渉してほしいオブジェクト同士は、
ホーム < ゲームつくろー! < DirectX技術編 その61 完全ホワイトボックスなスキンメッシュアニメーションの解説 スキンメッシュアニメーションは3Dのゲームの一つの大きな壁であり、一つの憧れ(?)でもあるかなと思います。かつてマルペケでもDirectX技術編その23辺りからDirectXが用意しているスキンメッシュアニメーションの解説を行いました。当時は良く分からない状態からスタートしましたので、解説もまぁ…分かったようなわからないような内容になっております(^-^;。 一通り実装して思ったのは「DirectX9が用意するスキンメッシュの仕組みを使うと本質がわからなくなる!」という事でした。D3DXLoadMeshHierarchyFromX関数を使ってXファイルを読み込むと、D3DXFRAME構造体とID3DXAnimationControllerが何故か出来ていて、アニメーシ
ここで、 CX : cos(θx) SX : sin(θx) CY : cos(θy) SY : sin(θy) CZ : cos(θz) SZ : sin(θz) です。この行列はZ、X、Y軸回転を表す回転行列を掛け算すると得られます。 一方、クォータニオンからはD3DXQuaternionRotationMatrix関数によって回転行列を得る事が出来ます。すなわち、上の行列の成分値を得る事が出来るわけです。その数値をうまく用いれば、クォータニオンをオイラー角に変換できます。 4×4の回転行列の左上をM11、右上をM14、左下をM41、右下をM44となるよう成分値に名前をつけます。 まず、M32に注目します。ここは-SXです。よって、ここからX軸の回転角度θxが得られます(asinを使います)。この範囲は-90度~+90度です。 次にM31を見ましょう。ここはCX・SYとなっていま
アーマチュアを作る 「アーマチュアとは何ぞや」といいますと、ボーンの集合体というか…。動かせる関節が寄り集まったモノだと思って下さい。それではいってみましょう! ミラーモディファイア(Mirror Modifire)を適用させる 現時点のメッシュオブジェクトの半分は、モディファイアが見せてくれているマボロシ状態。なのでモディファイアを適用して、仮で作ってくれていた半分を実体化します。 パンダのオブジェクトを選択して、オブジェクトモードへ。プロパティパネルのモディファイアタブ(レンチのマークでおなじみ)→MirrorのApplyをクリックすればOKです。色々注意されることもありますが、全無視です。 ミラーモディファイアを適用させてしまった後に頂点を直したいよ!というときは、3D Viewのツールパネル(Tで出てきます)のX Mirrorにチェックを入れると左右対称に同じ点が動いてくれます。
※この記事は2013年の記事を2018年6月に加筆修正したものです。three.jsの使用バージョンはr92です。 【前記事】 【WebGL特集】第1回:WebGLって何? 【WebGL特集】第2回:回転する立方体 【WebGL特集】第3回:カメラをグリグリ 【WebGL特集】第4回:Blenderでモデル出力 【WebGL特集】第5回:Blenderでアニメーション出力 ちょっと番外編です。前回まででBlednerからのキャラクターアニメーションのwebGL出力が実現しました。 では、Maya,3dsMaxなどの他の3DCGソフトではどうなるのでしょうか。 2013年頃では、アニメーションの出力には対応できていませんでした。しかし2018年の現在では制限があるものの、Maya,3dsMaxなどの他の3DCGソフトからのアニメーションの出力が可能になってきています。慣れたツールで直接出力で
2回にわたってBlender+Unityの新機能Mecanimについて書かせて頂きます。 本稿(前編)はBlenderで人物モデルを扱うのならRigifyで楽しようという内容です。ある程度のリギングに関する知識やblenderの基本操作などを理解している方向けになっておりますので、その旨ご了承ください。後編ではUnity上にインポートした後の設定などについて書く予定です。 Rigifyというのは一言で言うと汎用的に使える人体リグで、下記のような特徴があります。 コントロールボーンがついてる IKとFKが簡単に切り替え可能 MecanimのHumanoidを使うのにうってつけ(リグの構成がほぼ同じ) Rigify自体はBlender用アドオンとして提供されており、最近のBlenderには最初から入っているので、まずはこちらを有効にするところから始めましょう。File / User Prefe
アーマチュアはオブジェクトの骨格となる要素で、作成したキャラクターに適用すると好きなポーズに動かす事が可能になります。 使用ソフト:Blender2.49b キャラクターオブジェクトを用意 ここでは「Blenderでモデリング(人)」で作成した人体オブジェクトを使用します。 アーマチュアの作成 最初は胴体部分からアーマチュアを構成するボーンを設置していきます。 3Dビュー上で3Dカーソルを軸の原点近くに置き、Shift+Sキーでスナップメニューを出し、「Cursor->Grid」で正確に軸の原点位置にカーソルを移動させます。 (テンキーで視点を移動させて確認する) オブジェクトモードでヘッダの「Add」、またはスペースキーやマウスの左右長押しクリックでメニューを開き、「Add」→「Armature」を選択します。 最初はオブジェクトに隠れて見えなくなっているので、「Editing(F9
Today I’ve faced a rather difficult problem to solve. Creating model in Blender, animating it with armature and exporting the animation to three.js (r56) JSON format. I was working on for 2 days now and it was really a harsh job to be done, especially that three.js is still in alpha version and a lot of features are not stable and fully reliable. So now I’m gonna explain how to perform the mention
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く