Archive For The “初心者向け” Category

Unity3D+IK(Inverse Kinematics)のAnima2Dチュートリアル

By |

Unity3D+IK(Inverse Kinematics)のAnima2Dチュートリアル

Blogをいつもご覧いただきありがとうございます。   前回は「Unity3D+Anima2Dチュートリアル」というテーマの記事を投稿しました。   今回はAnima2dのInverse Kinematicsについて説明したいと思います。   Inverse Kinematicsとは何ですか?   Anima2Dには、Inverse Kinematicsのコンポーネントがあります。これを使い、親関係のボーンオブジェクトの子供を動かすと、親も連動し動きます。 例を挙げると、腕と肩の関係のようなものです。(以下省略”IK”です)。 シンプルなアニメーションは、ボーンをいじるだけで充分ですが、もしアニメーションが複雑な場合はかなり時間がかかると思います。 そういう場合は「IK」が便利です。移動させたいボーンを「IK」と繋げればこのボーンのチェーンを丸ごと動かすことができとても便利です。   IKの種類は?   Anima2DのIKには,IK CCDとIK Limb という2種類のIKがあります。 IL Limbは骨を2本しかコントロールできません、余弦定理ですので、今回の場合手足に利用します。 IK CCD は設定に応じて、最大コントロールできる本数がルートボーンまでの全部の骨をコントロールすることができます。今回の場合頭と尻尾に使います。   では、前回の引継き、IKの使い方を説明します。 IKをの使い方を説明する前に、先ずAnima2Dの効率をアップでさせる機能を紹介したいと思います。 「PoseManager」というものです。 使い方はとても簡単です。下記の画像のように、前回の「牛」のオブジェクトに「Pose Manager」を入れれば、使えるようになるはずです。 そして、「Create new pose」をクリックしたら、今のスプライトのポジションとローテーションがセーブできます。 一つの「Idle」のポーズを「Save」をクリックしてから、後はどんな調整しても、ただ「Load」ボタンをクリックしたら、最初設定のポーズに戻れます。(ちなみに、「Save」はオーバライドしますので、ご注意ください。)   「Pose Manager」の使い方はここまでです。 それでは、「IK」の使い方の説明に入りましょう。   Step 1: IKをクリエイトします   「牛」のオブジェクトの中に、もう一個の空のオブジェクトを作って、名付け「IK」です。 下記の画像のようにそのオブジェクトに右クリックして、「2D Object」→「IK Limb」をクリックしたら、「IK」が出ます。   では、「IK」のパラメータを説明しましょう。 Record:アニメーションモードの間,ボーンのキーフレームを記録します。 Target​: IKが適用されるボーン。 Weight:​IKのポーズに対する影響度。 Restore…

Flowの基礎について

By |

Flowの基礎について

前回は、Stingrayの基本と、テストプレイまで紹介しました。 今回はStingrayによる開発で、最も重要になると思われる 『Flow』についてご紹介します。 1.Flowとは何か 『Flow』とは、Stingrayに基本搭載されているビジュアルスクリプティング機能です。 そもそも、ビジュアルスクリプティングとは『視覚的にプログラムが組める機能』といった感じです。 有名なものでいえば、UnrealEngine4の『Blueprint』や、初心者向けのプログラミング言語の『Scratch』などがありますね。 ビジュアルスクリプティングの利点として、 『プログラムに触れたことのない初心者に優しい』、『一目でどのような処理かわかりやすい』という点があります。 もちろん、普通のプログラムができないわけではなく、StingrayではLuaにてプログラミングが行えます。 2.フローの開きかた 今回はまず、前回に作成したプロジェクトのFlowを開いてみます。 VRテンプレートのエディタの『Level Viewport』のタブのすぐ右側にある『Level Flow』タブを開きましょう。 『Level Flow』タブが見つからない場合は、『Window』のドロップダウンメニューを開き、 『Level Flow』を選択してください。 すると、画像のようなエディタが開かれるはずです。 これは『レベルフロー』といい、Flowの一種です。 たくさんのブロックが線で繋がっているのが見えます。 これがビジュアルスクリプティングにおけるプログラムになります。 3.Flowの基礎(ピンとノード) Flowにおけるブロックは『ノード』と呼ばれ、 『特定の値を拾う』『操作を受け付ける』等といった機能が、ブロックごとに設定されています。 Stingrayではこのブロックとブロックを線で繋ぎ、プログラミングをやっていきます。 今のままでは、画面がよく見えないため、Flowを拡大しましょう。 Flowの拡大/縮小はマウスホイールで行えます。 また、ホイールクリックでFlowの移動もできます。 画像は先ほどのFlowの左上の部分を拡大したものです。 ノードにいくつかの○があるのが見えます。 この○は『ピン』といい、ノードに入力する値(引数)か、 ノードから出力される値(返り値)を表します。 左側の○が引数、右側の○が返り値となります。 線はこのピンから伸び、また別のノードのピンに繋がります。 線とピンにはそれぞれ色がついています。 この色は、その線とピンが『何を表しているか』を示しています。 どの色が何を表すか、については今後必要に応じて説明するため、 現時点では、『白い線で繋がっているノードの順に実行される』ということだけ覚えておけば大丈夫です。 4.処理の始まりのノード 先ほどの画像では、『Level Update』というノードから白い線が始まっているのがわかります。 つまり、ここが処理の始まりの部分となるわけです。 『Level Update』というノードは『更新の度にout以降の処理を行う』というものです。 つまり、『Level Update』の『out』から繋がったノードは、一定の間隔で実行されるということです。 何度も実行したい処理はこのノードに繋げます。 この他にも、『処理の始まり』となるノードは幾つも存在します。 そのうちの一つが、『Level Loaded』ノードです。 このノードは『レベルのロード時のみ』に呼ばれます。 分かりづらいという方は『一番最初に一度だけ呼ばれる』と覚えておけば、今の時点では問題ありません。 また、その逆で『レベルの終了時』、つまり『一番最後に一度だけ呼ばれる』、…

Stingrayに触れてみよう

By |

Stingrayに触れてみよう

近年、VR/AR技術はゲーム業界のみならず、医療分野やその他の分野でも利用されるようになりました。 特に建築分野では、ウォークスルーアニメーションのプレゼンムービー等、 VIVEコントローラーによる入力を伴ったビジュアライゼーションの現場で活用されています。 液晶画面上に(内覧用の)モデルルームを表示したいとき、あるいは室内の家具の配置を考えるときに、VR/AR技術は有用です。 なぜなら実際の建築物・家具を設置する必要がなく、 以前より制作会社に蓄積されたCGアセットを活用でき、大幅な省力化が図れるからです。 この点は、建築分野においてVR/AR技術が注目を集めている大きな理由です。 通常、建築系のVRのコンテンツ開発にはゲームエンジンが用いられます。 代表的なゲームエンジンとして、UnityやUnrealEngine4が挙げられます。 ゲームエンジンとは文字通り、『ゲームを作るためのエンジン』です。 (近頃は建築などゲーム以外の用途にも使われることも増えています。) さて、話は変わりますが、『Stingray』というゲームエンジンがあります。 Stingrayは2年前にAutodesk社がリリースしたゲームエンジンで、 プログラマでない方にも親しみやすく、3D機能に非常に優れています。 拡張性の高いシステムに、一目でわかるビジュアルスクリプティングが特徴です。 また、Mayaや3dsMaxで有名なAutodesk社がリリースしたエンジンであるため 上記の3Dデザインツールとの連携も容易というメリットがあります。 ただ、UnityやUnrealEngineに比べると情報が少ないのが難点です。 Autodesk公式が運営しているチュートリアルと、 Stingrayそのもののヘルプページを除くと、Stingrayについての情報を見つけるのはかなり難しいと思います。 前置きが長くなりましたが、 数回に分けてStingrayについて、このブログに書いていくことにします。 Stingray自体がデザイナー向けのエンジンという事もあり、 ビジュアルスクリプティングをメインに書いていく予定です。 —————————————————– ・Stingrayに興味があるが触ったことのない方 ・あまりゲーム開発やゲームエンジンにあまり詳しくない方 ・HTC Viveのセットアップが既にできている方 ・プログラムが全く分からない方 —————————————————– このページは上記のような方々を対象にしています。 今回は、『Stingrayの起動』から、『VRテンプレートのプレイ』までを書いていきます。 1.まずはプロジェクトを作成を行う 最初はプロジェクトの作成を行います。 StingrayのランチャーからStingrayを起動します。 起動直後の画面では、いくつかのテンプレートが表示されているはずです。 (表示されていない場合、画面のタブから『Templete』を選択してください) このテンプレートの中から、使用したい物を選びます。 今回はHTC Viveで動かすため、『VR HTC Vive』のテンプレートを使用します。 『VR HTC Vive』のテンプレートをクリックして、右下の『Create』ボタンをクリックしましょう。 すると、下の画像にあるようなウィンドウが出て来ます。 『Name』はプロジェクトの名前なので好きな名前にしましょう。 『Directry』はファイルを保存する場所ですが、何かしらのこだわりがない限りはそのままで大丈夫です。 設定が終わったら『Create』ボタンをクリックします。 これで新規プロジェクトの作成は完了です。 2.プロジェクトをプレイする しばらく待つと、上の画像にあるような画面が表示されます。 これがStingrayのメイン画面になります。 お気付きの方もいるかもしれませんが、…

Go Top