[過去ログ] 【ゲームエンジン】Unityなんでも質問スレpart10 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
577
(1): 名前は開発中のものです。 [sage] 2023/06/11(日) 16:06:29.53 ID:hZ8n+Ubh(1/2) AAS
2021.3.19のユニティーを独学で使ってます
bullet(1)スプライトのBulletSpeedスクリプト内変数を
別オブジェクトの変数を取り込もうとしているのですが
実行時にNullReferanceExceptionになります
なんでなのか教えてほしいですスクショ張ります

画像リンク

578: 名前は開発中のものです。 [sage] 2023/06/11(日) 16:18:12.67 ID:60Y78FZd(1) AAS
>>576
576(2): 名前は開発中のものです。 [sage] 2023/06/11(日) 15:38:52.16 ID:ko6/cWMr(1) AAS
>>571
>>572
Bakin製の画面をイメージしてください。

Quadにマテリアルを貼ってシェーダーでビルボード表現しています。
なのでQuadは直立しています。
直立しているQuadはテクスチャよりも先に画面外に出るので、まだ画面内に居てほしいテクスチャもその時点で消えます。
じゃあもうQuadを傾けたらいいじゃんってすれば上記問題は解決しました。
(処理の負荷は上がったでしょう)

が、今度はQuadが壁などの立体物にめり込むという問題が発生。
ちなみにこれはシェーダーでビルボードしても同じ問題が起きます。
そもそも背が高いものをビルボードで表現するということ自体が問題の起きやすいやり方なんだなと。
(シェーダーで深度を弄ると多少は緩和できます)
(カメラの角度次第で制約の強さは変わる感じです)

2DHDでのビルボード表現は人形サイズのキャラクターやアイテムなどの小物などに絞ったほうがよいのかもしれません。
あるいは立体と干渉しないように配置自体を工夫するかですかね。
つまり自己解決したってこと?
いろいろ書いてくれたけど興味ないよ
579
(1): 名前は開発中のものです。 [] 2023/06/11(日) 17:27:13.41 ID:YO+XB08W(2/2) AAS
>>577
名前とカッコの間に半角空白入れてないっしょ
bullet (1)複製したら名前の後に半角スペース入れられてるよ
580: 名前は開発中のものです。 [sage] 2023/06/11(日) 18:27:43.29 ID:hZ8n+Ubh(2/2) AAS
>>579
おおおできました!
本当にありがとうございます!!
581: 名前は開発中のものです。 [sage] 2023/06/11(日) 21:05:41.96 ID:NTmymnou(1) AAS
>>576
質問のテイで自分語り
582: 名前は開発中のものです。 [sage] 2023/06/11(日) 23:42:42.36 ID:4wNHqU3i(2/2) AAS
質問よろしでしょうか
583: 名前は開発中のものです。 [sage] 2023/06/11(日) 23:56:43.35 ID:5TmqJSkm(1) AAS
まずはお礼からね
584: 名前は開発中のものです。 [sage] 2023/06/12(月) 00:13:23.27 ID:DIqwWgyi(1) AAS
こんばんは例のヤツです今週もがんばりました
いつもアドバイスありがとうございます

>>552
552(2): 名前は開発中のものです。 [sage] 2023/06/10(土) 09:16:55.55 ID:sNbFuwUV(1/5) AAS
こんにちは例のヤツです今日も元気によろしくお願いします

動画をみてほしいのですが
画像リンク


FBXで持ち込んだanimの、たとえば30~60フレームをループするようなクリップにしています
つまんでクリクリしている動きにしたいのですが
ところが初期ポーズが0フレームめのまま(開いている手)なので、再生時にガクンとなってしまいます

以上よろしくおねがいします
の件は、不便とはいえ力技でなんとかなっているので、あきらめました

さっそく次の議題ですが

アニメーション保存の仕様についておしえてほしいです
FBXでもちこんだanimを切り分けて
Animator内のMotionとやらいうモジュールにしました
動きのパターンを10個ほどに分けたいのです

act1.unity というシーンファイルでMotion1をひもづけ
act2.unity というシーンファイルでMotion2をひもづけ

というかんじで10回保存したとします
で、あとでact1.unityシーンを開くと、Motion10がアサインされてしまっています

これを、シーンごとにmotionを保存するにはどんなやり方がありますか

以上よろしくおねがいします
585: 名前は開発中のものです。 [sage] 2023/06/13(火) 08:07:23.39 ID:KQh3EvIH(1/7) AAS
質問の意味不明
そもそもどうやってアサインされてると思った?
586
(1): 名前は開発中のものです。 [sage] 2023/06/13(火) 08:53:18.86 ID:fdBwH6+X(1/8) AAS
おはようございます例のヤツです
今日もよろしくお願いします

質問がわかりにくかったので別の切り口から書きたいと思います

画像リンク


画像を見て頂き、おおよそこの4つの要素(シーンファイル、アバタ、アニメ、アニメター)があるとして、
それぞれを編集した時にどのタイミングで保存がかかるのだろうという問題です

マテリアルと同様に、すこし変えたらすぐ保存されてしまうものと、シーンファイルに保存されるものとの区別がわからないのです

以上よろしくおねがいします
587: 名前は開発中のものです。 [sage] 2023/06/13(火) 08:57:39.46 ID:KQh3EvIH(2/7) AAS
保存の仕様がわかったとして、Unityで制御指定している部分はいつ変更されるか分からんから意味ないと思うし、そんなのに依存して何かを作るのは止めたほうがいい
いったい何をしたいの?
588
(1): 名前は開発中のものです。 [sage] 2023/06/13(火) 09:05:02.50 ID:fdBwH6+X(2/8) AAS
じっさいに起きている問題としましては、
動きの異なる部品を10種類つくって個別のシーンを保存したとします  (scene1.unity ~ scene10.unity)
部品のメッシュやマテリアルはすべて共通です。
それぞれ、保存のときにプレビュー再生して、目的の動作をすることは確認できています
ところが、あとから開くと、アニメーターの接続ぐあいが、シーンファイルには保存されていなかった、と気づきます
ぜんぶ同じ動きのシーンが10こできてしまいました
589
(1): 名前は開発中のものです。 [sage] 2023/06/13(火) 09:16:16.38 ID:KQh3EvIH(3/7) AAS
まず、よく考えて欲しいのだけど
シーンというのはステージね
森のシーン
草原のシーン
家の中のシーン

動きはキャラクターやobjectに対するものね
十個というのは、このobjectに対して付与しているのよね?

ということはシーンが変わろうとキャラクター、objectはどこにも出てこれるよね
590: 名前は開発中のものです。 [sage] 2023/06/13(火) 09:26:19.33 ID:oDpzU7SB(1/2) AAS
アニメーション関連は自動保存されないことが多い。仕様なのかバグなのかわからんけど
確実に反映させるならいったんUnityEditorを終了させる。まあCtrl+Sでもだいたい大丈夫
591
(1): 名前は開発中のものです。 [sage] 2023/06/13(火) 09:27:59.88 ID:oDpzU7SB(2/2) AAS
>>588
ただこのケースでは同じAnimatorを使い回してるのが原因な気がする
592: 名前は開発中のものです。 [sage] 2023/06/13(火) 09:30:11.67 ID:fdBwH6+X(3/8) AAS
>>589
おっしゃることわかります
不自然に、なんでシーンを10個もつくってるの?ってことだと思うのですが
Unityから書き出して、別ゲームで使うassetアイテムとして使いたいのです
1こずつシーンファイルを、assetbundleに変換して、別ゲームに持ち込むことができます

具体的には >>552>>162
162(3): 名前は開発中のものです。 [sage] 2023/05/02(火) 22:46:44.72 ID:QJqBM/Za(6/6) AAS
>>161
大きい数字が変わったのに気付いたとき
別に毎回アップデートしなくて良いよ
で貼った動画も参考にみてください
593: 名前は開発中のものです。 [sage] 2023/06/13(火) 09:32:12.41 ID:fdBwH6+X(4/8) AAS
>>162 じゃなくて >>164
164(3): 名前は開発中のものです。 [sage] 2023/05/02(火) 23:48:12.27 ID:Z9OCy/bv(6/6) AAS
こんにちは例の奴です度々お世話になっております
>>148のときよりだいぶマシになりましたよ

画像リンク


あとは、関節がもっとシャキシャキ動いてほしいんです
スプリングの復帰がヌルーってなっちゃうです
それにしてもこれはちょっと面倒すぎる作業ですね
でした
594
(1): 名前は開発中のものです。 [sage] 2023/06/13(火) 09:41:46.93 ID:KQh3EvIH(4/7) AAS
えっと
ここからは想像ね(検証めんどい)

Unityのシーンって、そのシーンにいる俳優の(object)の動きは決まってるのね
それがシーンファイルに書かれてる
一方で動きは動きで保管されてると

でシーンを持ってく場合は決まった動きしか出来ない
でもobjectをアセットにしたら全ての動きは持ってけるUnityちゃんとかそうだよね

なので君のやろうとしてることは無理じゃね?
595: 名前は開発中のものです。 [sage] 2023/06/13(火) 09:47:20.87 ID:fdBwH6+X(5/8) AAS
>>594
そうなんですか
オブジェクト単位でアセット書き出す方法もあるんですかね
拡張子はどんななりますか
596: 名前は開発中のものです。 [sage] 2023/06/13(火) 09:49:51.05 ID:fdBwH6+X(6/8) AAS
>>591
アニメータを10個複製したらやれそうな気がしてきました
597
(1): 名前は開発中のものです。 [sage] 2023/06/13(火) 10:11:54.31 ID:fdBwH6+X(7/8) AAS
「Animator」のウィンドウ(矢印でアニメを接続する画面) って、まっさらな新規シーンを作った時にもずっと前のが出たままじゃないですか
それもよくわからない
598
(1): 名前は開発中のものです。 [] 2023/06/13(火) 10:18:03.10 ID:6gs4IpdM(1/4) AAS
>>586
シーン内に保存可能なものは原則以下のみです。
・数値、文字列、真偽値などのパラメータ。(正確にはそれらで構成されたクラスや構造体も)
・シーン内の他のオブジェクトやコンポーネントへの参照。
・プロジェクト内のアセットへの参照。(Material,AudioClip,AnimatorController,Avatar等...)

シーン上でAnimatorコンポーネントがついたオブジェクトを選択したときに出てくるInspectorの項目のうち、
ControllerとAvatarの項目はProject内のアセットを参照しています。つまり3番目です。

どのAnimatorControllerアセットを利用するかはシーンに保存されていますが、
ステートはAnimatorControllerアセットとしてプロジェクト内に保存されています。

1シーン1モーションで対応を取りたいのであればAnimatorControllerアセット自体を複数作成し、
それぞれのシーンのAnimatorに設定する必要があります。

参照を設定済みの状態でフィールドをダブルクリックすると、Unityは気を利かせて参照中のアセットの編集画面を開いてくれるので
恐らくこの挙動をみてシーンに保存されていると勘違いしてしまったのではないでしょうか?
599: 名前は開発中のものです。 [] 2023/06/13(火) 10:29:52.83 ID:6gs4IpdM(2/4) AAS
>>597
AnimatorControllerとAnimatorの区別をハッキリさせる必要がありそうです。

・AnimatorController
AnimatorControllerはプロジェクトに保存されるシーンとは独立したアセットです。
ステートマシン(矢印繋いだり、Motion設定する)のデータはここに保存されています。

・Animator
Animatorはシーン上でゲームオブジェクトに取り付けるコンポーネントです。
どのAnimatorControllerを適用するかの"参照"を設定し、シーンに保存します。

冷静に考えるとややこしい話ですが、Animatorウィンドウで編集してるのはAnimatorではなくAnimatorControllerなんです...
そして、AnimatorControllerが設定済みのオブジェクトをシーンで選択した場合も設定中のAnimatorControllerの編集画面に切り替えてくれます。
これが混乱を招いた原因かと思います。

あくまでもAnimatorウィンドウが開いているのはアセットなので新規シーンに切り替えてもAnimatorウィンドウに影響はありません。
600
(1): 例のヤツ [sage] 2023/06/13(火) 10:33:11.98 ID:fdBwH6+X(8/8) AAS
>>598
詳しくおしえて頂きありがとうございます
自分なりにだいぶスッキリしてきました

よく、昨日の設定のほうがマシだった戻したい、ってなるじゃないですか
こまめに増分保存していたつもりが、ぜんぶ今日の設定になってて
昨日の設定がなんだったのかもうわからない、ってなるんですよ

プロジェクトフォルダごとにまるっとバックアップするのもアリかもしれませんね
ともあれ今の問題(シーンファイルごとにアニム切り替え)についてはAnimator複製でためしてみます

ありがとうございます
601: 名前は開発中のものです。 [] 2023/06/13(火) 11:46:45.93 ID:6gs4IpdM(3/4) AAS
>>600
フォルダごとバックアップするのであればAssets,Packages,ProjectSettingsの3つさえ押さえておけば大丈夫です。
Libraryはキャッシュ用フォルダで、サイズが大きいのでバックアップ時には含めないことを推奨します。

一番簡単で確実な方法はパッケージ出力機能を利用してAssetsフォルダ内をまるごとパッケージ化する方法だと思います。
外部リンク[html]:docs.unity3d.com

慣れると一番楽なのはgitを使って差分管理することなんですが、
これに関しては初心者には少しとっつきづらく、説明すると長くなるので興味があれば調べてみてください。
1-
あと 401 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.028s