【3Dゲームエンジン】Unity質問スレッド33

レス数が1000を超えています。これ以上書き込みはできません。
2017/12/19(火) 09:35:55.55ID:VZwsAqll
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他

次スレは>>950以降にできるだけ早く(できれば回答者が回答した後にでも余裕を持って)建てて下さい。

■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←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。

前スレ
【3Dゲームエンジン】Unity質問スレッド32
http://mevius.5ch.net/test/read.cgi/gamedev/1509307535/
2018/02/06(火) 13:19:51.98ID:ruZ5DNju
>>896
それはアセットを買えば解決するんじゃないですか?
2018/02/06(火) 14:13:51.20ID:KsBJmq8o
教えてくれ!


なんでこうも偉そうなんだろう…
2018/02/06(火) 14:18:51.02ID:R1ZHYOgV
初心者として教えを請いに来てるんじゃなくて開発者同士の教え合いを期待して来たんでしょ
残念ながらそんなものはここにはない
Unity寄り合い所かTwitterで詳しい人にでもリプして見たまえ
2018/02/06(火) 14:29:32.48ID:XfNTtQ4o
もっとラフな開発者間の質問スレかと思ってた
他当たるので質問に関しては無視してください
失礼しました
2018/02/06(火) 14:29:50.50ID:ydc2Iyio
>>899
じゃあこの辺は?
http://iii-earn.blogspot.jp/2016/03/ios-appname-was-compiled-with_2.html
2018/02/06(火) 14:33:24.11ID:ZBkXXr5I
エラーの文の前にも何か出ていない?
2018/02/06(火) 14:45:34.74ID:R1ZHYOgV
>>903
ここは自称上級者が初心者にマウント取ってボコボコにするだけのスレだからな さっさと帰った方が良い
907名前は開発中のものです。
垢版 |
2018/02/06(火) 14:54:12.86ID:KIjNnBwN
>>901
ろくな返答もしないお前よりマシ
2018/02/06(火) 15:06:26.11ID:bXBlbd3v
操作キャラクターのHPが0になったさいにテキストとトップページへ戻るボタンが表示される
スクリプトを作成しているのですが、うまく動かないのでおかしいところを教えて下さい
別に作成したテキストを表示するスクリプトは動いているのでvoid update()以降がおかしいのだと思います
開発環境
win10 unity5 5.6.3p1
void Start()
{
buttom1 = GameObject.FindWithTag("B1");
buttom2 = GameObject.FindWithTag("B2");
buttom1.gameObject.SetActive(false);
buttom2.gameObject.SetActive(false);
}
public void Update()
{
if (playerHealth.currentHealth <= 0)
{
buttom1.gameObject.SetActive(true);
buttom2.gameObject.SetActive(true);
}
}
}
2018/02/06(火) 15:21:30.41ID:ZBkXXr5I
>>908
ちと調べれてないけど、FindGameObjectsWithTagでどうかな?
2018/02/06(火) 15:22:15.05ID:ZBkXXr5I
ファインドウィズタグのとこね。
2018/02/06(火) 15:42:58.31ID:KsBJmq8o
もしFindTagでエラーだったらその次のsetActiveでnullぽってなりそうだねぇ

updateをfixupdにしてみては?
そもそもhpが0になってない?
2018/02/06(火) 16:03:00.94ID:ZBkXXr5I
>>908
あと、今後は「うまく動かない」ではなく、どんな動きをしていて困るかを明記してください。
今回の内容でもエスパーしなくちゃいけないw
2018/02/06(火) 16:36:31.77ID:X/06htZD
>>908
Start()が始まる前にボタンが非表示になっていたりしないだろうか
例えばエディタ上で最初から非表示にしていたりとか
2018/02/06(火) 17:24:09.36ID:b0JmwgRQ
>>896
それエラー? ウォーニングじゃない?
最適化コンパイルしたから、ステップ実行は思った通りに動かないし、変数が使えないかもって言ってる
Xcodeでブレークポイント仕込んだりしてない?
2018/02/06(火) 17:28:56.94ID:b0JmwgRQ
これはみた?
ttp://www.sumimasen.com/tech/32772573.html
916名前は開発中のものです。
垢版 |
2018/02/06(火) 20:37:57.66ID:iwHv53zs
かみのよかーん
2018/02/06(火) 21:13:14.02ID:4jhCM2AH
BoxColliderの衝突判定で
void OnTriggerExit( Collider collider ) はBoxCollider同士が離れた瞬間に呼び出されるはずだけど
衝突した瞬間に呼び出される
どうなってるの?助けて
2018/02/06(火) 21:19:21.53ID:ruZ5DNju
>>917
それは物理系のアセットを購入すれば一発で解決しますよ
919917
垢版 |
2018/02/06(火) 21:42:58.68ID:4jhCM2AH
すまない
自己解決した

>>918
失せろ
2018/02/06(火) 21:45:51.84ID:R8Sv8Z2m
基本的に物理演算は
@コライダーがめり込む
Aそれ以上めり込まない様にふっ飛ばす
B完全にめり込んでしまったら止める
これをやってると言う事はつまり
2018/02/06(火) 21:50:24.12ID:KsBJmq8o
いやトリガーだから通り抜けじゃね
2018/02/06(火) 23:27:33.23ID:7JiKezYp
>>917
オブジェクトのコライダーにオントリガーのチェックが付いてなかったかコリジョンセティングでそれ同士のコリジョンが存在するか‥で自己解決してたんかね?
2018/02/06(火) 23:39:58.17ID:ruZ5DNju
コライダーの仕組みがわからない人はアセットを買うのがいいですよ
2018/02/06(火) 23:58:39.57ID:WOZXZ4kC
行け〜G7♪ コライダーG7♪
2018/02/07(水) 00:47:52.56ID:VPUHH/Vm
攻撃判定 と くらい判定 を分けるためにBoxCollider格納用の子オブジェクトを二つ作って
その二つに 攻撃判定用BoxCollider と くらい判定用BoxCollider を格納して
親のスクリプトで子二つの void OnTriggerEnter( Collider collider ) を処理する方法ない?
これがないと子オブジェクトの void OnTriggerEnter( Collider collider ) 処理のためだけにスクリプトを作って子オブジェクトに格納しなくちゃいけなくて
ソースがぐちゃぐちゃになる
2018/02/07(水) 01:12:59.64ID:tguyUo/d
それ一つのオブジェクトに複数の当たり判定?
ぶつかったオブジェクトのプロバティで判定すればいいんでない?
2018/02/07(水) 01:30:06.34ID:bmhRi5JW
攻撃判定とくらい判定の違いってなに?
2018/02/07(水) 02:07:29.06ID:/nJWn/ha
if(collider.gameObject.name == "Cube"){
Debug.Log("アタリ");
}
tagでもnameでも取れる
2018/02/07(水) 04:02:07.72ID:rPyLnIIF
質問した奴は質問した奴で解決した方法も描かずに消えるしな
もうだめだなこのスレ
930名無し@キムチ
垢版 |
2018/02/07(水) 05:04:40.08ID:twPFDpSX
>>929
質問するやつは、便所代わりにこのスレ使ってるんだよw
2018/02/07(水) 05:13:25.20ID:gBo9SSsu
今に始まったことじゃない
2018/02/07(水) 05:45:30.37ID:rPyLnIIF
流石に1年くらい前まではここまでひどくなかった印象
2018/02/07(水) 05:51:53.55ID:O5PPMcKM
回答する方もアセットおじが居るから五分でしょ
2018/02/07(水) 06:51:10.93ID:xpIbbErl
ところでPlayMakerとArborってどっちが優秀なの?
935名前は開発中のものです。
垢版 |
2018/02/07(水) 07:26:12.42ID:co/Nb9w5
マシナリウムみたいなゲーム作れますか
2018/02/07(水) 08:37:21.13ID:gBo9SSsu
いつも思うけどunityで作ることが不可能なタイプのゲームなんてあんの?
unityに限らずどのエンジンでも一緒だけど
作りやすいにくいはあるけどさ
スマホで超絶ゴリゴリ3Dを60fpsでとか言うならしんどいけど、そんなんエンジン変わっても限界あるでし
2018/02/07(水) 08:38:00.38ID:8kYIRLy5
全てキムチが悪い
2018/02/07(水) 08:56:43.34ID:ibZeXmou
知識レベルがスタートラインにも立ってない人間にどう諭せるのか問われる瞬間いまここに!
2018/02/07(水) 09:19:29.32ID:V2dra3PS
できると思うかい?そうならやってみれば良い。
できないと思うなら、やめたほうがいい。
2018/02/07(水) 09:34:25.38ID:9/oseo4K
Godot3.0がPBRとビジュアルスクリプティングに対応したみたいだから、
それでも薦めとけ
2018/02/07(水) 12:43:57.10ID:O5PPMcKM
webgl(unityroom)でカーソルロックを使うのはどうしたら使えるのでしょうか?
input.GetKeyDownにカーソルロックのコマンドを入れてフルスクリーンモードでchromeとIEで起動までは試しました
942925
垢版 |
2018/02/07(水) 13:36:23.75ID:VPUHH/Vm
>>928
どういうこと?
colliderが接触したオブジェクトをとりたいんだが
これだと自身のcolliderとるだけだよね?
2018/02/07(水) 13:42:31.18ID:V2dra3PS
自分にぶつかってきた相手の名前が入る。
944名前は開発中のものです。
垢版 |
2018/02/07(水) 13:54:05.89ID:VPUHH/Vm
だから
void OnTriggerEnter( Collider collider ) {
}
みたいに接触したColliderを取得するのを
複数のColliderでやるのってどうすればいいの?

Colliderをコンポーネントしたオブジェクト1つ1つに
void OnTriggerEnter( Collider collider ) {
}
を書いたスクリプトを作るのはさすがにない
なにかやりかたあるだろ
945名前は開発中のものです。
垢版 |
2018/02/07(水) 14:03:26.65ID:VPUHH/Vm
>>943
入んないって

[SerializeField] private Collider tagetCollider;
void Update()
{
if( tagetCollider.gameObject.tag == "Player" )
{
Debug.Log( "当たった" );
}
}

これで他のCollider接触してもなにもかえさないよ
自分自身のtagを見ているだけ
2018/02/07(水) 14:05:54.51ID:V2dra3PS
子オブジェに全部貼るだよ。
同じスクリプトを貼るんだからごちゃごちゃしない。
947名前は開発中のものです。
垢版 |
2018/02/07(水) 14:32:31.85ID:VPUHH/Vm
>>946
マジか…
そういうものなんか…
2018/02/07(水) 14:36:38.48ID:V2dra3PS
衝突判定は、ゲームの中でも描画処理に次いで重い。
そんなものを、unity側で勝手に組み込まれて処理されてたら劇遅。
unity内では、コリジョン設定されたもの同士が近けりゃ判定処理とか最適化は自動でしてるとは思うが。
2018/02/07(水) 14:52:56.47ID:8kYIRLy5
>>947
Unity以外でゲーム作った事ある人かな?昔C言語とかで
2018/02/07(水) 15:37:37.88ID:tguyUo/d
うーん
private void OnTriggerEnter(Collider other)
{
print(other.gameObject.name);

}
これで物かってきたものの名前取れるからそれでいいんじゃね?
2018/02/07(水) 15:45:59.80ID:V2dra3PS
>>950
次スレ頼んだぞ。俺にはできぬ。

あと、欲しいのは多分、自機じゃなく、あさってのところでぶつかった子どうしのフラグが欲しいんじゃないかな。
で、どこかにそれを見張ってる関数があるのでは?と聞いてきてる気がするエスパ。
952950
垢版 |
2018/02/07(水) 16:05:36.97ID:tguyUo/d
立てて見ました
保守いらないよねここ

【3Dゲームエンジン】Unity質問スレッド34
https://mevius.5ch.net/test/read.cgi/gamedev/1517987066/l50
2018/02/07(水) 17:21:48.92ID:V2dra3PS
乙です。
2018/02/07(水) 18:34:14.89ID:Uf/tPjYg
>>945
なんでUpdateにいれた?w
物理エンジンからColliderを引数で貰ってるメソッドじゃないと、
接触したColliderの情報が送られて来る訳ないじゃん。

void OnTriggerEnter( Collider collider ) {
if(collider.gameObject.name == "Cube"){
Debug.Log("アタリ");
}
}
2018/02/07(水) 18:43:42.12ID:tguyUo/d
>>951
それってプレハブにしときゃいいだけかと
2018/02/07(水) 20:13:01.92ID:BWazURU1
public class DelegateTriggerEvents : MonoBehavior
{
[System.Serializable]
public class TriggerEvent : UnityEngine.Events.UnityEvent<Collider>
{
}

public TriggerEvent _EnterHandler;
public TriggerEvent _StayHandler;
public TriggerEvent _ExitHandler;

void OnTriggerEnter(Collider collider)
{
if (_EnterHandler != null)
_EnterHandler.Invoke(collider);
}

// Stay, Exitも同様に
}

酔っ払いながらクッソ適当に書いてみたけど
こんなの作っておいてハンドラはインスペクタで設定すればいいんじゃね?
957908
垢版 |
2018/02/08(木) 09:52:12.09ID:T3w0bOMB
>>909
暗黙的に変換できないそうです
症状は上でも書いてある通りHPが0になった際にトップページに飛ぶボタンが表示されないことです
2018/02/08(木) 10:46:08.13ID:T3w0bOMB
解決しました
コード自体に問題はなく空のオブジェクトを用意してそちらにスクリプトをアタッチすることでしっかり動作しました
2018/02/08(木) 10:48:08.73ID:fg6vp272
えっ
それまでそのスクリプトはどこにアタッチしてたの?
2018/02/08(木) 11:37:24.47ID:7gDLY3JI
どこにもアタッチしてなかったんでしょ
基本中の基本がわかってないのにスクリプトはちゃんと動いてるとか勘違いする典型例
debug.log入れりゃ動いてないことなんて一発でわかるのに
2018/02/08(木) 12:54:59.70ID:pqSUy3D4
プログラムできない人は無理せずにアセットを買って楽になりましょう
時間の無駄ですよ
2018/02/08(木) 13:38:10.28ID:fg6vp272
>>961
ァセットDLしてもァタッチしないと動かないんですが……
2018/02/08(木) 16:02:18.08ID:nmcyYAda
まあまあ、特に初心者なんて問題の原因が検討すらつかないことが常だからね。
とはいえそのまま何かを作ろうとするのは無謀だから、チュートリアルやスクリプトリファレンスくらいは読んでおいたほうがいいと思うよ。
2018/02/09(金) 00:00:33.58ID:7bTEQ4Oh
質問なんですが、unityでクラスの継承を行う場合、基底クラスもどこかにアタッチしておく必要があるのでしょうか
2018/02/09(金) 00:42:25.09ID:Kb5TO0pO
というと普段なにげに勝手に生成されるmonoビヘイビアもどこかにァタッチされてるのか

いや、あれはusingされてるからいいのか?

で、やってみてどうたったの?
2018/02/09(金) 01:59:31.62ID:7bTEQ4Oh
>>965
まだやってないんですよね実は……
2018/02/09(金) 02:11:04.34ID:7bTEQ4Oh
あっ、そうか、そもそも派生クラスと基底クラスのスクリプトをわざわざ分ける必要ないのか……?
分けた場合アタッチする必要あんの?という疑問の回答にはなってない気がしますが
とりあえず解決しました、どうも
2018/02/09(金) 02:53:35.13ID:nZEwxYK2
mesh colliderについて質問させてください。
現在2Dのゲームを作ってまして、生成したmeshと他のBox Collider等のColliderを持つオブジェクトの接触をTriggerで検知したいと思っています。

meshはしっかりと生成されており、Rigidbodyもアタッチされています。
その上で以下のスクリプトでColliderを設定しているのですが、OnTriggerEnter2Dで接触が検知できません。

meshCollider = GetComponent<MeshCollider>();
meshCollider.convex = true;
meshCollider.isTrigger = true;
meshCollider.sharedMesh = mesh;
meshCollider.enabled = true;

メッシュとの接触を検知させる方法についてご存知の方はご教授頂けますと幸いです。
2018/02/09(金) 04:17:01.25ID:Kb5TO0pO
2dと3dのコライダは反応しないよ
2018/02/09(金) 09:42:27.36ID:HIJYsTD8
>>969
レスありがとうございます。
そうだったんですね。
MeshCollider2Dというのは無いようなので、MeshColliderを使用しての他の2DColliderとの接触判定は難しいということでしょうか?
Meshは動的に生成しているのでできればMeshColliderのように形状から自動で判定を生成したいんですよね。
2018/02/09(金) 12:43:27.08ID:q3g/Q2/J
そもそもMeshという物自体が3D専用です
2018/02/09(金) 13:19:27.60ID:cUlNb78H
MESHが何かわからない人はアセットを買えばいいと思います。
2018/02/09(金) 14:07:26.76ID:2w/F/lFU
>>969
現実では若い衆の3D検恥器は2D女子に反応しまくりっていう
2018/02/09(金) 21:54:11.49ID:O2JuYloL
gameObject.transform.forward って何を基準に前方を判断してるの?
2018/02/09(金) 22:29:33.05ID:e/qo+rgO
オブジェクトのz軸方向。
2018/02/09(金) 22:53:17.63ID:nZEwxYK2
>>971
なるほど…MeshCollider便利そうだったので使いたかったんですが残念です。
レスありがとうございました!
2018/02/10(土) 01:16:03.97ID:kr0TjaTS
スプライトに3d要のメッシュってつけれなかったっけ?
薄くすればそこまで変わらんと思うんだけど、、、
2018/02/10(土) 02:51:39.15ID:RXARuqbP
>>967
一応答えておくけど、親クラスをアタッチする必要はないよ。
例えばMonoBehaviourを継承しているAnimalクラスを継承したCatクラスがあるとして、Catクラスコンポーネントをアタッチすれば普通にCatクラスに記述したUpdateなどが動くよ。
Animalで定義して、Catでオーバーライドしていない場合、Animalのメソッドが動くから処理の一部分を変えたい!なんてときには重宝すると思うよ。
間違ってたらごめんね。
2018/02/10(土) 04:20:35.69ID:84wRiHvu
>>978
どうもです
2018/02/10(土) 07:51:57.65ID:4SxH24Mp
2Dと3Dが混在するのは処理上気持ち悪い
2018/02/10(土) 11:22:39.47ID:0g6nexFl
画像というかオブジェクトは配置できるか、当たり判定は平面でやるのが筋だろうね
2018/02/11(日) 00:58:09.54ID:98Pv63Nb
うめうめ
2018/02/11(日) 00:59:48.54ID:KPnXQwH6
うんち
2018/02/11(日) 04:34:13.86ID:Pn0lUxjB
3D的な演出が欲しいなら3Dで板ポリで、そうでないなら完全2Dでやれば良いだけ
2018/02/11(日) 05:51:03.76ID:Moi7kiST
polygon collider 2dは使わないのかな?
扇がどうたら言ってた人なら、8等分したピザみたいなのを
回転させればいいだけじゃね
2018/02/11(日) 07:14:04.70ID:ICSX75qE
ロゴが表示されるまでの時間が異常に長いんだけど、短くするいい方法ってありますかね。。。
2018/02/11(日) 07:31:03.80ID:w69V51kn
それがPersonalの縛りだから、諦めて課金する以外にない
2018/02/11(日) 09:04:44.82ID:O6N4VBq1
そもそも無料でこのレベルのモンが使えてるって、改めてすげぇって思うわ
2018/02/11(日) 09:53:20.18ID:STGKBJLb
>>986
アマギフくれるなら教えてあげてもいいぜ!

・リソースフォルダに物が多いと起動時間が遅くなるぜ!
・Awakeで作業多くすると起動時間が遅くなるぜ!

これを読んでしまった君はもうアマギフ送って
2018/02/11(日) 11:18:47.00ID:1H2GmfmU
>>989
ありがとうございます。リソースふぉるだ、空 でawake でも特になにもしてないんですよ。。。
2018/02/11(日) 11:39:44.85ID:j1ZkS3n1
ちなみに、どんな環境なんですか?自分は遅いと感じたことないけど
作成したのも1Gとかそんな感じ?
2018/02/11(日) 12:02:41.83ID:1H2GmfmU
unity5.5 実機はiPhone6s 起動からスプラッシュ表示までの暗い画面が10秒ぐらいなんです。アプリのサイズは100MBぐらいですねー。
2018/02/11(日) 12:05:12.17ID:DtHvcE6P
3年も前の機種使ってるからだろ
2018/02/11(日) 12:21:31.51ID:1H2GmfmU
言葉足らずで申し訳ないです。
他の方が作られた同程度のアプリと比較して自分のアプリはスプラッシュ表示までの時間が長すぎると。もう少し試行錯誤してみます。ありがとうございました。
2018/02/11(日) 12:54:16.85ID:wEgEyQJb
2018/02/11(日) 13:12:40.15ID:mQaEQcTH
うめーる
2018/02/11(日) 13:14:22.44ID:mQaEQcTH
2018/02/11(日) 13:16:31.29ID:mQaEQcTH
次スレは>>952
2018/02/11(日) 13:17:02.61ID:mQaEQcTH
うめ
2018/02/11(日) 13:18:06.43ID:mQaEQcTH
埋め
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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