アニメーション
前回に引き続き、Timelineのアニメーションに微調整を加える方法です。 今回はHumanoid向け HumanoidはTimelineでアニメーションを上書きしにくい IKを使用する場合 Constraintを使用する場合 関連 HumanoidはTimelineでアニメーションを上書きしにくい Huma…
DCCからアニメーションをUnityに持ってきてから、Timeline上のアニメーションを微調整したいといったケースがあります。例えばドラゴンが噛み付く位置が少しズレているだとか、棍棒を叩きつける位置が微妙に違う等。特にオブジェクトの配置をゲーム上で行っ…
今回はUnity 2019.1のPackageManagerで使えるようになるAnimation Riggingについてです。 Animation Rigging 実際に使ってみる 試した環境 手順 Animation Rigging AnimationRiggingは、Animation C# Jobsの上でキャラクターを手続き的に動かす機能みたいで…
今回は「アニメーションをセットアップしたのに再生されない」や「アニメーションが止まる」といった場合の対処法についてです。知っていれば「当然そうなる」(そういう設定をしている)という動作なのですが、知らないと面倒かもしれないので一覧としてメ…
今回はMecanim(Animator Controller)を使用している場合に即座にアニメーションが切り替わらない問題、その対策についてです。 例えば上の画像では、右はジャンプ開始時や着地直後に速やかにアニメーションが切り替わっているのに対して、左側はモーション…
今日は前回の続きで、スケルタルアニメーションをやっていきます。今回やるのは独自のキャラクターを動かす方法についてです。 タナカさん登場 タナカさんをIKで動かせるようにする アニメーションにする 感想 関連 タナカさん登場 前回のキャラクターを動か…
今回は Anima 2Dの後継、Unity 2D Animation(V2)でボーンベースで動くキャラクターを作成してみます。 なお今回は長くなりすぎたのでIk周りはやりません。セットアップまでです。 スケルタルベースのキャラクター表現 パッケージの導入 PSBをインポート スキ…
今回はボタンをタイミング良く押すと連続攻撃になる動作を作成します。 格ゲーのようなコマンド入力ではなく、3Dアクションによくあるような非常に単純なもの です。 ボタン連打でコンボ攻撃 1. ボタンを押したら殴る 2. ボタンを押したら次の攻撃への実現 3…
Unite LAで盛り上がってますが、今回はソレは置いといてAnimation C# Jobsを試してみます。 Animation C# Jobs 作ってみたもの 解説 コード 感想 関連 Animation C# Jobs Animation C# Jobsは言うならば 「アニメーションを独自実装するモノ」 です。 Playab…
以前、下のリンクで紹介した「AnimatorのGameObjectを非アクティブにするとステートマシン(その他諸々)が破棄される」問題の、対処法です。 tsubakit1.hateblo.jp Animator.keepAnimatorControllerStateOnDisable keepAnimatorControllerStateOnDisableは…
今回はTimeline上でビデオクリップ(mp4やwebmといったフォーマット)を再生してみます。 Unityでビデオを再生 Timelineでビデオを再生 手順 ビデオのフェード 問題 Unityでビデオを再生 UnityはUnity 5.6辺りでVideo Playerという機能が新しく追加されまし…
Timelineを用いて、キャラクターを歩かせる(走らせる)方法についてです。以前の移動と異なり、歩行・走行に限りますが複雑な経路を走らせる場合はコチラの方が便利です。 キャラクターを移動させたい パスを決めて、その上を走らせる 移動をTimelineで制御…
Cinemachineでカメラワーク、対象を回り込むように移動させる方法についてです。 対象を中心に回り込むように 2点間のVirtual Cameraを対象を中心に円を描くように動かす SphericalPositionとCylindricalPositionの違い 対象の周囲を回るオブジェクトを用意…
今回はTimelineで物理演算のような動きを再現するアプローチについてです。 物理表現的な動きをTimelineで使いたい 物理演算の動きをAnimationClipに変換してしまおう GameObjectの動きをレコードする Timelineに使用する Rigidbodyとか、その辺りを全て外す…
今回は簡単なトラブルシューティングです。 AnimationClipがReadOnlyなのはFBXにAnimationClipが格納されているため TimelineがPreview中はAnimationClipをRecordにできない Optimized Game Objectが設定されたオブジェクトのAnimationは編集出来ない Add Pr…
今回はTimelineの機能を使用するが、「目標地点が異なる」場合を対処する方法についてです。例えば「距離の異なる崖をジャンプで超える」や「位置が毎回異なる敵に攻撃を仕掛ける」といった物をTimelineで制御する場合の話です。 Timelineアニメーションの「…
簡単なサンプルではなく、ECSを大規模に使用した技術デモ「Unite Austin Technical Presentation」の紹介です。 Unite Austin Technical Presentation ユニットの動作や攻撃にはECSが使用されている キャラクターアニメーションは頂点シェーダー 状態の切り…
今回はUnityの2Dゲームを割と簡単に作れる 2D Game Kitで、キャラクターの差替を行ってみます。 2D Game Kit チュートリアルは翻訳済み キャラクターの差替方法 前提:必要なアニメーションの一覧 ポイント1:スプライトの大きさを調整 ポイント2:スプラ…
今回はちょっとしたTipsです。 Unityでアニメーションを作成した際、AnimationClipに登録したボーン構造と、GameObjectの名前が一致してない場合、AnimationClipにMissing!と表示され動作しなくなります。 Avaterのようなリターゲットの仕組みを使っているな…
対象への角度を「-180~180度」の範囲で求めてみます。 アニメーションで右向き・左向きに曲がるといった際、どちら方向に曲がれば良いのかを求めたいときに使えます。 目次 角度を求める それは何をやっているの? せっかくなので(Root Motionで)向きを変…
今回はテクスチャーを切り替えてアニメーションを切り替える方法についてです。 上の画像のようにスプライトやAnimationClip、OverrideAnimationControllerを用意せずともキャラクターを差し替えることが出来ます。 目次 Unityのスプライトアニメーション テ…
今回は再生中のAnimationControllerに、別のアニメーションを流し込む方法を見つけたので、こちらにメモします。 AnimationControllerという機能 AnimationControllerは突発的なアニメーションを挟むと複雑化する そうだ、Playable APIを使おう Playable API…
以前紹介したSimpleAnimationですが、使いやすさ的には合うケースは多そうですが、「パフォーマンス的には実際どうなのか?」と思ったので、少し確認して見ました。 SimpleAnimation Is it fast? 早速比較・・・あれ?あまり変わらない? Simple Animation速…
今回はUnity Advent Calendar 2017 のネタで、「Timelineがカットシーンを作るだけのツールではない事を教えてやる!という妄想を書きなぐる」内容です。要するに、TImelineでゲームの進行を管理してみようぜ!というお話 Timelineを動画作成以外に使用する …
今回はSprite Animationの内容をプレビューする方法についてです。 悪いな二次太、このアニメーションのプレビューは3D用なんだ 2Dアニメーションをプレビューする裏技は存在する 2Dスプライトアニメーションを表示するアセット 関連 悪いな二次太、このアニ…
今回はステートマシンを使用せずAnimatorでアニメーションを再生する、Simple Animationについてです。 ステートマシンにサヨナラを Playable API Unity公式の旧Animationを模したアニメーション再生コンポーネント アニメーション切替も超絶シンプル Animat…
Mecanim(Animator)を出来る限り活用してランダムにアニメーションを再生する方法についてです。 FacebookのUnityユーザー助け合い所で面白い話題が上がっていたので、試しに作ってみました。 何時もと違うアニメーションの再生 ランダムなアニメーションの…
今回は上下の動きが最初から含まれているジャンプモーションをアクションゲーム等で使用する方法についてです。 ジャンプ中にジャンプモーションがジャンプする ジャンプアニメーションから上下移動を取り除く 手順 実際の動作 着地時に足がめり込む ジャン…
今回はTimelineのクリップからMonobehaviourを継承したコンポーネントを手軽に操作する方法について紹介します。 Timelineで手軽に動かしたい ITimeControlインターフェースはTimelineから呼ばれる 実際に回転させる コードの準備 Timelineにコンポーネント…
今回はシェーダーで3Dモデルのアニメーションを行います。 シェーダーで3Dモデルのアニメーションを行う とりあえずやってみる Animation Texture Bakerの導入 テクスチャでアニメーションするモデルの導入 アニメーションの変換 GPU Instancingに対応してみ…