【ゲームエンジン】Unity初心者質問スレBuild4

■ このスレッドは過去ログ倉庫に格納されています
1名前は開発中のものです。
垢版 |
2020/03/29(日) 19:35:12.24ID:mirhKW7D
ゲームエンジンUnityを楽しむ初心者による初心者の為のスレ
その為「アセットを購入しましょう」「チュートリアルやれ」「ググレカス」等禁止
初心者が親身になって初心者に教える。
又ググレの場合、何のキーワードでググるのか書いてね

●リンク
・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初心者質問スレBuild3
https://itest.5ch.net/mevius/test/read.cgi/gamedev/1578720539
462名前は開発中のものです。
垢版 |
2020/05/15(金) 02:23:31.97ID:/MC+8GrK
3D空間を移動するオブジェクトAの子にMainCameraがあります。

マウスのx,y座標移動で視点を変える機能を作成したのですが、オブジェクトAとMainCameraの間に遮蔽物(壁や床)が存在すると遮蔽物が映ってしまいます。

狭い道や建物に入ることを想定し、上記の問題を回避したいのですが、解決するにはどのような方法がありますでしょうか?
2020/05/15(金) 02:38:43.10ID:OqUXUaQt
>>464
3D作った事ないしうろ覚えだけど、遮蔽物を透明にするのってカプコンかなんかの特許なんじゃなかったっけ?

ズームしてキャラに近づくゲームが多い気がする
2020/05/15(金) 03:16:02.63ID:/oSA5v87
>>462
壁や床に入らないようにコライダーを調整するだけ
2020/05/15(金) 04:55:36.62ID:4gGQSSh0
>>462
カメラ周辺から被写体に向けてレイを投げて、障害物があったらその前に回り込ませたり、障害物の透明度を下げたりする。

ただ、勉強のために自分で作ってます、とかならいいけど、
そうでないならCinemachineなどのカメラアセットを使うのをお薦めするよ。
unity公式アセットなので無料だし、ググれば日本語で使い方説明した記事がいっぱい出てくるから。
466くまじょ
垢版 |
2020/05/15(金) 06:04:13.19ID:JmMPGKC7
WebGLのInputFieldではコピーできないのかよおおおお
どうしたらいいのでしょうか

unityエディタでの動作確認したりするので
対策したらWebGL以外では動かなくなるのは困る
2020/05/15(金) 09:03:48.31ID:RFJssu20
あの特許1、2年前に切れなかったっけ
2020/05/15(金) 09:06:14.45ID:v9RYj+B3
unity2019で作成しtimelineを2018に移行したいのですが、2019だtimelineがpackageになっているためか移行出来ません。
2020/05/15(金) 09:06:30.87ID:v9RYj+B3
>>468 です
 
2020/05/15(金) 09:07:28.79ID:v9RYj+B3
>>468 です
投稿ミスりました。
対処法などありますでしょうか。
宜しくお願い致します。
2020/05/15(金) 21:32:49.40ID:ndwJQZp9
UE5きたかwww
UEで作ったゲームは3000ドル超えたら超えた分の5%払う条件が
条件が100万ドルになるとかwww 来年かよwwwまだかww
2020/05/15(金) 21:35:25.44ID:ndwJQZp9
詳しくは自分でちゃんとググってねw
個人開発レベルもぐんと上がるのかww
すごい時代やww
2020/05/15(金) 22:27:28.72ID:a8d1J9U7
シーン内のオブジェクトって
インスペクタ内でコンポーネントを追加や削除していくと
もともとは何だったのか判別しづらくなると思うんだけど
分かる方法ありますか?

例えば、このオブジェクトは
もともとは"create empty"で作ったものだとか、分かるんかな?

他人が作ったサンプルシーンを開いた時に、
知りたいんです
2020/05/15(金) 22:39:59.79ID:4gGQSSh0
ないんじゃない?
知る必要があるとも思えんけど。
2020/05/15(金) 23:00:58.55ID:USMTBTE+
元がプレハブならオーバーライドのとこ見ればわかるけど
2020/05/16(土) 01:42:44.77ID:kHB2cfPG
サーフェスシェーダーで使うIN.uv_MainTexと
シェーダーグラフのUVノードで取得できるfloat2って同じ値でしょうか?
シェーダーグラフでノイズテクスチャを作ってるんですが
サーフェスシェーダーで作ったノイズテクスチャと比べて解像度が低い印象です。
TilingAndOffsetノードでスケール変えたりもしましたがズームするとボヤッとして無限ノイズが作れません。
2020/05/16(土) 18:01:38.29ID:eBxBXN7f
BroadcastMessage, SendMessage の仕様なんですが、

if (Input.GetKey("space")) {
 gameObject.BroadcastMessage("ApplyDamage", 1.0f);
}

とやってスペースキーを一回押すと、ApplyDamage が 100 回近く呼ばれるんですが、こういう仕様でしょうか?
呼び出しを 1 回にするのはプログラマー側でやらないと駄目ですか?
2020/05/16(土) 18:16:14.74ID:N39RPjOk
1回にしたいならGetKeyDownかGetKeyUp
2020/05/16(土) 18:21:54.65ID:eBxBXN7f
>>478
1 回になりました
2020/05/17(日) 02:43:19.49ID:PO+gucA+
>>479
何故そうなるかは覚えておいた方がいいよ。
OffからOnになったか (GetKeyDown)
OnからOffになったか (GetKeyUp)
Onか(GetKey)
2020/05/17(日) 03:07:33.12ID:RxSH1N6E
>>480
なるほど
GetKeyDownが新社会人
GetKeyUpがリストラ無職
GetKeyが神
こういうことか!
2020/05/17(日) 21:11:32.58ID:RxSH1N6E
>>481
あんまり面白くなかった
ごめん
2020/05/17(日) 21:22:50.57ID:teipQi3b
>>480が歌詞みたいで面白い
484名前は開発中のものです。
垢版 |
2020/05/18(月) 00:03:34.64ID:xaW3tppg
ここodin使っている人いますか?
[TableList]で30個ぐらいのボタンを作成したいんですが
配列からボタン名を設定することは可能でしょうか?
現状だとボタン名が全て"ButtonName"になってしまいます。

[TableList]
public List<NewBtn> Lists = new List<NewBtn>()
{
new NewBtn(),new NewBtn(),new NewBtn(),
};
public class NewBtn
{
[Button("ButtonName" , ButtonSizes.Large)]
public void BtnAction(){}
}
2020/05/18(月) 00:05:34.52ID:AKnwkIMb
>>483
お前音痴だろ(笑)
2020/05/18(月) 01:53:37.67ID:9zzxfLyj
>>483
声出して笑ってしまったわw

>>484
Tool→OdinInspector→AttributeOverviewのButtonのサンプルコードは見てみた?
何をボタン名にしたいのかわからないから
もうちょっと具体的に質問してもらえると手伝えるかも。
2020/05/18(月) 02:04:15.55ID:uEYbJ0iF
Get Key Down ひとりでは
解けない愛のパズルを抱いて
Get Key Up この街で
やさしさに甘えていたくはない
Get Key Down 君だけが
守れるものがどこかにあるさ
Get Key Up ひとりでも
傷ついた夢を取りもどすよ
2020/05/18(月) 03:32:24.44ID:B2zG0Bvi
もっこりオブジェクト
2020/05/18(月) 10:50:39.78ID:SpmWdLaU
>>487
>Get Key Down ひとりでは
>解けないツールの仕様を抱いて
>Get Key Up このスレで
>やさしさに甘えていたくはない
>Get Key Down 君だけが
>答えれる問いがどこかにあるさ
>Get Key Up ひとりでも
>つまずいたバグを取りはらうよ
2020/05/18(月) 15:58:30.71ID:9095aGA5
規制解除めでたい
しかし自宅待機や自粛ストレスの気分転換をコンセプトに作ったワイのアプリの行き場は何処へ…
Unity触り始めの1ヶ月でアプリ二本作ったはいいもののビルドエラーには勝てなかったよ…
ソースコード使い回しで同人エロゲ作るか
PC用なら流石にビルドエラーはないやろ…
2020/05/18(月) 20:30:45.51ID:ZCCxvuNN
>>490
1ヶ月で2本作るとか凄くない?見てみたい
2020/05/18(月) 20:54:20.49ID:9095aGA5
>>491
二本作ったとドヤってますが…
実際は教本のサンプルスクリプトを改変しただけなので誰でもできるレベルです
画像も過去に作ったアプリの使い回しやフリー素材を加工したものが大半ですし

教本のサンプルスクリプトは改変したものを公開・販売しても良いと明記されているので改変自体はいいんですがまさかビルドで躓くとは思いませんでした
リリース自体は諦めていませんがビルドの方法は地道に調べていこうと思います
2020/05/18(月) 22:04:06.14ID:e2gRqxGm
>>規制解除めでたい

これってどういう意味ですか?
UNITYの規制がなんか解除されたってことでしょうか?
2020/05/18(月) 22:27:56.29ID:B2zG0Bvi
ゲーム作りもいいがニュースを見よう
2020/05/18(月) 22:40:33.06ID:e2gRqxGm
なるほど 文脈からも読み取れますね
最近UE5が話題になってるのでUNITYなんか対抗したのかと思いました
2020/05/20(水) 13:12:48.61ID:Xy/FBLRO
フラグをつけてupdate内でif文を1度だけ処理させた時、その後も毎フレームtrueかfalseの判定をし続けるのでしょうか?
またそれはパフォーマンスに影響しますか?

それともUnityやC#の仕様などで二度と変化しない様な変数は以降スルーされる様な仕組みになってるんでしょうか?
2020/05/20(水) 13:21:51.47ID:4cgWSu4w
判定し続けないと変わったときに困るだろう
2020/05/20(水) 13:24:33.75ID:mp6ifZaz
Debug.Log君に聞いてみればちゃんと答えてくれるゾ
2020/05/20(水) 14:03:18.93ID:Xy/FBLRO
>>497
ですよね・・・!
>>498
すぐ確かめられますね、、くだらない質問してすみませんでした。
2020/05/21(木) 00:13:45.91ID:ffALIiO/
>>486
ボタン名ですが、例えば特定のフォルダに入ってる複数のシーンアセット名を
テーブルリストのボタンに流し込む仕様で考えていて、作りたいのはシーンローダーのようなものです。
現状はボタン一個にパスをベタ書きしていて、シーンのバージョンが上がったら
書き直す状態なので効率が悪いです。

ボタン名用の参照はこんな感じですかね。
using System.IO;
string[] scs = Directory.GetFiles(Application.dataPath + "/Scenes/Test/", "*.unity", SearchOption.AllDirectories);
501486
垢版 |
2020/05/21(木) 03:28:22.91ID:2IZXdfpd
>>500
TebleListがあるスクリプトに、TableList内のエレメントを取得するメソッドを書いてそれを呼ぶ、というのはどうでしょうか。
そのメソッド内から、NewBtn側に用意した、ボタンのラベルとなるstring型の変数を書き換えています。
GetTableElementsは下記ではボタンにしているので、sceneが増えたらボタンを押し直さないといけませんが…

[Button("GetTableElements")]
void GetTableElements()
{
string[] scs = Directory.GetFiles(Application.dataPath + "/Scenes/Test/", "*.unity", SearchOption.AllDirectories);

Lists.Clear();

for (int i = 0; i < scs.Length; i++)
{
Debug.Log(scs[i]);
NewBtn newBtn = new NewBtn();
newBtn.SetLabel(scs[i]);
Lists.Add(newBtn);
}
}

public class NewBtn
{
string buttonLabel;
public void SetLabel(string labelStr)
{
buttonLabel = labelStr;
}
[Button("$buttonLabel", ButtonSizes.Large)]
public void BtnAction() { }
}
2020/05/21(木) 04:21:54.35ID:stCZRXzG
Unity : 2018年にGoogleと提携。
Unreal Engine : 中華企業テンセントが買収。

ゲームエンジンは使う人が少ないため商業化が難しいとされてきたのにUnityが
台頭してきている理由が分かった気がした。
2020/05/21(木) 16:14:12.31ID:z9iCKoRD
if文についての質問です
条件の指定の仕方(if文)で
シーンにAとBという名前のついたオブジェクトがあるとします。BはAの子供だとします。
子供はいない場合またはCという名前の子供可能性もあります。
"A"というオブジェクトの子供に"B"というオブジェクトがついていたらという条件式を
書こうとする場合
if()のかっこの中はどう書くかかわかる人いますか?
2020/05/21(木) 16:24:40.62ID:jEQ1EseI
>>503
var a = GameObject.Find("A");
var b = GameObject.Find("B");
if (a!=null && b!=null && b.transform.IsChildOf(a.transform))
//;
2020/05/21(木) 16:59:58.68ID:z9iCKoRD
>>504
早速の回答ありがとうございます。うごきました。
2020/05/21(木) 18:01:08.02ID:7FwurZK1
3Dモデル(A)にスクリプトを沢山取り付けて動作させてます。
新しい3Dモデル(B)を作成して(A)のスクリプトをインスペクター上で1個1個コピーして(B)に貼り付けているのですが纏めて貼り付ける方法などありますでしょうか?エディタ拡張はやった事ないのですが自分でエディタ拡張組まないと出来ないのでしょうか?
2020/05/21(木) 18:21:08.30ID:7FwurZK1
>>506です。
良い言い回しが分からず伝え難くてすいません。画像で表すとこのような事をやりたくご教示頂けないでしょうか。

https://i.imgur.com/OYEY2in.jpg

現状は1つづつコピー貼り付けで対応しています。
2020/05/21(木) 19:31:26.26ID:5tpteR2O
>>506
逆に考えるんだ。
aをデュプリケイトして、オブジェクトをbに差し替える。
2020/05/21(木) 19:49:06.79ID:7FwurZK1
>>508
モデルAを複製して見た目をモデルBに
するという事でしょうか、それが可能なら質問事項より断然やりやすくなります。
2020/05/21(木) 19:57:13.57ID:7FwurZK1
>>508
あっ!モデルAをコピーして中身を全部消す→モデルBの中身をモデルAに写すで
うまく行きました!
なんで気が付かなかったんだろ・・
ありがとうございます!
511名前は開発中のものです。
垢版 |
2020/05/21(木) 20:43:20.58ID:OnRKRs5/
パーティクルでオーラのようなものを作り、軌跡に粒子を巻き上げながら(というより残しながら)地面を走っていく演出を作ろうとしています
パーティクルでシミュレーション空間をワールドにしたのですが、地面を走らせるためにリジッドボディのAddForceで飛ばしても
粒子がその場に残らずパーティクルの塊がそのままま進んでいってしまいました

前述のような演出を行わせるにはどうしたらよいでしょうか
2020/05/21(木) 21:22:27.83ID:5tpteR2O
>>511
パーティクル設定の、emitter velocityでは?
よく分からんけど、試してみてくれ
2020/05/21(木) 23:11:20.75ID:ffALIiO/
>>501
できました。ありがとうございます。
2020/05/21(木) 23:57:24.44ID:M9zd/8W3
unityとVisual Studioを連携させようと環境設定開いたら
外部のスクリプトエディター一覧にvisualstudioが出てこないのですが
なぜでしょうか
バージョンはvisualstudio1.6.0.3
unity2019.1.2f1です
515名前は開発中のものです。
垢版 |
2020/05/22(金) 00:55:50.18ID:pURr0+8K
unityでml-agentsのチュートリアルの3Dボールの機械学習をやりたいんですが、anaconda promptで実行すると
PermissionError: [WinError 5] アクセスが拒否されました。: './models'

During handling of the above exception, another exception occurred:
のようなエラーが出ます。
また、unity上では

Couldn't connect to trainer on port 5005 using API version API-13. Will perform inference instead.
UnityEngine.Debug:Log(Object)
MLAgents.Academy:InitializeEnvironment() (at Assets/ML-Agents/Scripts/Academy.cs:228)
MLAgents.Academy:LazyInitialization() (at Assets/ML-Agents/Scripts/Academy.cs:147)
MLAgents.Agent:OnEnable() (at Assets/ML-Agents/Scripts/Agent.cs:255)

というエラーがでるんですが、どなたか原因がわかるかたいらっしゃいますか
2020/05/22(金) 03:31:28.40ID:NGWjuFox
移動用のスクリプト、自動で敵を見るスクリプト、射撃用のスクリプトなど、現在オブジェクトに用途別に作ったスクリプトを多数載せてるんですが、これって一つのスクリプトにまとめたほうが処理は軽くなったりしますか?

オブジェクトの使用目的に合わせて、小分けにしたスクリプトをいくつも載せてったほうが汎用性が高そうだと考えてなんですが、これが正解なのか?なんか落とし穴があるんじゃないか?
とモヤモヤしています
517名前は開発中のものです。
垢版 |
2020/05/22(金) 03:55:19.97ID:FdFHOfHT
>>515
'./models'へのアクセス権限がないようですが、フォルダを開けますか?

Couldn't connect to trainer on port 5005 using API version API-13.
についてはググれば海外のフォーラムで少し議論されてるようですが参考になりませんか

>>516
私も詳しくありませんが
Unityはコンポーネント指向らしいのでそのやり方でいいんじゃないでしょうか
518sage
垢版 |
2020/05/22(金) 05:15:44.25ID:uX686JSz
https://gametukurikata.com/program/scriptableobjectitemdatabase

今このサイトに沿ってデータベースを作成しました。クリックしたオブジェクトを取得してその別のデータをテキストとして表示する(例えば武器をクリックするとその攻撃力が表示されるなど)にはどういうスクリプトを書いたら良いでしょうか。
ちなみにクリックしたオブジェクト名を取得するところまでは書けていますが,そもそもSceneにあるオブジェクトとデータベースのデータが紐付いていない状況です。
519名前は開発中のものです。
垢版 |
2020/05/22(金) 14:29:25.33ID:MCN3Kmd7
IT掲示板群 ttp://x0000.net/forum.aspx?id=15

学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
520名前は開発中のものです。
垢版 |
2020/05/23(土) 11:40:16.54ID:6SEx65Is
vs codeでインテリセンスは有効になるでしょうか?
unity debuggerではだめでしたが、公式のアドオンは存在しないのですか?
2020/05/23(土) 12:10:58.69ID:13xwr1eI
>>518
データベースの後、どこまで作ったのさ?
引っかかったところで質問してくれたら答えやすい。
2020/05/23(土) 13:00:11.99ID:udVLD+1Q
和尚本のサンプルを手本に横スクロール型の2Dドット絵アクションゲームを作っています

キャラがジャンプした時のグラフィックに関して
キャラがジャンプすると髪や胸が揺れるというアニメーションを入れたいと思っています

といっても細かいものではなく
リジット2Dを付けたキャラの上昇時と降下時にスプライトを切り替える程度でいいのですが方法がわかりません
ドット絵アクションでも揺れものアセットを使ってボーンを入れた方がいいのでしょうか?
ご存知の方がいらっしゃれば教えてください
2020/05/23(土) 13:16:29.19ID:13xwr1eI
>>522
どっちでもいいさ。
スプライト 切り替え unityで潜れば良い
2020/05/23(土) 13:17:38.75ID:ZyH/IyLJ
>>522
unity 2D アニメーション
で検索
2020/05/23(土) 14:00:17.70ID:udVLD+1Q
>>523>>524
ありがとうございます!
526名前は開発中のものです。
垢版 |
2020/05/23(土) 15:50:40.71ID:WnKUD3GE
Mathf.CeilToInt(1 / 2) = 0
Mathf.CeilToInt(0.5f) = 1
これってどうして?
2020/05/23(土) 16:02:25.50ID:Rbi5mQKL
int型で割るとおかしくなりますよ。
2020/05/23(土) 16:02:58.32ID:ZHO8R/O8
>>526
1/2=0だから
int / int の端数は切り捨てられる
529名前は開発中のものです。
垢版 |
2020/05/23(土) 16:17:32.28ID:WnKUD3GE
>>527>>528
早い回答ありがとうございます
2020/05/23(土) 17:10:06.96ID:CzavLkPG
>>521
>>518のサイトの「アイテムデータベースを利用する」のコードを書いていてコードの意味が掴めなくて手が止まっているのですが,
「Item」型や「ItemDataBase」型,「GetItem」関数ってUnityに標準で組み込まれているもの(ユーザー定義ではない)なのでしょうか?(公式のヘルプでも見つかりませんでした)
もしヘルプかなにかがあれば教えていただきたいです。
2020/05/23(土) 18:16:47.84ID:n6SQJ0jU
C#の基本を勉強したほうがいい
そのページに書いてあるとおり作ったクラスやメソッド
2020/05/23(土) 19:00:47.46ID:gaHn/8NW
仕事じゃないならデータベースはOdinで作ってた方が良いと思いますね
標準機能でインターフェースとか作ってたら終わらないですよ
533名前は開発中のものです。
垢版 |
2020/05/23(土) 21:50:56.21ID:pnDXcH6j
Odinって2020とかでエディタ変わっても追随してるん?
534名前は開発中のものです。
垢版 |
2020/05/23(土) 23:19:50.86ID:qHBY6evx
データベースはcsvで書いておけば楽だと思うんですがどうなんでしょうか
535名前は開発中のものです。
垢版 |
2020/05/24(日) 04:26:38.86ID:SkLQCC0I
くだらない質問だけど、ブラゲーでメモリキャッシュオーバーエラー出た時にどこかにUnityって書いてあったらUnityで作られたってことなの?
2020/05/24(日) 17:18:14.23ID:j0ATg4ZX
質問失礼します。

スタート関数でHorizontal layoutを持たせた親オブジェクトの中に5個のオブジェクトを生成します。
ゲームのスタートと同時に5個のオブジェクトのポジション情報(vector3)を利用してそのオブジェクトを移動させたいです。

生成のすぐ後に移動アニメーションが含まれた関数を実行すると、恐らくまだレイアウトが効いていないためすべて同じ位置からアニメーションしてしまいます。

遅延処理を入れる事も考えましたが、例えば0.1秒の遅延をいれたとして利用者の端末の処理速度次第では意図しない動作になるのではないかと不安です。
安全マージンをとって1秒などにするのはゲームのテンポを損なうため避けたいです。

初期化が終わったら実行するというのはどの様な手法が考えられますでしょうか?
参考になるかわかりませんが、アセットはDOTWEENだけ持っています。

よろしくお願いします。
2020/05/24(日) 18:00:16.28ID:Dxpeq8M0
>>536
使った事ないから遠いかもしれないけど、子のオブジェクトのstartに完了フラグ入れて監視しては?
538名前は開発中のものです。
垢版 |
2020/05/24(日) 18:21:51.01ID:N01GJ1S3
はじめまして。
質問させて戴きます。

TPSのゲームの簡単なスクリプトを組みまして、少し前に銃を撃つスクリプトを作成しました。
簡単に言うと、弾丸として作成したプレハブを、クリックするたびに銃口(と定義した、銃の先端くらいに配置した空オブジェクト)から銃の向きに真っ直ぐ打ち出す....と言う簡単なものです。

作った時は何も問題なく使えてたのですが、そのあとそのスクリプトはほとんど触っていないのに、銃口より遙かに下から射出されるようになっていました。
それも毎回ではなく3回に一回はちゃんと銃口からでてくるのです。

PCが7年前のものなのでスペックのせいで処理がちゃんとできていないのかな?とも思いましたが、60fpsは出てるような状態でも同じことで、かと言ってスクリプトも単純なものでおかしい点もないように見えます。

上記で頭を抱えているのですが、何かアドバイスをいただけないでしょうか。
よろしくお願いします。
2020/05/24(日) 18:37:47.12ID:N01GJ1S3
>>538
ちなみに変な位置から射出された場合も、Instantiate()で指定したプレハブを、指定した角度で射出してくれています。
銃口の取得だけがおかしいように思えます。
540名前は開発中のものです。
垢版 |
2020/05/24(日) 19:00:29.58ID:gY+ixsGg
>>536
移動アニメーションがDOTweenで行われているのであれば
DOTweenのOnStart()で移動アニメーション前にレイアウト設定したらどうでしょうか

あるいはオブジェクトをInstantiateを使って生成しているのであれば
Instantiate時に引数でPositionを設定できます
541名前は開発中のものです。
垢版 |
2020/05/24(日) 19:08:26.21ID:gY+ixsGg
>>538
地道なデバッグが必要かもしれません

以前は問題なく動いていたということなので
少しずつスクリプトを以前の状態に戻していき
問題が出る場所を特定するとよいでしょう

また以前のスクリプトに戻してもまだ挙動がおかしければ
原因はスクリプト以外にあるということになります
2020/05/24(日) 19:15:58.26ID:N01GJ1S3
>>541
ありがとうございます。
いろいろ試してみます....
2020/05/24(日) 19:28:38.22ID:qDpSHlSf
ワイもちんちんをクリックするたびに白いオブジェクトが飛び出すゲーム作ったで〜
2020/05/24(日) 19:34:53.46ID:N01GJ1S3
>>538
こちら解決しました!!
でもいまいち仕組みがわからない....

操作キャラをWASDで動かすためにキャラクターコントローラーを追加してまして、別のなにかのときにリジッドボディも一緒に入れていたようです。
この2つは一緒に入れちゃダメなやつなんですかね、キャラクターコントローラーってやつがよくわかってないので勉強してきます。

とりあえずリジッドボディを削除したら直りました。
ありがとうございました。
2020/05/24(日) 20:42:35.69ID:j0ATg4ZX
>>537
horizon layoutの完了を感知する方法、もしくは実行のタイミングがわからないので難しそうです・・・。
オブジェクトが生成された瞬間はx,yともに0の様なのです。

>>540
OnStartすごく便利そうなのに知らなかったです、今後使います。ありがとうございます。
しかし今回はhorizontal layoutのタイミング的に使えなそうです。。

やはり横着せずに自力でレイアウト座標を割り出すしか無いですかね。。
プログラミング自体初心者なのでできるか分かりませんがやってみます。
皆さんありがとうございました。
2020/05/24(日) 21:21:35.57ID:j0ATg4ZX
horizontal layoutの仕組みを確認したいのですが、コンポーネント自体のソースコードってどうやって確認するんでしたっけ・・・。

VisualStudioを使用していて前に出来た記憶があるのですが思い出せません。。
2020/05/25(月) 09:03:43.89ID:yPPzqLqp
2Dで円の真ん中をくり抜いたようなドーナツ型の当たり判定はどうやって作れますか?
2020/05/25(月) 10:09:08.43ID:XzvUxzTL
>>547
内径 < 対象と中心点との距離 < 外径
2020/05/25(月) 23:34:15.90ID:ZJXP8kK/
>>547
Vector2.Distanceを使って当たり位置と中心位置の差を求めて適当な値の時にfalseにする
2020/05/26(火) 07:43:26.08ID:5Ju5WyDL
用意するもの
L:大きい円のコリジョン
S:小さい円のコリジョン

Lに衝突且つSに衝突していない場合に処理。
2020/05/26(火) 10:41:04.69ID:rqgx25pE
>>548>>550
ありがとうございます
2020/05/26(火) 16:12:07.81ID:hAGktPUG
Toggleを使ってオンのときにアニメーションが動き,オフのときにアニメーションが一時停止,オンにするとまた動き出すようにするにはインスペクターでどのように設定したらいいんでしょうか?
2020/05/26(火) 16:30:35.21ID:5Ju5WyDL
toggleのオンで関数呼んで、そこでアニメオンスクリプト。
オフはその逆で紐つけるだけ。
2020/05/26(火) 16:32:28.51ID:hAGktPUG
>>553
すみません。書くのを忘れていました。
Toggle自体の見た目をオフ時に静止,オン時にアニメーションにしたいということです。
555名前は開発中のものです。
垢版 |
2020/05/26(火) 16:35:43.63ID:hAGktPUG
あと,アニメーションは少し長めのものを使うつもりで,オフ時は静止画ではなく,あくまでアニメーションの一時停止の形にしたいです。
2020/05/26(火) 16:48:41.68ID:UMfFXeiP
Toggleにアニメーターをアタッチして、アニメーションがループ再生されるようにしておく。

ToggleのOnValueChangedイベントでゲームオブジェクトにtoggleを、ファンクションに
Animator→DynamicBoolの方のenabledを選択。
2020/05/26(火) 18:37:08.74ID:hAGktPUG
>>556
ありがとうございます。その方法でやってみます。
2020/05/27(水) 09:26:41.55ID:7yc3smp+
https://i.imgur.com/FhHJTV1.gif
画像のような選択肢の表示は、一般的にはコルーチンを使って行うのでしょうか
カードゲームであることを加味していただけると嬉しいです
2020/05/27(水) 10:04:43.09ID:6PG7QjxH
>>558
待機してるように見えないけど。
Unityならアニメーションの終了をトリガーにすれば良いのでは?
2020/05/27(水) 10:45:08.37ID:7yc3smp+
>>559
誤解を招く文章でした
アニメーション部分というより、選択待ちの際にコルーチンのwhileを使用しているのかなと疑問でした
2020/05/27(水) 11:12:19.66ID:6PG7QjxH
>>560
この画像通りの処理ならコルーチンいらないと思うけど一般的かはわかりません。

自分ならフラグでカードの拡大と縮小、拡大中のカードを押したら選択完了、拡大中のカードがある時他のカードは操作無効という感じでやると思います。
562名前は開発中のものです。
垢版 |
2020/05/27(水) 11:17:45.41ID:y4DuKBsl
timeline を使ってみているところですが、
スクリプトからヘッダ位置を変更させる方法がわからなくて困っています。
知っている方、教えていただけないでしょうか。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況