2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

【ゲームエンジン】Unityなんでも質問スレpart6

1 :名前は開発中のものです。:2022/04/03(日) 20:47:03.87 ID:99p11w2F.net
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。 プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他

■注意事項
特になし
■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
http://www24.atwiki.jp/unity2ch/
●リンク
・Unity(日本公式サイト)
http://unity3d.com/jp
・マニュアル
 http://docs.unity3d.com/ja/current/Manual/index.html
・チュートリアル
 http://unity3d.com/jp/learn/tutorials
・スクリプトリファレンス
 http://docs.unity3d.com/ja/current/ScriptReference/index.html
・FAQ
 http://unity3d.com/jp/unity/faq
・MSDN
 http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。


前スレ

【ゲームエンジン】Unityなんでも質問スレpart6
https://mevius.5ch.net/test/read.cgi/gamedev/1638026599/

2 :名前は開発中のものです。:2022/04/03(日) 20:49:23.81 ID:99p11w2F.net
雑談はこちらで

■総合スレ
【3Dゲームエンジン】Unity総合スレッド36
https://mevius.5ch.net/test/read.cgi/gamedev/1625893813/


すまんpart7だったの間違えたorz

3 :名前は開発中のものです。:2022/04/03(日) 21:49:10.38 ID:AZtVwFIz.net

次直せばよか

4 :名前は開発中のものです。:2022/04/03(日) 21:53:05.97 ID:/E8e8Kb9.net
>>1
乙です。

2Dでプレイヤーが歩行しているアニメーションクリップを作っています
アニメーションウインドウを開いて、歩行アニメは7コマ分画像あるので画像を7つセットしていきます。
アニメが再生されてなぜか6枚目の画像になった時だけ画面に表示されなくて、プレイヤーはいっしゅん透明になります そして7枚目になると再び表示されます
7枚の画像はファイル形式、タテ・ヨコのピクセルもピボットも全部統一してあって、アニメーションウインドウにはこの6枚目もちゃんと表示されているのにSceneやGame上ではこの6枚目だけ表示されません
どういった理由が考えられるのでしょうか?

5 :4:2022/04/03(日) 23:47:49.10 ID:/E8e8Kb9.net
オーダーインレイヤー上げたら(なんで6枚目だけが下になるかはわからないけど)直りました
すみません

6 :名前は開発中のものです。:2022/04/04(月) 00:26:17.38 ID:fXqQudEe.net
FBXファイルにテクスチャを貼り付けたいんだけどどうしたらいい?
houdini側ではちゃんと貼られてたのに、Unity側でテクスチャとFBXをどうやって結びつけるかわからない
適当にドラッグアンドドロップすると gun_aluminum というマテリアルを使わずに適当なマテリアルが生成されて差し替わってしまう

https://i.gyazo.com/8cc9aee82444e5c592da09f29ba62f16.png

7 :名前は開発中のものです。:2022/04/04(月) 04:19:18.57 ID:6Tul9ygY.net
fbxのマテリアルタブからExtract Materialsを押して保存先を選べば、モデルと紐付けられたマテリアルが抽出できる
あとはそのマテリアルのAlbedoにカラーテクスチャ貼ればとりあえず色が塗れる
houdiniやってないからいい感じの連携はわからん

https://docs.unity3d.com/ja/2019.4/Manual/FBXImporter-Materials.html

8 :名前は開発中のものです。:2022/04/05(火) 11:32:38.45 ID:+vHhpQ4n.net
なるほど、ありがとうございます
助かりました

9 :名前は開発中のものです。:2022/04/06(水) 04:29:30.96 ID:Z5hRHYiF.net
初心者です
VRoidでベース作り→blenderで服改造→Unityで髪とスカートのひらひらや当たり判定をつけてVRMでエクスポート
というところまでいき、VRoid Hubにアップしたらスカートが片方だけ尋常ではないくらいめくれ上がっていました
何か考えられる原因はありますでしょうか?
ボーンやウェイトはVRoidで最初から設定されている時のままいじってません

10 :名前は開発中のものです。:2022/04/06(水) 06:53:06.33 ID:dlGSLuQM.net
>>9
コリジョン用オブジェクト消して試せば?

11 :名前は開発中のものです。:2022/04/06(水) 08:55:04.67 ID:PlmEUkpn.net
>>9
スケール弄ったらそんなこと起きた記憶
ポリゴンだけ縮小→当たり判定はデカいまま→暴走
どっかの変換でスケール変わってない?

12 :名前は開発中のものです。:2022/04/07(木) 11:58:38.81 ID:sNiOpzvi.net
テストプレイ中、GameタブでScaleを変えた際に拡大箇所はスクロールできないのでしょうか?

13 :名前は開発中のものです。:2022/04/08(金) 20:28:01.11 ID:tiPWU+Yr.net
public の配列Y_lineを作成し、この配列のelementはy座標を意味するので
インスペクターにこの配列を表示した際、表示される順をこの配列だけは降順にしたほうがわかりやすいのでそうしたいのですができないでしょうか?

14 :名前は開発中のものです。:2022/04/09(土) 02:36:19.09 ID:OWBzxpOI.net
>>12
pause中ならできたような。

15 :名前は開発中のものです。:2022/04/09(土) 15:02:19.34 ID:jIwlUglX.net
ParticleSystemのRenderのRenderModeをMeshにして複数登録すると、複数のメッシュを表示してくれますが、どうもランダムな順番で表示されるっぽいです
アニメーションみたいな感じにしたいので順番を指定したいのですが、どうすればできますか?

16 :名前は開発中のものです。:2022/04/09(土) 16:21:44.68 ID:jIwlUglX.net
メッシュを差し替えるスクリプト制御でやりたい事は出来ましたが、もっと軽い方法がありましたらお願いします

17 :名前は開発中のものです。:2022/04/09(土) 16:37:34.96 ID:1m97J0XQ.net
コルーチンを使って、フラグが上がるまで処理を止めておく事はできないでしょうか?
テキスト送りが終了するまでコルーチンの中で止めておきたいのですが。

18 :名前は開発中のものです。:2022/04/09(土) 16:46:07.04 ID:racED3Jw.net
できる
もうちょっとググれすぐ出てくるから

19 :名前は開発中のものです。:2022/04/09(土) 16:54:49.80 ID:r1vlZxFI.net
>>17
どういう処理を書いてるかにもよる
いちばん簡単なのはコルーチンの中に
while(フラグ) {
Yield return null;
}
こう書いておけば、フラグが変わったときにwhileから抜ける

20 :名前は開発中のものです。:2022/04/09(土) 17:49:10.54 ID:hXlsXtBP.net
コルーチンで判定するまでループは自分も使うことあるんだけど
無限ループ=フリーズのイメージがあって
こんな使い方しても大丈夫なんかな?ってふと思ったりする

21 :名前は開発中のものです。:2022/04/09(土) 18:12:45.42 ID:ayUPgWKE.net
それはコルーチンの動作理解してないから理解したほうがいい

22 :名前は開発中のものです。:2022/04/09(土) 18:15:07.39 ID:on7/VgDS.net
yield return書いてないと死ぬ

23 :17:2022/04/09(土) 19:38:40.79 ID:1m97J0XQ.net
どうもありがとうございます。
無事にコルーチンを作ることが出来ました!
何かの不具合でフラグが立たなかった時の為にupdate関数で時間を計測して、
while文の中にif文を作って時間が経ったらbreakで抜けるようにしておいた方がいいでしょうか?

それと右クリックするまでコルーチンの中で止めておく処理を作りたい場合

private void Update()
{
右クリックフラグ = false;

if (Input.GetMouseButtonDown(0))
{
右クリックフラグ = true;
}

}


IEnumerator コルーチン関数()
{
while (右クリックフラグ == false) //右クリックが押されると下に抜ける
{
yield return null;
}
}

このように書いて、コルーチンの中で何回も止めても大丈夫なのでしょうか?

24 :名前は開発中のものです。:2022/04/09(土) 20:45:32.91 ID:r1vlZxFI.net
>>23
別にいいけど、その設計は目的がよく分からない
それなら最初からコルーチンじゃなくてUpdateの中でやるか、それとも異なる処理を順番にやりたいならその分だけコルーチンを分けて作って一つずつ順番に動かして行ったほうがいい
そもそも非同期でなくてもいいようにも見えるし、非同期の意味が分かってないなら一度自分が何をしているのか分かるようになるまで調べたほうがいい
それとwhileのカッコ内はtrueのとき繰り返すから逆な気がする

25 :名前は開発中のものです。:2022/04/09(土) 20:49:00.61 ID:r1vlZxFI.net
それと時間計測して強制的にbreakしたいならそのループ内で計測した方がいい
コルーチンが終わってもUpdateで無駄な測定をする必要はない

26 :名前は開発中のものです。:2022/04/09(土) 21:43:19.06 ID:L/Uf1lza.net
updateがいやならunirxを使うと幸せになれるぞ

27 :名前は開発中のものです。:2022/04/09(土) 21:55:26.85 ID:1m97J0XQ.net
>>24
どうもありがとうございます。
今書いているコードはUdemyの教材で、ターン性バトルのテキストが敵味方交互に表示されるもので
自動でテキストが流れてしまうので、コルーチンの中を編集してみて治せないか試していたところです。

時間計測というのはUpdate関数の中で、Time.deltaTime を使ってやるという認識だったのですが、

コルーチン関数の中のwhile文の中で同じような事が出来るのでしょうか?
その場合どのようなコードを記述すると時間計測ができるのでしょうか?

28 :名前は開発中のものです。:2022/04/09(土) 22:32:34.20 ID:r1vlZxFI.net
>>27
Time.deltaTimeをコルーチンの中でできるかどうかを質問するよりもスクリプトに書いた方が早かったんじゃないか?
IEnumerator コルーチン() {
float timer=0;
while(true) {
yield return null;
timer += Time.deltaTime;
Debug.Log(timer);
}}
教材でどう勉強するかは余計なお節介だと思うけど、教材を改造して理解するよりゼロから教材のプログラムに似せて作るとか自分の作りたいゲームを作る方にシフトした方が楽しいと思うぞ

29 :名前は開発中のものです。:2022/04/09(土) 23:10:58.05 ID:1m97J0XQ.net
>>28
どうも有難うございます!
update関数を使わなくてもコルーチンの中だけで時間計測ができました!
貴重なアドバイスをどうもありがとうございます。これから頑張りたいと思います。

30 :名前は開発中のものです。:2022/04/10(日) 08:32:29.72 ID:Q8H14soh.net
>>27
良ければその教材教えてくれませんか?
自分まだUnity勉強し始めでUnityの教科書の次の教材を探しております

31 :名前は開発中のものです。:2022/04/10(日) 10:10:41.67 ID:l1sS5kxT.net
教科書なんて読むな!捨てろ!
いきなり1本作るのが最短の習得法だって云ってんだろ!?

32 :名前は開発中のものです。:2022/04/10(日) 10:54:21.59 ID:Fyl2sl3P.net
ほーん

33 :名前は開発中のものです。:2022/04/10(日) 11:07:21.12 ID:YGztOqF/.net
youtubeでunityで検索すればゲーム作成講座の動画出てくるから教材買わなくても、それ見れば基本はわかるよ。
動画見て知らない単語はググればある程度理解はできる。

34 :27:2022/04/11(月) 00:43:46.26 ID:m11Mu45n.net
Unity ゲーム開発:インディーゲームクリエイターが教える C#の基礎からゲームリリースまで【スタジオしまづ】
と言う教材ですが始めたての学習で適当かどうかわかりません。
セールの時に1700円くらいになるけど最初はyoutubeの無料動画がいいと思います。

35 :名前は開発中のものです。:2022/04/12(火) 02:40:11.57 ID:ZPXS1yyT.net
int型の引数を設定して、0は右のボタン、1は真ん中のボタン、2は左のボタン
という感じで数字をインスペクタから入力して設定する事があると思いますが
引数を列挙型にした方が分かりやすいと思い、列挙型を作って引数に設定すると、
Event Triggerで設定する候補から関数が消えて設定できなくなってしまいます。
どうして列挙型を引数にした関数はEvent Triggerに設定できないのでしょうか?

36 :名前は開発中のものです。:2022/04/12(火) 08:35:02.03 ID:XW8ETEp9.net
>>35
理由はわかんないけどunity側の仕様でUnityEventにenumは渡せない

回りくどいけどenumを設定するためだけのクラスを作って引数に指定すればつかえる

37 :名前は開発中のものです。:2022/04/12(火) 12:15:11.50 ID:8Snn2BPD.net
>>36
質問者ではないけど
マ?と思ってやってみたらできなかったどうやるんだ?
public void OnClick(SerializableClass s){}

[SerializeField] UnityEvent onClick;
これだと候補にすら出てこない

[SerializeField] UnityEvent<SerializableClass> onClick;
こうしたら候補に出てきてアタッチもできるがインスペクタから引数を入力することはできなかった

38 :名前は開発中のものです。:2022/04/12(火) 14:17:38 ID:gRYPBNGN.net
普通のC#でもEventには幾つか情報が入ってて
pointerの座標や何クリックなのかや何から呼ばれたのかとか
データが入ってる場合がある

UnityでもEventDataから押したGameObject.nameが取得出来るようだ

39 :名前は開発中のものです。:2022/04/12(火) 15:38:00.22 ID:fVa1Gln+.net
どうしても操作キャラがリアルに動かない
いかにもカーソルが動いてる感じ
もっと重厚感ある人間味な動きにしたい
MGS5の操作感にするにはどれだけスクリプト組めばいいんだか

40 :名前は開発中のものです。:2022/04/12(火) 16:00:11.91 ID:IWkE+ZPx.net
加速や旋回で凄く人間味のある動きに出来るアセットあったな
設定が難しいらしいけど

41 :名前は開発中のものです。:2022/04/12(火) 23:10:31.29 ID:YIZM4r3n.net
rigidbody2D.addForceでオブジェクトを動かしています。このオブジェクトのfreezeRotation.Z軸は固定しない仕様です
addforce(transform.up・・・で真上にジャンプさせようとした時に、オブジェクトが回転してて横向いてる時は斜めに飛んでしまいます
オブジェクトのrotatinのZ軸の向きに関係なく、addforceは画面に対しての方向でさせたいのですがどうすればいいのでしょうか

42 :名前は開発中のものです。:2022/04/12(火) 23:41:31.29 ID:/zdg8zK7.net
>>41
transform.upをVector2.upにしたらたぶんいける
前者はローカル座標、後者はワールド座標

43 :名前は開発中のものです。:2022/04/12(火) 23:58:38.73 ID:b6HksIjJ.net
このプログラマめんどくさい

44 :名前は開発中のものです。:2022/04/13(水) 08:00:05.88 ID:3c7f5kzW.net
SimCityのような都市開発シミュレーションゲームを
作りたいのですが、下記画像のようにGUIからアイテムを選択して
ワールド上に配置する方法を解説されたサイト、
またはチュートリアル動画ってご存知無いでしょうか…

参考画像
https://imgur.com/a/hwqF2yS

45 :名前は開発中のものです。:2022/04/13(水) 13:12:37 ID:g/83QksK.net
ビルドしてみようと思ってEDIT > External Toolsを開くと
You are missing the recommended JDK. Install the recommended version using UnityHub.

というのが表示されているので、検索したらUnityHub>モジュールを加えるからJDKを入れろと言うようなことが書いてあるのですが
Unity2020.0.30f1を使っているのでそれをUnityHubでみても以下3つともちゃんと「インストール済み」と表示されてて入れてあるのですがどうすればいいのでしょうか

・Android Build Support
・Android SDK & NDK Tools
・OpenJDK

46 :名前は開発中のものです。:2022/04/13(水) 19:22:24.97 ID:sFblugPq.net
英語圏でもgodotよりunityの情報量が多いのですかね?

47 :名前は開発中のものです。:2022/04/13(水) 21:56:34.19 ID:hpnJvCzo.net
>>45
一度その3つチェック外して入れ直してみ
それで治るから

48 :名前は開発中のものです。:2022/04/13(水) 23:26:46.33 ID:4SC5MDNN.net
ゲーム作ってるとスクリプトが10個20個と思ったより増えてしまいます
どれとどれが参照や関連してるとかだんだんわからなくなってきます
みなさんどうやってるんでしょうか

49 :名前は開発中のものです。:2022/04/14(木) 04:20:26.60 ID:3imhgoPK.net
いくつかエディタのバージョンは入れてて、今回また新しいバージョンのエディタをインストールしようとしたら、途中で
failed to delete old unity android support instaliation files. mayby unity or some of its tools are stiill running
みたいなダイアログが英語で表示されたのですが、どのファイルのことを言っているのかわからないし、
再試行してもダメそうなのでとりあえず無視してインストール自体はしたのですが、どうすればいいのでしょうか?

50 :名前は開発中のものです。:2022/04/14(木) 19:03:14.30 ID:tm5qSapM.net
>>48
自分でフォルダ分けしろ
ステージのスクリプトとキャラクターのスクリプトとって分けてけ

51 :名前は開発中のものです。:2022/04/14(木) 21:55:34.92 ID:inKJ9fyc.net
unity初心者なんですけど、キャラの移動はrigidにaddforceしています
しかし、物理と任意の操作を組み合わせると重くなるのではないでしょうか?

前後左右への移動はキー操作で行う
落下は物理に任せる

落下もスクリプトでコントロールしたほうがかるそうですね
であれば、rigidにこだわる必要もないなと

52 :名前は開発中のものです。:2022/04/15(金) 04:58:02.03 ID:oFK7G1gA.net
Sceneビューで拡大して動いている間の当たり判定を見たいのですが対象が動いている場合、画面の外に行っちゃうのですが
対象のオブジェクトを常にビューの中心に追随してくれるモードとかないんでしょうか?

53 :名前は開発中のものです。:2022/04/15(金) 14:37:47.70 ID:H0Z1Y5Iz.net
インストールしたんですけど
起動したらライセンスエラーって出て
hubの方で何度ライセンス取得しても起動してくれません
サイトの方でアカウント見たらunity personalが有効化されてないって出てます
どうすればいいんでしょう

54 :名前は開発中のものです。:2022/04/15(金) 15:33:03.24 ID:H0Z1Y5Iz.net
解決しました

55 :名前は開発中のものです。:2022/04/16(土) 15:56:32.65 ID:ZVKYNzpa.net
ScriptableObjectって変数名(シンボル)変えただけでInspectorから設定した値全部消えるんですけど、こんなデリケートで保守性皆無のファイルってデータベース的に使う事を想定されてないんでしょうか?
結局jsonしか選択肢がない気がするんですけど、なにか勘違いしてるところありますか?

56 :名前は開発中のものです。:2022/04/16(土) 21:55:51.07 ID:cj1xD7y8.net
>>55
これをあーしてこーすると消えないよ
https://tarowork.hatenablog.jp/entry/2015/09/01/180938

あくまでダーティかつ適当に早く作りたい人向けだと思うよ

57 :名前は開発中のものです。:2022/04/16(土) 22:09:44.92 ID:cj1xD7y8.net
>>51
rigidの中身はスクリプトだよ
もともと用意されてるものを使うか
自分でイチから書くかの違いだよ
当たり判定にしろ地面移動にしろ細かい計算が必要になるわけで自分で書くことはおすすめしないよ

物理を使わない移動ということは
マス目移動とかシューティングゲームみたいな話になってくるよ

アクションゲームならrigidいるよ
どちらにしろ物理は毎回計算してるわけで制御がどこにあろうと変わらないよ
これがないと接触の判定も壁あたりの判定もできないよ

addForceより厳密にコントロールしたいならvelocityを使うといいよ

58 :名前は開発中のものです。:2022/04/16(土) 22:18:41.92 ID:TP6zpAqa.net
>>56
ありがとうございます。面倒ですが定数的に保持することにしました

59 :名前は開発中のものです。:2022/04/16(土) 22:56:53.89 ID:awXaQ7T7.net
Update内で任意の範囲にコライダーがあるかどうかを調べる方法をお願いします
任意の範囲がコライダーの中に完全に埋まってるとRaycastやSphereCastAllが反応しないので...
MeshColliderのConvexをオンにすれば反応してくれますが、それではMeshColliderの物理判定がガバガバになってしまうのでダメでした

60 :名前は開発中のものです。:2022/04/16(土) 23:45:06.89 ID:j7JlBl1u.net
すみませんunityでこういう症状がでた場合って何が原因か検討つきませんか?
https://www.youtube.com/watch?v=S6CkwqaIAlA

61 :名前は開発中のものです。:2022/04/17(日) 07:26:10.42 ID:oYbkxdWI.net
unityHUB経由で入れたSDKのバージョンってどこで見れるんでしょうか
AndroidStudioでもSDKマネージャー見当たらなくなってよくわからなくなりました

62 :名前は開発中のものです。:2022/04/17(日) 17:26:56 ID:5B2C+1jL.net
ワールド上に道路を作成したいのですが、
プレイヤー(ゲーム内)画面上で編集できるツールって存在しますか?
ストアを探してもどれも拡張エディターで作用するものばかりで…

63 :名前は開発中のものです。:2022/04/18(月) 15:22:34.97 ID:OYOzMa5n.net
マイクラレベルなら
アセットなどなくても
建築要素20行くらいで作れたけどな

64 :名前は開発中のものです。:2022/04/18(月) 23:02:57.13 ID:k4fvunYY.net
おしえてください!
Unityインストールしたんですけど、
ツールバーのアイコン(再生とか)がまったく表示されません。
直す方法はありますでしょうか?

65 :名前は開発中のものです。:2022/04/18(月) 23:28:55 ID:i4EYDm/r.net
スクリプト内でpublic等にした、インスペクターに表示されてる変数を、#regionやListの変数みたいに自在に省略、表示する方法ってありますか?

66 :名前は開発中のものです。:2022/04/19(火) 00:16:37.65 ID:A9mVxppe.net
>>65
使ったことないけどこんなんありましたよ
https://forum.unity.com/threads/foldout-for-certain-properties-without-a-custom-editor.689536/

アットリビュートで用意されてるとかはない気がします

67 :名前は開発中のものです。:2022/04/19(火) 01:42:32 ID:kg7ItjZk.net
>>66
ありがとうございます

68 :64:2022/04/19(火) 14:20:20 ID:iPrV5Tq5.net
こんな画面になっちゃってまして困っています。

https://dotup.org/uploda/dotup.org2779853.jpg.html

69 :名前は開発中のものです。:2022/04/19(火) 14:25:05.51 ID:cV3PLiTWB
unityを使いたいなと思ってるんですが、unityの使い方の解説動画を見ても理解できません
解説動画よりも本を読んだ方が分かりやすいでしょうか?

70 :名前は開発中のものです。:2022/04/19(火) 14:20:51.17 ID:Xy57OiCQ.net
3Dゲームにおいて、装備品の色合い変更をある程度プレイヤーが行えるようにしたいのですが、
マテリアルを複数割り当てると処理が重くなるという事らしいので、
今後オンラインマルチプレイも実装するため何とか少ないマテリアルで実現しようと考えています

しかし、良い方法が分からず困っています

色彩パターンごとにオブジェクトを用意する事も考えたのですが、着色箇所が5つもあると極基本的な色味パターン8種(三原色+混ざり+白黒)で3万3千弱通りになるため現実的ではなく
合う色合いだけに限定しても相当数になるため現実的ではありません
かと言って5つ全て(実際はもっと多く)にマテリアルを割り当てると重くなってしまいます

2〜3くらいなら気にしなくてよいとあってのでその数に抑えた上で色変更を可能にしたいのですが、
そうするとカラーパレットとして作った画像ファイルにUV展開で着色する事になり、
結局色パターンごとにオブジェクト作成が必要になります

そもそもなのですが、キャラエディット機能を実装しているため各パーツごとに個別にマテリアルが割り当てられており、
特に頭部は透過テクスチャを4つ重ねて表示しており、全身合わせるとそれこそ1キャラクターに20以上はマテリアルを使う事になるのですが、
これがオンラインマルチプレイでどこまで影響するか分かりません

何か良い知恵があれば教えてください

71 :名前は開発中のものです。:2022/04/20(水) 03:57:52.80 ID:5Nmr5KRa.net
>>70
とりあえずテストして問題なけりゃいいんじゃね?
100人が入り乱れるアクションゲームとかなら問題あるかもだけど

プログラマじゃないので詳しくはわからんが
バッチを減らすのにテクスチャのアトラス化(大きなテクスチャにまとめる)して
マテリアルを共通にする方法があるみたい


で、もっとドンピシャな機能があったわ

URPかHDRPなら
SRP Batcherなる機能をオンにしてれば
マテリアル多数あっても重くならないってさ
https://blog.unity.com/ja/technology/srp-batcher-speed-up-your-rendering

72 :名前は開発中のものです。:2022/04/20(水) 11:36:46.36 ID:76TTGcur.net
>>71
情報ありがとうございます。
早速利用してみます。

73 :名前は開発中のものです。:2022/04/20(水) 22:31:35.49 ID:N6ClqhhS.net
再生中にシェーダーのパラメータを変える事で
マテリアルのインスタンスが作られて個別に色変えられるのは御存じ?
色変えるのにマテリアルアセット何個も用意する必要ないよ、
よっぽど色見にこだわりがある場合覗いて

74 :名前は開発中のものです。:2022/04/20(水) 23:24:49.57 ID:5Nmr5KRa.net
>>73
色変えた時点で個別にドローコール走るっぽいよ

75 :名前は開発中のものです。:2022/04/20(水) 23:32:24.25 ID:51kALXEi.net
Sharedかそうでないかによるんでなかったっけ?
知らんけど

76 :名前は開発中のものです。:2022/04/20(水) 23:47:19.24 ID:51kALXEi.net
SRPで6マテリアル60fpsくらいからアトラス化&1マテリアル化で
120fpsくらいまで簡単に上がったことがあるので
無駄に増やすより工夫して減らす方向の方がいいとは思う

77 :名前は開発中のものです。:2022/04/21(木) 16:12:43.68 ID:dfR0iYPb.net
エディタ中のSceneやGame上では正常にマテリアルが表示されてるのに、テストプレイをすると大分変わってしまいます(氷の青白いマテリアルがタールのような真っ黒のマテリアルになる)
別のシーンではテストプレイをしても正常に表示され、カメラ、PostProcessing、DirectionalLight、対象オブジェクトをそれぞれのシーンで入れ換えてテストプレイしてみましたが、それらには問題は無く、どうやらシーンそのものに問題がありそうですが、シーンのどの辺を探るべきか分かりません

78 :名前は開発中のものです。:2022/04/21(木) 16:29:39.52 ID:dfR0iYPb.net
シーンそのものではなく、シーンを切り替えるとマテリアルが正常に表示されない様です
どこを直せば良いのでしょうか...
シーンの切り替えは普通にSceneManager.LoadSceneでやってます

79 :名前は開発中のものです。:2022/04/21(木) 16:33:16.93 ID:dfR0iYPb.net
シーンを切り替えた後に新しくオブジェクトを生成してもこの現象が起きます
シーンの切り替えをせずに生成すると正常に表示されます

80 :名前は開発中のものです。:2022/04/21(木) 16:44:44 ID:mfY0WnyT.net
>>77
> Directional Light
まさかこれの影で真っ黒になってるだけってことはないよな?

81 :名前は開発中のものです。:2022/04/21(木) 16:50:52.22 ID:dfR0iYPb.net
>>80
同じ状況(カメラの角度とかその他諸々)でもシーンを跨いだか否かによって表示が違うので、DirectionalLightでは無いと思います

82 :名前は開発中のものです。:2022/04/21(木) 16:57:12.01 ID:RSpiIoch.net
環境光じゃね?
window - rendering - lightingのenvironment - environment lightingのsourceをcolorにしてみたら

83 :名前は開発中のものです。:2022/04/21(木) 17:03:02.41 ID:dfR0iYPb.net
>>82
ダメでした

84 :名前は開発中のものです。:2022/04/21(木) 17:03:55.48 ID:dfR0iYPb.net
バージョンは2020.3.10f1です

85 :名前は開発中のものです。:2022/04/21(木) 17:46:22.04 ID:Gg5ZsZzh.net
初めてunityを使うんですが、おすすめのunityの勉強法は何でしょうか?

86 :名前は開発中のものです。:2022/04/21(木) 18:26:34.13 ID:kzX1P5Lf.net
UNITYでダークソウルみたいな3Dゲームアクション作るとして
自分の剣攻撃が敵に当たった時の判定ってどんなふうにとるのが一般的でしょうか?

87 :名前は開発中のものです。:2022/04/21(木) 23:37:08.38 ID:dfR0iYPb.net
5億回挟まれてるってピン刺してんのに引かないゴミカスとやんのマジでおもんねぇ

88 :名前は開発中のものです。:2022/04/22(金) 00:40:22.53 ID:WyOPlp3f.net
>>86
俺ならタグ使う

89 :名前は開発中のものです。:2022/04/22(金) 01:15:53.22 ID:lrzTXy8Y.net
>>88
剣のオブジェクト事態にコライダつける感じでしょうか?
それとも攻撃時に攻撃判定専用のオブジェクトを発生させるんでしょうか?

90 :名前は開発中のものです。:2022/04/22(金) 06:39:55.16 ID:sNio4xnM.net
そのマップ全体に敵オブジェクトを配置してて、プレイヤーが近づいたときだけ敵オブジェクト(スクリプトのupdateメソッド)を動くようにしたいのですが、
コレはなんかカンタンな仕組みってあったりするのでしょうか?

91 :名前は開発中のものです。:2022/04/22(金) 12:38:25 ID:tFXcNUDV.net
>>85
Unity公式のゲーム制作アセット(2Dと3D両方有り)があるからそれのサンプルゲームをいろいろいじくってみるといい

92 :名前は開発中のものです。:2022/04/22(金) 14:18:18.78 ID:AQVL1MkB.net
>>85
unityの教科書って本

93 :名前は開発中のものです。:2022/04/22(金) 14:21:14.00 ID:AQVL1MkB.net
>>90
単純な切り替えならステートパターンが楽
コード書くの苦手ならboltのステートグラフを利用するといい

もっと複雑なのが欲しくなったら
ビヘイビアツリー

94 :名前は開発中のものです。:2022/04/22(金) 15:40:15.82 ID:uWa/dKnJ.net
>>90
public enum で状態を定義

updateの最初にswitch参照、状態ごとに処理を書く

ステートマシーンっちゅーやつっすわ
https://forum.unity.com/threads/very-simple-statemachine-pattern-c.38956/

95 :名前は開発中のものです。:2022/04/22(金) 17:21:49.08 ID:AQVL1MkB.net
switchでステートかくのはおすすめしない
インターフェースか継承でやった方が楽

96 :名前は開発中のものです。:2022/04/22(金) 17:24:36.71 ID:AQVL1MkB.net
と思ったけど
外からどの状態でも呼び出せるようにするって意味なのか…?

97 :名前は開発中のものです。:2022/04/22(金) 19:16:54.21 ID:9vwWwMX1.net
ステートマシンは状態の推移/管理がキモじゃなくて、
状態ごとにクラスが独立してパーティションのようになっていることに意味があると思う

ステートを手続きなしでまたげるならバグりそう

98 :名前は開発中のものです。:2022/04/22(金) 19:21:05.15 ID:5mMOiKQP.net
>>93-94
ありがとうございます
それぞれのupdate関数内でplayerとの距離を計算して近かったら状態を切り替えるというふうにするということでしょうか
仮にobjectの数1000くらいあってもコレくらいならいけますかね

99 :84:2022/04/22(金) 21:55:43 ID:Hz2uV4T5.net
>>91
>>92
分かりました
ありがとうございます
その通りにさせて頂きます

100 :名前は開発中のものです。:2022/04/23(土) 00:37:50.21 ID:RK4s11ez.net
アプリをリリースする時、利用規約は必ず必要なのでしょうか?
自分で作る場合はホームページを作って書けばいいのでしょうか?

総レス数 1002
278 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200