忍者ブログ

ゲーム作成状況を載せて行きますよ。 いつ完成する事やら・・・ ダージリンおじさん メール:moumouojisan@yahoo.co.jp
09 2018/10 1 2 3 4 5 67 8 10 11 12 1314 15 16 17 18 19 2021 22 23 24 25 26 2728 29 30 31 11

10.09.23:29

更新を忘れてプログラムに集中

といっても、実際は分からなかったら聞く。という
解決法。もちろん自分で考えて、最終的にどうしても
分からなかった場合のみ。でもそれが私にはとても多い。

ありがたいことに私の質問に答えてくれる神様みたいな
人達により毎度助けられています。本当に感謝。ありがとう。

現在はとりあえずのAiとは呼べないAIの実装、銃の反動
のシミュレートなど。これは発砲時のカメラの揺れだ。

撃った後に跳ね上がるだけで大分ゲーム感が出てきた。
そしてZ軸カメラで言うパンをシミュレートしているので
なかなかいい感じに高級感が出た。

アニメーションカーブというとても便利な機能を使えばイージング
をする必要もなく実現できてしまう。しかし今回localrotation
の使用なので、現在の回転情報から足すことは出来ない。


PR

09.19.22:16

ビルド後にexeもエディタも同じ挙動になる(エラー)




久しぶりにビルドしてみた後にエディタの挙動が
おかしくなった。

いや、正確にはおかしかったがビルドが通ってしまう
問題に遭遇した。これは1週間ほど悩んだがあまりに
初歩的なミスだということが分かった。

このエラー文は
「MissingComponentException: There is no 'Animator
' attached to the "Player" game object, but a script is trying to access it.」
グーグル先生によると「貴方がスクリプトから呼んでる
アニメーターっていうコンポーネント、そのオブジェクトに付いてないよ」
という内容みたいだ。

しかしビルド前は付いている。
ビルド後は付いていない。

それどころかスクリプトからのAddcomponentですら付かない。
う~む、参った。何気なくダメ元でオブジェクトの名前を
変えてみることにした。

あれ?
動いてる・・・

そうなのだ。原因は名前だったのだ。
ちょいとこれを見て欲しい。



Playerというオブジェクトが二つあるではないか。
しかも子オブジェクトなので大丈夫だと思っていたが
全く持って問答無用。

Findで名前を探すときは全てを探してしまうようだ。
そしてどちらにも微妙な挙動のままプログラムは動き、
ビルドさえしなければエディタ状では上手く動いているように
見えてしまう。ココが落とし穴だ。

初歩的とはいえ、ネットのどこにも乗っていないいや、
むしろ初歩的過ぎるが故に乗っていないミスなのかもしれない。


そこの貴方もビルド後に挙動がおかしくなったらFindしている
オブジェの名前が同じものが2つ以上あることを確認すると良い。


08.24.21:35

ぐにょ~んの正体




 AutoRig-Proの自動ボーン生成時に
上手く指に収まらずにずれていたボーンを
手作業で戻した際に人差し指と中指が逆
になっていた事が原因だった。

これで想い道理に動いてくれるようになった。
問題解決。




08.24.13:58

ぐにょ~ん




 BlenderとUnityでのアニメーションのズレ発生。
Unityのメカニムで何故か人差し指と中指が逆に
読み込まれていた。

直してみると人差し指と中指が絡まるという
奇妙な現象が起こった。いじらないほうが良い
みたい。おかげでぐにゃぐにゃ。

ここら辺は後で何とかなるような気がするので
気持ち悪いが次に進む事にする。

とりあえず人型の腕を添える事で大分ゲーム感
が出てきた。良い感じ。






この様にBlenderでは正常だ。
Auto-RigProというアドオンを使っているので
それによる何かだとは思うが、原因はまだ分かっていない
以前もこのようなズレが起こった事がある。




 かなり気になるが、そうも言ってられないので
次へ。次は薬莢の排出か着弾の処理あたりか。
う~む、どっちがいいか。



08.23.13:33

Blenderで3Dモデルとアニメーションを別に出力する方法(.FBX)




他のサイトで既に分かりやすい解説があるが、
自分用にこのブログに書き留めておく。

ブレンダーで設定をいじらずにFBX出力
をしてしまうとアニメーションやメッシュ
などもろもろが1つとなって出力される事に
なる。これは使いまわす側にしては不都合だ。

と言う事で簡単に別々に出力する方法を載せて
おく。設定は簡単だがファイル名にちょいと
細工しないといけない所が忘れそうだ。


「[ファイル]  >  [エクスポート]  >  [FBX(.fbx)] 」

3Dモデルのみ出力する方法(.fbx)





本来左下の出力オプションは大体このように
なっている筈だ。「選択したオブジェクト」は
私がチェックをはずし忘れたので本来は外され
ている。注意。


ココを3Dモデル(ボーン含む)のみの出力
にしたい場合はこうする↓




「アーマチュア」と「メッシュ」の2つだけを選択。
選択にはShiftキーを押しながら左クリックで複数
選択できる。




更に上の「アニメーション」タブを選択後、
「全アクション」のチェックを外す。
これによりアニメーションが外される。

後は出力するだけ。





こんな感じでUnity側で開くと
アニメーションはフォルダに含まれて居ない事が分かる。


アニメーションのみ出力する方法(.fbx)





次は「アーマチュア」のみを選択。
「選択したオブジェクト」はそのまま。






今度は「全アクション」にチェックを入れる。
設定自体はこれで完了だが、最後に出力ファイル
の名前に「@(アニメーション名)」を入れる決まり
がある。忘れがちなので覚えておこう。



例えばこの場合「Cube.fbx」というファイルにしたかった場合
「Cube@Good.fbx」と言う風にする事で正常に出力できるようだ。

追記:こちらはアニメをまとめないで1つずつ出力する方法に
使われるようなので@マークとアニメ名は要らないようだった。

恐らく1つずつの場合「全アクション」のチェックを外すと
上手くいく気がする。